通用Mapper和MBG

通用Mapper和MBG差别

MBG:生成实体类、Dao接口、Mapper文件

通用Mapper:书写总体类、使用预设的Dao接口Mapper文件

SpringBoot集成通用Mapper 

1、导入环境



tk.mybatis
mapper-spring-boot-starter
2.1.1


com.alibaba
druid
1.0.19


mysql
mysql-connector-java
5.1.38

2、配置文件

spring:
datasource:
password: root
driver-class-name: com.mysql.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://localhost:3306/xx
username: root
mybatis:
type-aliases-package: com.entity

3,、入口类扫描

4、开发实体类

5、开发Dao接口和Mapper

6、通用Mapper注意点

1,sql解释

Select
selectAll(); // 查询所有表的信息
selectOne(); // 查询一个对应的对象 参数为对象 对象中有几个属性就根据几个属性查询
selectCount(); // 查询符合条件的对象数量
selectByPrimaryKey(); // 根据主键进行查询 注意使用@Id需要指定主键
select();//查询符合条件的对象
insert//主键策略 当不设置id式 使用设定的主键策略为id赋值 赋值完成后 将id赋值给对象
insert();
insertSelective();
update
updateByPrimaryKey();
updateByPrimaryKeySelective();
delete
deleteByPrimaryKey();//根据主键删除
delete();//根据条件删除

2、常用注解

@Table(name = "") //用在类上 声明数据库的表名
@Id //用在属性上 声明当前属性为主键
@Column(name ="username") //作用在属性上 用来指定数据库中的字段名称
//注意:建议使用驼峰命名法 数据库中以下划线分割如 userage 实体类中要使用驼峰规则如 userAge 对应
user_age
//主键策略 两种形式分别是oracle 和 mysql
//oracle
@KeySql(sql = "select sm_user_seq.nextval from dual", order = ORDER.BEFORE)
//mysql
@KeySql(useGeneratedKeys = true)
@Transient //用在属性上 作用声明当前属性不是数据库中的列
// 分页 RowBounds rowBounds=new RowBounds(4,4); 第一个参数是起始下标 第二个参数是每页的条

3、Example

Example example = new Example(Admin.class);
example.createCriteria()
.andBetween("id",2,5)
.andLike("username","www%")
.orBetween("id",5,6)
.orLike("username","xx");
List admins = adminDao.selectByExample(example);

4、分页

int pageNum = 24;
int pageSize = 1212;
RowBounds rowBounds = new RowBounds((pageNum-1)*pageSize,pageSize);
List admins = adminDao.selectByRowBounds(new Admin(), rowBounds);
 

SpringBoot集成MBG

1、导入环境


org.mybatis.generator
mybatis-generator-core
1.3.2


org.mybatis.generator
mybatis-generator-maven-plugin
1.3.2


mysql
mysql-connector-java
5.1.38




${basedir}/src/main/resources/generatorConfig.xml e>
true

2、根据路径创建generatorConfig.xml


PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">







3.使用插件生成所需实体类,Dao,Mapper






connectionURL="jdbc:mysql://localhost/xx" userId="root" password="root">



targetProject="src/main/java">




targetProject="src/main/resources">



targetPackage="com.dao" targetProject="src/main/java">



enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">

enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">


3、使用插件生成Dao、Mapper

通用Mapper和MBG_第1张图片

你可能感兴趣的:(通用Mapper,MBG)