Java中MyBatis Plus知识点总结

 更新时间:2019年10月31日 08:36:17   作者:wx5da18b5c4b01e  
在本篇文章里小编给大家整理一篇关于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);

 }

以上就是本次介绍的全部相关知识点,感谢大家的学习和对脚本之家的支持。

相关文章

  • SpringBoot如何动态改变日志级别

    SpringBoot如何动态改变日志级别

    这篇文章主要介绍了SpringBoot如何动态改变日志级别,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下
    2020-12-12
  • SpringBoot使用FFmpeg实现M3U8切片转码播放

    SpringBoot使用FFmpeg实现M3U8切片转码播放

    FFmpeg是一个开源跨平台的多媒体处理工具套件,它支持音频、视频文件的编码、解码、流媒体传输以及转换等多种操作,本文小编给大家介绍了SpringBoot使用FFmpeg实现M3U8切片转码播放的操作,需要的朋友可以参考下
    2024-08-08
  • 详解SpringIOC容器中bean的作用范围和生命周期

    详解SpringIOC容器中bean的作用范围和生命周期

    这篇文章主要介绍了SpringIOC容器中bean的作用范围和生命周期,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • springboot更新配置Swagger3的一些小技巧

    springboot更新配置Swagger3的一些小技巧

    今天给大家分享springboot更新配置Swagger3的方法,大家需要注意Swagger3版本需要引入依赖,具体示例代码参考下本文
    2021-07-07
  • Spring Boot两种全局配置和两种注解的操作方法

    Spring Boot两种全局配置和两种注解的操作方法

    Spring Boot使用一个application.properties或者application.yaml的文件作为全局配置文件,本文重点给大家介绍Spring Boot两种全局配置和两种注解的配置方法,感兴趣的朋友一起看看吧
    2021-06-06
  • Executor拦截器高级教程QueryInterceptor的规范

    Executor拦截器高级教程QueryInterceptor的规范

    今天小编就为大家分享一篇关于Executor拦截器高级教程QueryInterceptor的规范,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Java运算符从见过到掌握上

    Java运算符从见过到掌握上

    计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量,本篇对大家的学习或工作具有一定的价值,需要的朋友可以参考下
    2021-09-09
  • SpringBoot spring.factories加载时机分析

    SpringBoot spring.factories加载时机分析

    这篇文章主要为大家介绍了SpringBoot spring.factories加载时机分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Maven+SSM框架实现简单的增删改查

    Maven+SSM框架实现简单的增删改查

    这篇文章主要介绍了Maven+SSM框架实现简单的增删改查,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • 利用Java将2019拆分成三个素数平方和的方法实例

    利用Java将2019拆分成三个素数平方和的方法实例

    这篇文章主要给大家介绍了关于利用Java将2019拆分成三个素数平方和的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-05-05

最新评论