目前的大環境下,使用Mybatis
做爲持久層框架仍是佔了絕大多數的,下面咱們來講一下使用Mybatis
的幾種姿式。mysql
首先,咱們須要在pom文件中添加依賴:git
這裏咱們採用yml來進行編寫,與properties文件相比,yml看起來更加簡潔優雅,這裏須要注意的是driver-class-name
這個屬性咱們採用的是com.mysql.cj.jdbc.Driver
而非以前的com.mysql.jdbc.Driver
,若是採用以前包下的Driver
,控制檯會打印出一行這樣的信息告訴咱們去用新的~github
首先,咱們須要在啓動類指定@MapperScan
,這樣作就能夠不用去挨個的在Mapper
接口中添加@Mapper
註解。這裏的值就是你的Mapper
接口所在的包的路徑。sql
經過@Select
註解和@Results
註解能夠指定SQL語句以及返回值。固然,其餘的不一樣的操做也有不一樣的註解,好比@Insert
、@Update
、@Delete
mybatis
訪問 localhost:8081/user/findAll,咱們就能夠看到測試的結果:app
咱們用的最多的是這種方式,下面來看看怎麼去實現,第一步與姿式一的重複,這裏就再也不多作闡述框架
咱們須要在配置文件中添加mybatis-config.xml
的路徑以及用於Mapper*.xml
的文件的路徑:測試
Mapper接口:spa
mybatis-config.xml:3d
UserMapper.xml:
這裏須要注意UserMapper.xml中的namespace
須要與接口的路徑一致,不然會出現錯誤。
測試的程序與以前的一致,咱們直接訪問localhost:8082/user/findAll
,能夠看到成功的結果:
使用SqlSession的姿式和能夠與上面兩種方式進行結合,emmm。。。能夠這麼理解,SQL就在那裏,只不過度爲了兩個不一樣的方法去調用。其他的代碼咱們就再也不多講,直接來看是如何調用的:
能夠看到,參數寫的是要調用的方法的路徑(這裏是與namespace
相對應)。下面咱們能夠運行一下程序:
這裏,咱們基於SqlSession
進行了一次升級,首先咱們寫了一個BaseDao
,做爲一個公用的接口。接口的實現是經過sqlSessionTemplate
。
而後咱們將*Mapper.xml
的namespace
改成*Mapper
。如今,咱們能夠直接將全部的Mapper
接口刪除,直接經過dao
進行調用~
而後咱們來啓動程序後去訪問
關於Mybatis
的使用,咱們就先講到這裏~
源碼能夠去github或者碼雲上進行下載,後續的例子都會同步更新。
原創文章,文筆有限,才疏學淺,文中如有不正之處,萬望告知。