java后端开发常用注解

 controller 控制层

@Api  
@RestController
@RequestMapping
@Slf4j
@Autowired
@ApiOperation
@GetMapping
@RequestParam
@PostMapping
@RequestBody
@RequestParam

service 业务逻辑层、mapper 持久层

@Service
@Autowired
@Override

entity 实体类、vo 展示层

@   
@EnumValue //枚举类和数据库对应字段
@JsonValue //枚举类返回前端的值
@ApiModel
@Data
@TableName
@TableId
@ApiModelProperty
@JsonFormat
@DateTimeFormat
@TableLogic
@Excel
@EqualsAndHashCode
@Accessors

mybatisplus注解

@TableName //该注解用于指定实体类对应的数据库表名。当实体类名与数据库表名不一致,或者实体类名不是数据库表名的驼峰写法时,您需要使用这个注解来明确指定表名。
@TableId //该注解用于标记实体类中的主键字段。如果你的主键字段名为 id,你可以省略这个注解。
@TableField //该注解用于标记实体类中的非主键字段,它告诉 MyBatis-Plus 如何映射实体类字段到数据库表字段。如果你的实体类字段名遵循驼峰命名规则,并且与数据库表字段名一致,你可以省略这个注解。
@Version //该注解用于标记实体类中的字段作为乐观锁版本号字段。乐观锁是一种并发控制机制,它假设多个事务可以同时进行而不会互相干扰,只在提交事务时检查是否有冲突。通过在实体类中使用@Version注解,MyBatis-Plus 会在更新操作时自动检查版本号,确保在更新过程中数据没有被其他事务修改。
@EnumValue //该注解用于标记枚举类中的字段,指定在数据库中存储的枚举值。当实体类中的某个字段是枚举类型时,使用@EnumValue注解可以告诉MyBatis-Plus在数据库中存储枚举值的哪个属性。
@TableLogic //该注解用于标记实体类中的字段作为逻辑删除字段。逻辑删除是一种数据管理策略,它不是真正地从数据库中删除记录,而是在记录中标记该记录为已删除状态。通过使用@TableLogic注解,MyBatis-Plus 可以在查询、更新和删除操作中自动处理逻辑删除字段的值。
@KeySequence //该注解用于指定 Oracle 数据库中序列(Sequence)的名称,以便在实体类中生成主键值。在 Oracle 数据库中,主键通常是通过序列来生成的,而不是像其他数据库那样使用自增字段。@KeySequence注解告诉 MyBatis-Plus 使用特定的序列来生成主键。
@InterceptorIgnore //该注解用于指定在执行 MyBatis-Plus 的某个方法时,是否忽略特定的拦截器。MyBatis-Plus 提供了多个拦截器,用于实现如分页、逻辑删除、多租户等功能。通过使用注解,开发者可以控制哪些拦截器在执行特定方法时应该被忽略。
@OrderBy //该注解用于指定实体类中的字段在执行查询操作时的默认排序方式。通过在实体类字段上使用OrderBy注解,可以确保在执行查询时,如果没有显式指定排序条件,MyBatis-Plus 将按照注解中定义的排序规则返回结果。

校验规则注解(实体类) 

@AssertFalse//	可以为null,如果不为null的话必须为false
@AssertTrue	//可以为null,如果不为null的话必须为true
@DecimalMax	//设置不能超过最⼤值
@DecimalMin	//设置不能超过最⼩值
@Digits	//设置必须是数字且数字整数的位数和⼩数的位数必须在指定范围内
@Future	//⽇期必须在当前⽇期的未来
@Past	//⽇期必须在当前⽇期的过去
@Max	//最⼤不得超过此最⼤值
@Min	//最⼤不得⼩于此最⼩值
@NotNull	//不能为null,可以是空
@Min	//最⼤不得⼩于此最⼩值
@Pattern	//必须满⾜指定的正则表达式
@Size	//集合、数组、map等的size()值必须在指定范围内
@Email	//必须是email格式
@Length	//⻓度必须在指定范围内
@NotBlank	//字符串不能为null,字符串trim()后也不能等于“”
@NotEmpty	//不能为null,集合、数组、map等size()不能为0;字符串trim()后可以等于“”
@Range	//值必须在指定范围内
@URL	//必须是⼀个URL

shiro安全框架注解

@RequiresRoles("admin") // 控制角色 为 admin

@RequiresPermissions("sys:role") // 控制权限指令

@RequiresAuthentication //验证用户是否登录,等同于方法subject.isAuthenticated() 结果为true时

@RequiresUser //验证用户是否被记忆

@RequiresGuest //验证是否是一个guest的请求,与@RequiresUser完全相反

redis缓存注解

@Cacheable //加缓存

@CacheEvict //清缓存

jeecg自定义注解

@Cacheable //Spring缓存注解
@Dict //字典翻译注解
@PermissionData //数据权限注解
@AutoLog //自动记录日志

数据脱敏注解

@SensitiveEncode//service方法	脱敏加密注解,表示该方法的返回值需要脱敏处理
@SensitiveDecod //service方法	脱敏解密注解,表示该方法的返回值需要解密(仅支持对脱敏encode之后的解密)
@SensitiveField	//实体字段	表示该字段需要脱敏处理

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值