首页 > 其他分享 >jetCache框架的@Cached注解的key怎么写表达式

jetCache框架的@Cached注解的key怎么写表达式

时间:2023-06-29 17:24:39浏览次数:45  
标签:name Cached jetCache User key id user

@Cached(name = "userCache", key = "user_#userId + '-' + #userName", expire = 3600)
public User getUserByIdAndName(Long userId, String userName){
    // ...
}

 

在这个例子中,@Cached注解的key属性的值为"user_#userId + '-' + #userName",这是一个更加复杂的字符串表达式。在运行时,JetCache框架会根据方法调用时的参数值来替换其中的变量,然后再将整个字符串表达式作为该缓存项的key值。name字段会作为key的前缀

 

@Cached(name = "userCache", key = "#user.id", expire = 3600)
public User getUserById(User user) {
    // 从数据库中查询用户信息
    User result = userDao.getUserById(user.getId());
    return result;
}

在这个例子中,@Cached注解的key属性的值为“#user.id”,表示将传入的User对象的id属性作为缓存项的key。在运行时,JetCache框架会根据getUserById方法的参数值来替换#user.id变量,从而得到最终的缓存项key。

如果要取的是参数对象中的多个属性,可以使用类似“#user.id+''+#user.name”的形式来拼接多个属性。注意,在这种情况下,拼接的属性值之间需要添加连接符,例如“”、“-”等。

标签:name,Cached,jetCache,User,key,id,user
From: https://www.cnblogs.com/ENU7/p/17514711.html

相关文章

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Secureboot
    regaddHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Secureboot/vAvailableUpdates/tREG_DWORD/d0x10/f命令是用于在注册表中添加一个名为"AvailableUpdates"的DWORD值,并将其设置为十六进制值"0x10"。此操作需要管理员权限才能执行。这个命令的作用是向......
  • 转载: redis中的bigkey问题
    reference:  https://www.modb.pro/db/459810 什么是bigkeybigkey就是rediskey/value体系中的大value问题。我们知道redis的底层数据存储结构中,有多种数据结构的实现。String:简单动态字符串List:双向链表、压缩列表 Hash:哈希表、压缩列表 SortedSet:跳表、压......
  • SkeyeVSS视频融合云平台在数字化民生服务中的重要作用
    SkeyeVSS视频融合云平台在数字化民生服务中的重要作用当前,大数据、云计算、人工智能、视频监控等现代信息技术加速创新,日益融合到经济社会发展各领域,不仅推动产业转型升级、经济快速增长,在智慧社区、数字乡村、智慧养老等民生服务中也扮演着越来越重要的角色。数字化民生系统建设是......
  • redis 主从复制如何实现的? redis 的集群模式如何实现? redis 的 key 是如何寻址的?
    1.redis主从复制如何实现的?1.1 连接建立阶段1.2  数据同步阶段1.3命令传播阶段是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master),后者称为从节点(slave);数据的复制是单向的,只能由主节点到从节点。需要注意,主从复制的开启,完全是在从节点发起的;不需......
  • C# MemoryCache 和 Memcached的区别
    一、概念1、MemoryCache是C#/.NET应用程序中自带的缓存库。2、Memcached是一个分布式缓存服务器,在不同语言的应用程序中都可以使用。二、异同1、都是用于内存缓存的工具。2、分布式部署支持  MemoryCache对象是在单台服务器上运行的,并且仅限于该服务器的范围内;  M......
  • JavaScript1.8.5新特性系列Object.keys
    以前在js-object这个分类里面也写过keys相关的api 在JavaScript1.8.5中,加入了原生的Object.keys这个api  Object.keys(obj);/*简单举例*/Object.keys({"A":"a","B":"b"});//["A","B"]兼容性写法:  if(!Object.keys){Object.keys=......
  • 亚马逊服务问题之 WARNING: UNPROTECTED PRIVATE KEY FILE
       最近一直搞亚马逊服务相关的东西:    WARNING:UNPROTECTEDPRIVATEKEYFILE: chmod600**.pem  http://stackoverflow.com/questions/10090843/ec2-ubuntu-instance-unprotected-private-key-file ......
  • 不能成功配置ssh信任,提示Agent admitted failure to sign using the key.
    不能成功配置ssh信任,提示Agentadmittedfailuretosignusingthekey.问题现象:   做完信任之后要需要输密码:[[email protected]]$sshdb02Agentadmittedfailuretosignusingthekey.grid@db02'spassword:原因:   GNOME用户会在尝试通过SSH连接到GCE时......
  • junodb paypal 开源的key value 存储
    junodbpaypal开源的keyvalue存储,下图是关于整体架构的参考架构 简单说明:junodb是基于proxy的架构设计,可以方便的水平扩展,junodb核心包含了三部分,client,proxy,storageserver,当然junodb还依赖一个etcdproxy会通过存在在etcd的分片信息进行数据的复制处理,对于数据存储,juno......
  • postgres 错误duplicate key value violates unique constraint 解决方案
    报错信息:django.db.utils.IntegrityError:duplicatekeyvalueviolatesuniqueconstraint"parent_parentprofile_pkey"DETAIL: Key(id)=(3)alreadyexists.原因分析:postgres主键排序是不同步主要是:serialkey其实是由sequence实现的,当你手动给serial列赋值的时候,sequ......