springboot集成mybatis

配置數(shù)據(jù)庫(kù)連接池
做好準(zhǔn)備工作之后,接下來最重要的就是要在pom.xml文件中添加數(shù)據(jù)庫(kù)驅(qū)動(dòng)和數(shù)據(jù)庫(kù)連接池依賴。
添加MySQL驅(qū)動(dòng),這里如果不指定版本默認(rèn)是8.0的版本,當(dāng)然你也可以指定版本,8.0的版本這里有一問比較坑的問題:
1、MySQL數(shù)據(jù)庫(kù)默認(rèn)使用的是美國(guó)的時(shí)區(qū),而我們連接的時(shí)候用的是中國(guó)的北京時(shí)間,然后比美國(guó)晚上8個(gè)小時(shí),所以當(dāng)我們?cè)谶B接數(shù)據(jù)庫(kù)的時(shí)候要設(shè)置一下時(shí)區(qū)為東八區(qū)ServerTimezone=UTC
2、驅(qū)動(dòng)類
MySQL5.x的版本使用的驅(qū)動(dòng)類是com.mysql.jdbc.Driver
MySQL8.x的版本使用的驅(qū)動(dòng)類是com.mysql.cj.jdbc.Driver
所以這兩個(gè)問題需要大家去注意一下,以免出現(xiàn)莫名其妙的bug

<dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
</dependency>

接著,添加數(shù)據(jù)庫(kù)連接池,這里咱們使用最火的阿里開源的Druid。
Druid首先是一個(gè)數(shù)據(jù)庫(kù)連接池。Druid是目前最好的數(shù)據(jù)庫(kù)連接池,在功能、性能、擴(kuò)展性方面,都超過其他數(shù)據(jù)庫(kù)連接池,包括DBCP、C3P0、BoneCP、Proxool、JBossDataSource。Druid已經(jīng)在阿里巴巴部署了超過600個(gè)應(yīng)用,經(jīng)過一年多生產(chǎn)環(huán)境大規(guī)模部署的嚴(yán)苛考驗(yàn)。Druid是阿里巴巴開發(fā)的號(hào)稱為監(jiān)控而生的數(shù)據(jù)庫(kù)連接池!

<dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>druid-spring-boot-starter</artifactId>
 <version>1.1.9</version>
</dependency>

集成Mybatis
添加Mybatis的依賴,我們使用最新的版本2.0.1

番外篇:
如果大家細(xì)心的話可能會(huì)發(fā)現(xiàn),通常我們?cè)诩梢恍㏒pringBoot提供支持的技術(shù)的時(shí)候,所添加的依賴都是以spring-boot-starter開頭,格式:spring-boot-starter-xxx;但是剛才我們添加的Mybatis的依賴卻是mybatis-spring-boot-starter,是以mybatis開頭的,這個(gè)能其實(shí)是SpringBoot默認(rèn)是不支持mybatis的,它默認(rèn)支持的是它自己生態(tài)內(nèi)的持久層框架JPA,由于SpringBoot是大勢(shì)所趨,所以mybatis就主動(dòng)去迎合SpringBoot生態(tài),自己開發(fā)了mybatis的stater。以后大家凡是看到xxx-spring-boot-starter的依賴,都是SpringBoot沒有主動(dòng)提供支持的技術(shù)。

<dependency>              
 <groupId>org.mybatis.spring.boot</groupId>
 <artifactId>mybatis-spring-boot-starter</artifactId>
 <version>2.0.1</version>
</dependency>

在pojo包下創(chuàng)建User對(duì)象,并實(shí)現(xiàn)序列化接口Serializable

public classUser implements Serializable{
 privateIntegerid; // 用戶id
 private String username;    //用戶名
 private Integer age;        // 年齡
 // 省略 setter、getter方法
}

配置數(shù)據(jù)源和mybatis的配置
在application.properties屬性配置文件中配置數(shù)據(jù)源和mybatis相關(guān)配置

# 端口號(hào)
server.port=8080
#mapper xml 文件地址
mybatis.mapper-locations=classpath*:mapper/*Mapper.xml
# 數(shù)據(jù)庫(kù)url
spring.datasource.url=jdbc:mysql://localhost:3306/kgc?characterEncoding=utf8&serverTimezone=UTC
# 數(shù)據(jù)庫(kù)用戶名
spring.datasource.username=root
# 數(shù)據(jù)庫(kù)密碼
spring.datasource.password=root
# 數(shù)據(jù)庫(kù)驅(qū)動(dòng)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

創(chuàng)建UserMapper接口和對(duì)應(yīng)的UserMapper.xml文件

在mapper包下創(chuàng)建UserMapper接口,并在接口中定義各一個(gè)方法

并在resource包下創(chuàng)建依次創(chuàng)建com/example/demo/mapper/UserMapper.xml


這里要注意的是接口名稱要和映射文件的名稱一致
————————————————
版權(quán)聲明:本文為CSDN博主「AI課工場(chǎng)」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/kgc_cn/article/details/107518279

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容