使用MP的前期工作:
- 建库建表
- 在IDE中新建Maven Project
- 在POM文件中引入依赖
4.右键Maven项目,选择Maven,Update Project
5.在src/main/resorces文件夹下,新建application.yml配置文件
6.在application.yml中配置信息
7.在src/main/java文件夹下,新建Spring boot 启动类。
8.新建实体类,和表结构相同。加上@Data就免去了GetSetter方法。(需要lowbok依赖)
9.新建mapper接口,继承BaseMapper,泛型是要操作的实体类,而且还要在Spring boot启动类上加上@MapperScan(“所在的包”)
10.在src/test/java新建测试类。加上注解:@Springboottest 表示这是一个测试类。@RunWith(SpringRuner.class)表示可以在springboot环境下运行Junit测试。
常用注解
1.数据库表名和实体类类名不一致时,在实体类上加上注解@TableName(“新的数据库表名”),就可以重新映射。
2.MP默认主键的标识符为id,如果不是id,可以用@TableId映射。
3.数据库字段名和实体类属性名不一致时,可以在实体类属性上加上注解@TableFieId(“数据库表名”),应用于非主键。
4.当实体类属性在数据库表上没有对应的字段时,这时进行CRUD操作就会报错,只需要为这个属性加上关键字Transient,****不参与序列化,就可以解决这个问题。但是属性必须参与系列化的时候,就用static这个关键字。如果static仍然不满足需求,可以删除static,加上注解@TableFieId(exist = false)
查询
单个id查询:
批量id查询:
map查询:
columnMap.put()是设置条件。需要注意的是“name”和“age”是数据库字段名,不是实体类属性名。
条件构造器查询
方法里面的第一行代码和注释是一样的作用。
例子2ÿ