Spring Boot整合Mybatis Annotation注解的完整Web案例
本文提綱
一、前言
二、運(yùn)行 springboot-mybatis-annotation 工程
三、springboot-mybatis-annotation 工程配置詳解
運(yùn)行環(huán)境:JDK 7 或 8、Maven 3.0+
技術(shù)棧:SpringBoot 1.5+、SpringBoot Mybatis Starter 1.2+ 、MyBatis 3.4+
「前言」
距離***篇 Spring Boot 系列的博文 3 個月了?!禨pringboot 整合 Mybatis 的完整 Web 案例》***篇出來是 XML 配置 SQL 的形式。雖然 XML 形式是我比較推薦的,但是注解形式也是方便的。尤其一些小系統(tǒng),快速的 CRUD 輕量級的系統(tǒng)。
一、運(yùn)行 springboot-mybatis-annotation 工程
由于這篇文章和 《Springboot 整合 Mybatis 的完整 Web 案例》 類似,所以運(yùn)行這塊環(huán)境配置,大家參考另外一篇兄弟文章。
然后,Application 應(yīng)用啟動類的 main 函數(shù),然后在瀏覽器訪問:http://localhost:8080/api/city?cityName=溫嶺市
可以看到返回的 JSON 結(jié)果:
- {
- "id": 1,
- "provinceId": 1,
- "cityName": "溫嶺市",
- "description": "我的家在溫嶺。"
- }
三、springboot-mybatis-annotation 工程配置詳解
1.pom 添加 Mybatis 依賴
- <!-- Spring Boot Mybatis 依賴 -->
- <dependency>
- <groupId>org.mybatis.spring.boot</groupId>
- <artifactId>mybatis-spring-boot-starter</artifactId>
- <version>${mybatis-spring-boot}</version>
- </dependency>
2.在 CityDao 城市數(shù)據(jù)操作層接口類添加注解 @Mapper、@Select 和 @Results
- /**
- * 城市 DAO 接口類
- *
- * Created by xchunzhao on 02/05/2017.
- */
- @Mapper // 標(biāo)志為 Mybatis 的 Mapper
- public interface CityDao {
- /**
- * 根據(jù)城市名稱,查詢城市信息
- *
- * @param cityName 城市名
- */
- @Select("SELECT * FROM city")
- // 返回 Map 結(jié)果集
- @Results({
- @Result(property = "id", column = "id"),
- @Result(property = "provinceId", column = "province_id"),
- @Result(property = "cityName", column = "city_name"),
- @Result(property = "description", column = "description"),
- })
- City findByName(@Param("cityName") String cityName);
- }
@Mapper 標(biāo)志接口為 MyBatis Mapper 接口
@Select 是 Select 操作語句
@Results 標(biāo)志結(jié)果集,以及與庫表字段的映射關(guān)系
其他的注解可以看 org.apache.ibatis.annotations 包提供的,如圖:
可以 git clone 下載工程 springboot-learning-example ,springboot-mybatis-annotation 工程代碼注解很詳細(xì)。 https://github.com/JeffLi1993/springboot-learning-example。
【本文為51CTO專欄作者“李強(qiáng)強(qiáng)”的原創(chuàng)稿件,轉(zhuǎn)載請通過51CTO聯(lián)系作者獲取授權(quán)】