Java教程分享MyBatis Plus介紹 1.MyBatis Plus 介紹 MyBatis Plus 是國(guó)內(nèi)人員開(kāi)發(fā)的 MyBatis 增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生。 MyBatis Plus 的核心功能有:支持通用的 CRUD、代碼生成器與條件構(gòu)造器。 通用 CRUD:定義好 Mapper 接口后,只需要繼承 BaseMapper<T> 接口即可獲得通用的增刪改查功能,無(wú)需編寫(xiě)任何接口方法與配置文件 條件構(gòu)造器:通過(guò) EntityWrapper<T> (實(shí)體包裝類),可以用于拼接 SQL 語(yǔ)句,并且支持排序、分組查詢等復(fù)雜的 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"> <!-- 數(shù)據(jù)源 --> <property name="dataSource" ref="dataSource"/> <!-- 別名處理 --> <property name="typeAliasesPackage" value="com.qf.entity"/> <!-- 插件注冊(cè) --> <property name="plugins"> <list> <!-- 注冊(cè)分頁(yè)插件 --> <bean class="com.baomidou.mybatisplus.plugins.PaginationInterceptor" /> </list> </property> </bean> |
4.Dao層public interface IUserDao extends BaseMapper<User> { } |
5.實(shí)體類@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.常見(jiàn)注解@TableField(exist = false):表示該屬性不為數(shù)據(jù)庫(kù)表字段,但又是必須使用的。 @TableField(exist = true):表示該屬性為數(shù)據(jù)庫(kù)表字段。 @TableName:數(shù)據(jù)庫(kù)表相關(guān) @TableId:表主鍵標(biāo)識(shí) @TableField:表字段標(biāo)識(shí) 7.測(cè)試方法 @Test public void testMybatisPlus(){ System.out.println("selectById:"+userDao.selectById(4)); // 根據(jù)Id查詢 System.out.println("selectList:"+userDao.selectList(null)); // 查詢?nèi)?/span> com.baomidou.mybatisplus.plugins.Page<User> page = new com.baomidou.mybatisplus.plugins.Page<>(); List<User> list = userDao.selectPage(page, null); // 分頁(yè)查詢 page.setRecords(list); // 把結(jié)果封裝到分頁(yè)對(duì)象中 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); } |
|