java自习室 day 23

记录一下公司项目遇到的一些注解,长期更新

一些注解

@Resource

默认按byName的规则注入bean

缓存

@Cacheable

可以标记在方法和类上。标记在类上代表类中所有方法都支持缓存。对于一个支持缓存的方法,Spring会在其被调用后将其返回值缓存起来,以保证下次利用同样的参数来执行该方法时可以直接从缓存中获取结果,而不需要再次执行该方法。Spring在缓存方法的返回值时是以键值对进行缓存的,值就是方法的返回结果。

Cacheable可以指定3个属性valuekeycondition

value 指定Cache的名称,可以是一个Cache也可以是一个Cache数组

key 指定生成结果对应的key,支持SpringEL表达式

condition 默认为空,表示将缓存所有的调用情形。true代表开启缓存,false代表不使用缓存

@CacheEvict

标注在需要清除缓存元素的方法或类上。标记在类上代表类中所有的方法的执行都会触发缓存的清除操作。

CacheEvice可以指定5个属性valuekeycondition,与Cacheable类似,还有两个新属性allEntriesbeforeInvocation

allEntries 为true时直接清除缓存所有元素,忽略指定key

beforeInvocation 为true时,将在调用该方法前清除缓存

@Caching

可以同时在一个方法或者类上同时指定多个Spring Cache相关的注解。拥有三个属性cacheableputevict,分别对应CacheableCachePutCacheEvict

代替xml配置

@Service、@Repository、@Controller、@Component

分别对应业务层、持久层、控制层和其他一些模糊组件

相当于xml配置中的

JSON字符串

@JsonInclude

注解于类头,可以对实体类引用按自动规则过滤实体类生成的json数据,也可以通过实现Serializable接口来标识此注解,用于对类的最终json结构进行过滤处理

值的可选项有四个:

  • Include.Include.ALWAYSDefault / 都参与序列化)
  • Include.NON_DEFAULT(当Value 为默认值的时候不参与,如Int a;a=0 的时候不参与)
  • Include.NON_EMPTY(当Value“” 或者null 不输出)
  • Include.NON_NULL(当Valuenull 不输出)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值