Mybatis引入與使用的圖文步驟
一、新建項(xiàng)目
使用IDEA,新建項(xiàng)目
注意:這里創(chuàng)建的是Maven項(xiàng)目
二、數(shù)據(jù)準(zhǔn)備
因?yàn)镸ybatis是操作數(shù)據(jù)庫(kù)的框架,需要操作數(shù)據(jù)庫(kù),這里我們選用Mysql數(shù)據(jù)庫(kù),使用數(shù)據(jù)庫(kù)腳本初始化一下數(shù)據(jù)。
-- 如果數(shù)據(jù)庫(kù)不存在則創(chuàng)建數(shù)據(jù)庫(kù) CREATE DATABASE IF NOT EXISTS demo DEFAULT CHARSET utf8; -- 切換數(shù)據(jù)庫(kù) USE demo; -- 創(chuàng)建表 CREATE TABLE T_USER( ID INT PRIMARY KEY, USERNAME VARCHAR(32) NOT NULL, AGE INT NOT NULL );
上面的腳本是創(chuàng)建一個(gè)名稱為demo的數(shù)據(jù)庫(kù),并在庫(kù)中新建一個(gè)T_USER表。
三、引入Mybatis
在pom文件中添加mybatis依賴
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency>
這里使用的是3.4.5版本,如果想使用mybatis的其他版本可以在Maven倉(cāng)庫(kù)中查詢。
由于要連接數(shù)據(jù)庫(kù)進(jìn)行使用,這里引入Mysql的驅(qū)動(dòng),在Mysql數(shù)據(jù)庫(kù)上進(jìn)行操作數(shù)據(jù):
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.49</version> </dependency>
四、配置Mybatis
在resources下新建mybatis-config.xml配置文件,并完成配置
<?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"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="${driver}"/> <property name="url" value="jdbc:mysql://${ip}:${port}/${database}?useUnicode=true&useSSL=false&characterEncoding=utf8"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </dataSource> </environment> </environments> </configuration>
需要根據(jù)實(shí)際環(huán)境替換配置中的變量:
- ${driver}:數(shù)據(jù)庫(kù)驅(qū)動(dòng),mysql的數(shù)據(jù)庫(kù)驅(qū)動(dòng)是org.gjt.mm.mysql.Driver
- ${ip}:數(shù)據(jù)庫(kù)的IP地址
- ${port}:數(shù)據(jù)庫(kù)的端口
- ${username}:連接數(shù)據(jù)庫(kù)的用戶名
- ${password}:連接數(shù)據(jù)庫(kù)的密碼
五、讀取數(shù)據(jù)庫(kù)信息
// 讀取mybatis配置文件 InputStream inputStream = ClassLoader.getSystemClassLoader().getResourceAsStream("mybatis-config.xml"); // 根據(jù)配置創(chuàng)建SqlSession工廠 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(inputStream); SqlSession sqlSession = null; try { // 創(chuàng)建SqlSession sqlSession = sqlSessionFactory.openSession(); // 獲取連接 Connection connection = sqlSession.getConnection(); // 獲取數(shù)據(jù)庫(kù)元數(shù)據(jù) DatabaseMetaData databaseMetaData = connection.getMetaData(); // 獲取數(shù)據(jù)庫(kù)名稱 System.out.println("database product name: " + databaseMetaData.getDatabaseProductName()); // 獲取數(shù)據(jù)庫(kù)版本 System.out.println("database product version: " + databaseMetaData.getDatabaseProductVersion()); // 獲取數(shù)據(jù)庫(kù)主版本 System.out.println("database major version: " + databaseMetaData.getDatabaseMajorVersion()); // 獲取數(shù)據(jù)庫(kù)小版本 System.out.println("database minor version: " + databaseMetaData.getDatabaseMinorVersion()); } catch (SQLException e) { e.printStackTrace(); } finally { // 關(guān)閉會(huì)話 if(Objects.nonNull(sqlSession)) { sqlSession.close(); } }
注意:SqlSession對(duì)象需要關(guān)閉,不然會(huì)一直占用數(shù)據(jù)庫(kù)連接
上面的代碼運(yùn)行的結(jié)果如下:
結(jié)果中打印的內(nèi)容與我的數(shù)據(jù)庫(kù)信息相符。
到此這篇關(guān)于Mybatis引入與使用的圖文步驟的文章就介紹到這了,更多相關(guān)Mybatis引入與使用 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)刪除PDF中指定頁(yè)面
這篇文章主要為大家詳細(xì)介紹了如何使用一個(gè)免費(fèi)的國(guó)產(chǎn)Java庫(kù)來(lái)刪除PDF中的指定頁(yè)面或者刪除PDF中的空白頁(yè),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11Spring Cloud Gateway不同頻率限流的解決方案(每分鐘,每小時(shí),每天)
SpringCloud Gateway 是 Spring Cloud 的一個(gè)全新項(xiàng)目,它旨在為微服務(wù)架構(gòu)提供一種簡(jiǎn)單有效的統(tǒng)一的 API 路由管理方式。這篇文章主要介紹了Spring Cloud Gateway不同頻率限流(每分鐘,每小時(shí),每天),需要的朋友可以參考下2020-10-10鄰接表無(wú)向圖的Java語(yǔ)言實(shí)現(xiàn)完整源碼
這篇文章主要介紹了鄰接表無(wú)向圖的Java語(yǔ)言實(shí)現(xiàn)完整源碼,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12SpringBoot中配置Web靜態(tài)資源路徑的方法
這篇文章主要介紹了SpringBoot中配置Web靜態(tài)資源路徑的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09