好程式設計師Java教程分享MyBatis Plus介紹
好程式設計師Java 教程分享 MyBatis Plus 介紹:1.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/69913892/viewspace-2661914/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師Java學習資源分享RabbitMQ介紹程式設計師JavaMQ
- 好程式設計師Java教程分享Java之設計模式程式設計師Java設計模式
- 好程式設計師Java教程分享Java面試妙招程式設計師Java面試
- 好程式設計師Java教程分享Java語法程式設計師Java
- 好程式設計師Java教程分享List介面程式設計師Java
- 好程式設計師Java教程分享javaweb框架程式設計師JavaWeb框架
- 好程式設計師Java教程分享Java開發工具程式設計師Java
- 好程式設計師Java學習路線分享Dubbo架構介紹程式設計師Java架構
- 好程式設計師Java培訓分享Mybatis面試題集合程式設計師JavaMyBatis面試題
- 好程式設計師Java教程分享Java開發主流框架程式設計師Java框架
- 好程式設計師Java教程分享Java 迴圈結構程式設計師Java
- 好程式設計師Java教程分享Jmeter效能測試程式設計師JavaJMeter
- 好程式設計師大資料教程分享HDFS常用shell和web介面介紹程式設計師大資料Web
- 好程式設計師Java學習路線分享mybatis對映程式設計師JavaMyBatis
- 好程式設計師Java分享Mybatis必會的動態SQL程式設計師JavaMyBatisSQL
- 好程式設計師Java教程分享幾個流行的Java框架程式設計師Java框架
- 好程式設計師Java教程分享Java中this的幾種用法程式設計師Java
- 好程式設計師Java教程分享Java面試題之Hibernate程式設計師Java面試題
- 好程式設計師Java教程分享:Java工程師常見面試題程式設計師Java工程師面試題
- 好程式設計師Java培訓分享四種常用執行緒池介紹程式設計師Java執行緒
- 好程式設計師Java教程分享XML常見面試題程式設計師JavaXML面試題
- 好程式設計師Java教程分享MySQL目錄結構程式設計師JavaMySql
- 好程式設計師Java學習路線分享MyBatis之基本使用程式設計師JavaMyBatis
- 好程式設計師Java教程分享Java物件導向與程式導向程式設計師Java物件
- 好程式設計師web前端培訓分享FormData 簡單介紹程式設計師Web前端ORM
- 好程式設計師Java教程分享Java實習生面試題集錦程式設計師Java面試題
- 好程式設計師Java教程分享Java的4大核心基礎程式設計師Java
- 好程式設計師Java教程分享如何系統的學習Java程式設計師Java
- 好程式設計師Java教程分享Java難點解析之泛型程式設計師Java泛型
- 好程式設計師Java教程分享Java的五大特點程式設計師Java
- 好程式設計師Java教程分享經典Java main方法面試題程式設計師JavaAI面試題
- 好程式設計師Java培訓分享Java程式設計技巧程式設計師Java
- 好程式設計師Java教程分享Java設計模式的6大原則程式設計師Java設計模式
- 好程式設計師教程分享Java註解和運用註解程式設計程式設計師Java
- 好程式設計師Java教程分享Nginx靜態資源部署程式設計師JavaNginx
- 好程式設計師Java教程分享jsp相關面試題程式設計師JavaJS面試題
- 好程式設計師Java教程分享JavaScript常見面試題五程式設計師JavaScript面試題
- 好程式設計師Java教程分享JavaScript常見面試題四程式設計師JavaScript面試題