深圳Java培訓學習:MyBatis Plus 介紹--【千鋒】
深圳Java 培訓學習: MyBatis Plus 介紹 -- 【千鋒】
MyBatis Plus 是國內人員開發的 MyBatis 增強工具,在 MyBatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。
MyBatis Plus 的核心功能有:支援通用的 CRUD 與條件構造器。
通用 CRUD :定義好 Mapper 介面後,只需要繼承 BaseMapper<T> 介面即可獲得通用的增刪改查功能,無需編寫任何介面方法與配置檔案
條件構造器:透過 EntityWrapper<T> (實體包裝類),可以用於拼接 SQL 語句,並且支援排序、分組查詢等複雜的 SQL
2. 新增依賴
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>2.3</version>
</dependency>
3. 配置
<!-- MP 提供的 MybatisSqlSessionFactoryBean -->
<bean id="sqlSessionFactoryBean"
class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
<!-- 資料來源 -->
<property name="dataSource" ref="dataSource"/>
<!-- 別名處理 -->
<property name="typeAliasesPackage" value="com.qf.entity"/>
<!-- 外掛註冊 -->
<property name="plugins">
<list>
<!-- 註冊分頁外掛 -->
<bean class="com.baomidou.mybatisplus.plugins.PaginationInterceptor" />
</list>
</property>
</bean>
4.Dao 層
public interface IUserDao extends BaseMapper<User> {
}
5. 實體類
@Data
@TableName(value="t_user")
public class User{
@TableId(value="id",type=IdType.AUTO)
private Integer id;
@TableField(value="username")
private String name;
private Integer age;
private String password;
@TableField(exist=false)
private Integer xxx;
}
6. 常見註解
@TableField(exist = false) :表示該屬性不為資料庫表欄位,但又是必須使用的。
@TableField(exist = true) :表示該屬性為資料庫表欄位。
@TableName :資料庫表相關
@TableId :表主鍵標識
@TableField :表欄位標識
7. 測試方法
@Test
public void testMybatisPlus(){
System.out.println("selectById:"+userDao.selectById(4)); // 根據 Id 查詢
System.out.println("selectList:"+userDao.selectList(null)); // 查詢全部
com.baomidou.mybatisplus.plugins.Page<User> page = new com.baomidou.mybatisplus.plugins.Page<>();
List<User> list = userDao.selectPage(page, null); // 分頁查詢
page.setRecords(list); // 把結果封裝到分頁物件中
System.out.println(page.getCurrent());
System.out.println(page.getPages());
System.out.println(page.getSize());
System.out.println(page.getTotal());
System.out.println(page.getRecords());
EntityWrapper<User> entityWrapper = new EntityWrapper<>();
entityWrapper.eq("id", 4);
entityWrapper.or().like("username", "3");
List<User> selectList = userDao.selectList(entityWrapper); // 條件查詢
System.out.println("wrapper:"+selectList);
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947096/viewspace-2661699/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 深圳軟體測試培訓學習:Java Random介紹--【千鋒】Javarandom
- 深圳Python培訓學習:Python3 簡介–[千鋒]Python
- 深圳java培訓:構建xml文件--【千鋒】JavaXML
- 深圳軟體測試培訓學習:Java連線MySQL--【千鋒】JavaMySql
- 深圳Java培訓:MyBatis為什麼在國內相當流行?【千鋒】JavaMyBatis
- 深圳雲端計算培訓學習:Apache 訪問控制--【千鋒】Apache
- 深圳Web前端培訓學習:js中的模組化--【千鋒】Web前端JS
- 深圳雲端計算培訓學習:部署網校系統 edusoho--【千鋒】
- 深圳Web前端學習:學 Web 前端開發,培訓還是自學靠譜?-千鋒Web前端
- 深圳Java學習:MyBatis為什麼在國內相當流行?-千鋒JavaMyBatis
- 深圳雲端計算培訓學習:雲端計算正在殺死運維嗎?–【千鋒】運維
- 深圳雲端計算培訓學習:女生做雲端計算運維容易嗎?–【千鋒】運維
- 深圳軟體測試培訓學習:Android常用自動化測試工具【千鋒】Android
- 深圳Web前端培訓學習:5G對Web前端發展的影響--【千鋒】Web前端
- 深圳雲端計算培訓學習:構建企業級WIKI及工單系統 --【千鋒】
- 深圳Java學習:小白速懂Https協議-千鋒JavaHTTP協議
- 千鋒教育長沙Java培訓怎麼樣?Java
- 深圳大資料學習:泛型--【千鋒】大資料泛型
- 深圳Java培訓學習:Java8.0新特性之Lambda表示式Java
- 深圳大資料學習:方法的巢狀--【千鋒】大資料巢狀
- 深圳大資料學習:高階函式--【千鋒】大資料函式
- 參加千鋒長沙Java培訓機構怎麼樣?Java
- 千鋒長沙Java培訓:鴻蒙系統入門講解Java鴻蒙
- 千鋒長沙Java培訓:Spring 相關知識講解JavaSpring
- 運維工程師怎樣才能更好的進階?-千鋒深圳雲端計算培訓運維工程師
- java培訓要學習多久?Java
- 長沙Java培訓:千鋒一一哥spring security系列教程總結JavaSpring
- 大資料和雲端計算的關係是什麼?-千鋒深圳雲端計算培訓大資料
- 千鋒長沙前端培訓:Vue相關面試題前端Vue面試題
- java培訓分享:java培訓架構師學習線路圖Java架構
- 深圳雲端計算培訓學習:是不是有了阿里雲,對於運維工程師的需求就減少了呢?–【千鋒】阿里運維工程師
- 好程式設計師Java教程分享MyBatis Plus介紹程式設計師JavaMyBatis
- MyBatis-Plus學習MyBatis
- Java培訓學習步驟有哪些Java
- 我的合肥java培訓學習心得Java
- 深圳Web前端學習:如何給網頁劃分合適的結構--【千鋒】Web前端網頁
- 深圳Web前端學習:前端工程師到底要不要學習演算法知識?--【千鋒】Web前端工程師演算法
- Java培訓分享:學習Java需要什麼軟體?Java