在Spring Boot中使用MyBatis並且自動生成代碼,詳細一看就懂


MyBatis目前是主流的數據訪問層框架,我司目前的項目大部分都是用MyBatis。本文將使用Spring Boot快速創建項目,並且在Spring Boot中使用MyBatis,編寫了一個根據區域id獲取區域信息的接口例子。在最后,使用MyBatis的Generator自動生成代碼。

0、新建Spring Boot項目

打開開發工具:IntelliJ IDEA,選擇jdk 1.8以上。

點擊File→New→Project...,選擇Spring Initializr。

然后next:

next,選擇Spring Boot的一個版本,如1.5.2,勾選web、MyBatis和Mysql

最后finish完成項目創建。

 

1、建好經典的三層結構,controller存放控制層代碼,service存放業務邏輯層代碼,dao存放數據訪問層代碼,另外model存放實體類。

 

2、在application.properties文件中添加mybatis配置和mysql數據庫連接配置

 

3、在Application.java應用啟動類添加MapperScan注解

 

4、創建數據庫表area

 

5、編寫代碼

實體類Area.java

 

AreaDao.java

mybatis的sql配置文件AreaMpper.xml

AreaService.java

 

AreaServiceImpl.java

最后是AreaController.java

編寫代碼后,整個結構是這樣子的:

可以看到我把mybatis的sql配置文件也放在dao層中了,這樣可以使目錄結構清晰,但是如果這時候運行項目,就會報一個錯:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)......說找不到sql的配置文件。

原因:是idea對calsspath的規定,在idea中直接把資源文件放在src文件夾下是不能被找到的。

解決方法:

在idea上點擊File -> Project Struture -> Modules -> Dependencies -> "+" -> JARS or directories -> 選擇sql配置文件所在的包-> 彈出Choose Categories of Selected Files -> 勾選 -> OK

 

6、運行主類Application.java,訪問接口:http://localhost:8080/area/getAreaInfo?id=1

 

瀏覽器訪問接口
可以看到,直接返回了json數據。其實Spring Boot默認已經引用好了JackSon,不需要我們另外配置什么。而且Spring Boot已經封裝好了spring mvc,不需要我們再去集成spring mvc。

至此,我們已經完成了一個根據區域id獲取區域信息的接口例子。

 

=====================================這是分割線=============================================

 

其實。我們可以不用自己一個一個去寫mybatis的sql文件,dao接口和實體類。可以利用mybaits的generator自動生成代碼。在idea中使用mybatis generator要做一些設置。

 

0、在pom.xml中增加generator插件

1、在resources下增加generatorConfig.xml文件

2、在idea中添加一個generator插件運行選項。

首先,點擊run→Edit Configurations...如下圖

在彈出的窗口中點擊“+”號,選擇Maven,填寫Name和Command line,如下圖

點擊ok完成設置。

點擊Run generator,就會自動生成代碼。

 

========以上是一個基礎的教程,希望喜歡。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM