社区
Java SE
帖子详情
如何实现缓存属性??
dnawujun
2019-08-05 09:49:53
比如有个类,有3个double的属性,a,b,c
其中a,b是可读写的,c=func(a,b),func是个耗时的计算过程
如何编码使得当a或b改变时,让c知道自己需要重新计算值了,
但不是立刻计算,仅在客户首次请求c时计算,后面如果
a,b不变时,每次请求c都返回缓存的值
...全文
91
2
打赏
收藏
如何实现缓存属性??
比如有个类,有3个double的属性,a,b,c 其中a,b是可读写的,c=func(a,b),func是个耗时的计算过程 如何编码使得当a或b改变时,让c知道自己需要重新计算值了, 但不是立刻计算,仅在客户首次请求c时计算,后面如果 a,b不变时,每次请求c都返回缓存的值
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
maradona1984
2019-08-06
打赏
举报
回复
java为啥要搞getter/setter方法,有一部分原因就是为了应付你这种场景的,你可以在c属性的getter方法里做相关处理即可,大概就是楼上说的 如果不想破坏这个类的功能性或者还有其他需求,可以考虑弄个代理类/装饰类来做缓存的逻辑,当然这个并不是必须的,没有一定需求的
faith.huan
2019-08-05
打赏
举报
回复
加个map<Sting,Double> 变量,每次获取c的时候,判断有没有Sting.valueOf(a)+“_”Sting.valueOf(b)这个key,如果有就返回key对应的value,没有就通过fumc(a,b)计算下,放入map,再返回
hibernate4.2-jar包.zip
实体类通过注解如`@Entity`,
属性
通过`@Id`,`@GeneratedValue`等标识,
实现
对象到数据库表的映射。使用Session的`save()`, `update()`, `delete()`, `load()`等方法完成对象的持久化操作。 6. **查询机制** ...
hibernate3.3.1的jar包
二级
缓存
可选,通常使用第三方
缓存
提供商如EhCache或Infinispan
实现
。 7. **性能优化** - **延迟加载(Lazy Loading)**:只在需要时加载关联对象,降低内存消耗。 - **批处理(Batch Processing)**:通过设置...
Javascript中如何
实现
函数
缓存
?函数
缓存
有哪些应用场景?
Javascript中如何
实现
函数
缓存
?函数
缓存
有哪些应用场景?
Vue 的计算
属性
如何
实现
缓存
?(原理深入揭秘)
前言很多人提起 Vue 中的 computed,第一反应就是计算
属性
会
缓存
,那么它到底是怎么
缓存
的呢?
缓存
的到底是什么,什么时候
缓存
会失效,相信还是有很多人对此很模糊。本文以 Vue 2...
Vue中对表单、列表等刷新如何利用data
属性
刷新页面做
缓存
操作?
Vue中对表单、列表等刷新如何利用data
属性
刷新页面做
缓存
操作?
Java SE
62,628
社区成员
307,259
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章