一、 注解
-
@Data
自动将实体类的成员属性生成Get方法和Set方法 -
@TableName(value =“实体类对应的数据表名”)
解释:当实体类名与数据表名不一致时,需要改注解进行声明
例如:
数据表:usertbl
类名:usertbl
这种情况不需要加该注解
数据表:usertbl
类名:User
这种情况就需要加
@Data
@TableName(value =“usertbl”)
public class User{
private Integer id;
private String name;
}
结合1和2 目前完整的类如上所示,不需要加set和get方法 -
@TableId(value =“id” type = IdType)
解释:用来映射数据库主键和实体类的ID不一致时
value:数据表主键字段名
IdType:类型,
Auto(0):生成一个自增的主键
NONE(1):随机生成一个主键,通过雪花算法生成一个随机数 不用定义成integer类型 数据库也是
INPUT(2) :由开发者手动赋值,如果开发者手动赋值则存该值,否则以自增的方式
ASSIGN_ID() :自动赋值,雪花算法。
ASSIGN_UUID():要求主键的类型必须是String,自动生成UUID -
@TableFieId(value = “数据表字段”,exist =false)
exist:类中定义了一个不是数据库字段成员是,使用该属性忽略数据库查询
fill:自动填充 FieldFill.INSERT插入时填充 FieldFill.INSERT_UPDATE 更新和插入时填充 -
@Version 防止同步更新
-
@EnumValue 将数据库字段映射成对应字符串 如0:男,1:女
-
@Override 检查重写父类方法时的名字是否正确
-
@TableLogic 逻辑删除 根据deleted字段
-
@PathVariable(name = “从客户端过来的阐述名称”) 变量类型 变量名
如:假设id=1,在客户端的请求地址为:/test/1
(name = “id”)表示带有一个id参数 ,将id映射成 String id
@GetMapping("/test/{id}")
public Result GetTest(@PathVariable(name = "id") String id)
{
return null;
}
- @RequestParam(value = “请求参数名称”, defaultValue = “为空时默认值”) 变量类型 变量值
如:假设id=1,在客户端的请求地址为:/test?id=1
@RequestMapping(value = "/test", method = RequestMethod.GET)
public Result test(@RequestParam(value = "id", defaultValue = "1") Integer id){
return null;
}
-
@RequestBody(required = false) 实体类型 实体名称 //required 为是否允许空值该注解只允许post请求
-
从客户端发送GET和POST请求时参数的配置区别
get
post
二、数据库方法
- 查询
mapper.selectLis(null)//不加任何条件全部查询
QueryWrapper wrapper = new QueryWrapper();
wrapper.eq("字段名","值");
mapper.selectList(wrapper)