成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Mybatis環境配置及測試詳解

瀏覽:73日期:2023-10-20 12:08:26

mybatis 3 | 參考文檔

MyBatis 是一款優秀的持久層框架,它支持自定義 SQL、存儲過程以及高級映射。MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數和獲取結果集的工作。

MyBatis 可以通過簡單的 XML 或注解來配置和映射原始類型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 對象)為數據庫中的記錄。

一、mybatis環境配置

1.通過maven的pom.xml文件引入mybatis需要的包

在其<dependencies></dependencies>標簽中添加如下代碼

<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.1</version> </dependency>

2.在src/main/resources下新建mybatis-config.xml文件

并進行xml文件和config的dtd文件的聲明

<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE configuration PUBLIC '-//mybatis.org//DTD Config 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-config.dtd'>

3.在mybatis-config.xml文件中的<configuration></configuration>中對數據庫進行配置

<configuration> <settings><!-- 開啟駝峰命名轉換,若底層數據庫表項為goods_ID,實體類為goodsId ,則自動轉換--> <setting name='mapUnderscoreToCamelCase' value='true'/> </settings> <!-- 設置默認指向的數據庫 --> <environments default='dev'> <environment id='dev'> <!-- 采用JDBC方式對數據庫事務進行commit/rollback --> <transactionManager type='JDBC'></transactionManager> <!-- 采用連接池的方式管理數據庫連接 --> <dataSource type='POOLED'><property name='driver' value='com.mysql.jdbc.Driver'/><property name='url' value='jdbc:mysql://localhost:3306/babytun?useUnicode=true&amp;characterEncoding=UTF-8'/><property name='username' value='root'/><property name='password' value='123456'/> </dataSource> </environment> </environments></configuration>

4.通過SqlSessionFactory構建SqlSession會話實例

每個基于 MyBatis 的應用都是以一個 SqlSessionFactory 的實例為核心的。SqlSessionFactory 的實例可以通過 SqlSessionFactoryBuilder 獲得。而 SqlSessionFactoryBuilder 則可以從 XML 配置文件或一個預先配置的 Configuration 實例來構建出 SqlSessionFactory 實例。

從 XML 文件中構建 SqlSessionFactory 的實例非常簡單,建議使用類路徑下的資源文件進行配置。 但也可以使用任意的輸入流(InputStream)實例,比如用文件路徑字符串或 file:// URL 構造的輸入流。MyBatis 包含一個名叫 Resources 的工具類,它包含一些實用方法,使得從類路徑或其它位置加載資源文件更加容易。

通常SqlSession是全局唯一的,通過MybatisUtils工具類減少重復代碼

public class MybatisUtils { //利用static靜態 屬于類而不屬于對象 , 保證全局唯一 private static SqlSessionFactory sqlSessionFactory = null ; //利用靜態塊在初始化類時實力話SqlSessionFactory static { Reader reader = null; try { reader = Resources.getResourceAsReader('mybatis-config.xml'); sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader) ; } catch (IOException e) { e.printStackTrace(); //初始化過程中出現的異常 throw new ExceptionInInitializerError(e) ; } } /** * 創建一個新的sqlsession對象 * @return sqlsession對象 * */ public static SqlSession openSession(){ return sqlSessionFactory.openSession() ; } public static void closeSession(SqlSession sqlSession){ if(sqlSession != null ){ sqlSession.close(); } }}5.通過SqlSession對數據庫進行操作

在entity包下創建要操作的數據庫表對應的實體類(必須使用駝峰命名和設置get和set方法),同時在resources目錄下創建mappers目錄,在mappers目錄下創建與該實體類同名的xml文件,在對其進行xml聲明和mapperdtd文件聲明(注意與mybatis-config.xml的dtd文件聲明的區別)

<?xml version='1.0' encoding='UTF-8' ?><!DOCTYPE mapper PUBLIC '-//mybatis.org//DTD Mapper 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-mapper.dtd'>

然后在mybatis-config.xml文件引入該實體與數據庫的映射。即在其<mappers></mappers>標簽中添加映射xml文件路徑

<mappers> <mapper resource='mappers/goods.xml' /> <mapper resource='mappers/goods_detail.xml' /> </mappers>

當數據庫列字段名為多單詞且用'_'拼接時,還需在其<configuration></configuration>標簽中開啟駝峰命名轉換,使Mybatis自動完成映射。

<settings><!-- 開啟駝峰命名轉換,若底層數據庫表項為goods_ID,實體類為goodsId ,則自動轉換--> <setting name='mapUnderscoreToCamelCase' value='true'/> </settings>

到此為止,mybatis需要的配置就已全部完成。

運行程序測試結果

在 src 源碼目錄下建立 一個類叫作:HelloWord, 來運行測試配置環境是否成功,具體代碼如下示:

import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import com.yiibai.mybatis.models.*;/** * * @author yiibai * @copyright //www.jb51.net * @date 2015/09/22 */public class HelloWord { private static SqlSessionFactory sqlSessionFactory; private static Reader reader; static { try { reader = Resources.getResourceAsReader('config/Configure.xml'); sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); } catch (Exception e) { e.printStackTrace(); } } public static SqlSessionFactory getSession() { return sqlSessionFactory; } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub SqlSession session = sqlSessionFactory.openSession(); try { User user = (User) session.selectOne( 'com.yiibai.mybatis.models.UserMapper.GetUserByID', 1); if(user!=null){ String userInfo = '名字:'+user.getName()+', 所屬部門:'+user.getDept()+', 主頁:'+user.getWebsite(); System.out.println(userInfo); } } finally { session.close(); } }}

現在運行這個程序,不是得到查詢結果了?正確的輸出結果應該如下:

名字:yiibai, 所屬部門:Tech, 主頁://www.jb51.net

到此這篇關于Mybatis環境配置及測試詳解的文章就介紹到這了,更多相關Mybatis環境配置內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Mybatis 數據庫
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
成人18精品视频| 亚洲黄色大片| 国内精品一区二区| 精品少妇一区二区三区免费观看 | 午夜综合激情| 国产精品传媒入口麻豆| 91影视在线播放| 欧美成人官网二区| 九九久久精品视频| 欧美日韩成人在线| 亚洲1区2区3区4区| 国产精品亚洲不卡a| 亚洲欧美偷拍三级| 伊人精品成人久久综合软件| 国产精品色哟哟网站| 欧美激情91| 欧美激情艳妇裸体舞| 91亚洲资源网| 久久久久久久久蜜桃| 99精品偷自拍| 精品欧美久久久| 本田岬高潮一区二区三区| 日韩三级av在线播放| 国产a级毛片一区| 日韩美女视频一区二区在线观看| 国产做a爰片久久毛片| 欧美三级日韩在线| 精品写真视频在线观看| 欧美日韩免费观看一区二区三区| 狂野欧美性猛交blacked| 欧美亚洲国产一区在线观看网站 | 亚洲电影欧美电影有声小说| 国产伦精品一区二区三区视频黑人 | 亚洲成人原创| 椎名由奈av一区二区三区| 亚洲国产一区二区三区a毛片 | 欧美三区在线观看| 国产高清精品久久久久| 日韩午夜激情av| 99精品久久免费看蜜臀剧情介绍| 国产午夜亚洲精品不卡| 欧美日韩亚洲一区二区三区在线 | 国产日韩欧美综合精品| 亚洲国产一区二区视频| 亚洲欧美久久| 视频在线观看国产精品| 色欧美片视频在线观看在线视频| 日韩电影免费在线看| 91久久国产综合久久| 久久丁香综合五月国产三级网站| 欧美精品视频www在线观看| 国产精品影视网| 精品福利在线导航| 欧美日韩一区在线视频| 亚洲人成伊人成综合网小说| 亚洲主播在线| 精品亚洲成av人在线观看| 日韩三级精品电影久久久| 欧美另类综合| 亚洲一区二区在线免费看| 日本国产一区二区| 丁香天五香天堂综合| 中文字幕欧美激情一区| 国产精品视频免费观看| 久久99久久久久| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 男男视频亚洲欧美| 91精品国产综合久久香蕉的特点| 女生裸体视频一区二区三区| 亚洲自拍欧美精品| 欧美精品乱码久久久久久| 色综合色综合色综合| 一二三四区精品视频| 在线这里只有精品| 成人毛片在线观看| 亚洲欧洲另类国产综合| 91黄色免费网站| www.久久久久久久久| 亚洲图片欧美激情| 日本精品裸体写真集在线观看 | 国产精品区一区| 国产伦理精品不卡| 国产色婷婷亚洲99精品小说| 亚洲一区二区三区免费在线观看| 国内精品伊人久久久久av一坑| 国产精品美日韩| 色国产综合视频| 国产精品欧美久久久久一区二区| 亚洲色图丝袜美腿| 欧美亚洲免费在线一区| 91免费在线视频观看| 久久亚洲欧美国产精品乐播 | 精品国产一区a| 亚洲少妇在线| 国产精品一区二区男女羞羞无遮挡 | 最新热久久免费视频| 美女网站在线免费欧美精品| 成人性生交大合| 成人免费三级在线| 日韩一区欧美二区| 亚洲女同ⅹxx女同tv| 亚洲视频综合在线| 在线亚洲高清视频| 欧美主播一区二区三区美女| 精品久久久久久久久久久久久久久久久| 欧美一区二区在线不卡| 欧美日韩精品一区二区天天拍小说| 欧美成人a视频| 国产日本欧美一区二区| 亚洲欧美电影一区二区| 成人永久免费视频| 激情av一区| 6080国产精品一区二区| 狠狠88综合久久久久综合网| 久久99精品国产麻豆婷婷洗澡| 国产区在线观看成人精品 | 黄色成人免费在线| 亚洲人成7777| 欧美大胆人体bbbb| 一本色道亚洲精品aⅴ| 欧美日韩精品综合| 国产精品自在欧美一区| 亚洲综合在线电影| 久久一夜天堂av一区二区三区| 一本大道综合伊人精品热热| 欧美日本一区二区视频在线观看| 狠狠色丁香久久婷婷综合_中 | 亚洲人www| 成人av小说网| 蜜芽一区二区三区| 亚洲欧美综合另类在线卡通| 欧美一区二区三区四区五区 | 天堂影院一区二区| 国产精品久久久久影院老司 | 久久精品亚洲精品国产欧美 | 欧美91精品| 国产福利一区二区三区视频在线| 亚洲小说欧美激情另类| 亚洲国产精品成人综合 | 蜜桃av综合| 亚洲黄色天堂| 午夜电影亚洲| 成人精品鲁一区一区二区| 免费在线观看视频一区| 亚洲欧美日韩在线不卡| 久久久亚洲综合| 欧美一区二区在线不卡| 在线国产亚洲欧美| 国产精品久久久一区二区三区| 天堂精品中文字幕在线| 亚洲免费视频中文字幕| 国产精品成人免费精品自在线观看 | 一本大道av一区二区在线播放| 亚洲区欧美区| 欧美破处大片在线视频| 99久久er热在这里只有精品15| 国产成人亚洲综合a∨猫咪| 日韩成人午夜精品| 一区二区欧美视频| 国产精品久久久久久久久久免费看| 欧美精品一区二区三区一线天视频| 欧美精品日韩综合在线| 欧美日韩国产综合一区二区三区| 在线观看欧美精品| 老妇喷水一区二区三区| 久久国产福利| 性高湖久久久久久久久| 最新国产乱人伦偷精品免费网站| 好看的av在线不卡观看| 亚洲小说区图片区| 欧美日韩精品免费观看| 欧美在线三区| 成人a区在线观看| 国产大陆亚洲精品国产| 国产永久精品大片wwwapp| 日本在线不卡视频| 蜜桃在线一区二区三区| 日韩福利电影在线| 肉丝袜脚交视频一区二区| 午夜不卡av免费| 日日夜夜精品视频天天综合网| 天天操天天干天天综合网| 亚洲444eee在线观看| 日本v片在线高清不卡在线观看| 日产精品久久久久久久性色| 日本不卡免费在线视频| 日本大胆欧美人术艺术动态| 免费看欧美美女黄的网站| 精品一区二区综合| 国产精品正在播放| 成人av免费观看| 99精品欧美一区二区三区综合在线| www.亚洲色图| 欧美 日韩 国产在线| 国内精品福利| 一区二区国产精品| 性感少妇一区| 在线观看不卡视频| 欧美日韩色一区| 日韩一区二区三区三四区视频在线观看|