12下一页
返回列表 发新帖

谁说java代码多,5分钟搞定app缓存

612.5k 20
swmozowtfl 发表于 2015-7-10 22:26:09|湖北 | 查看全部 阅读模式
概述:我用了5分钟为自己的app(应用程序)添加缓存,再一次证明java也不需要写长篇的代码,就能为app添加缓存。想知道我怎样做的吗?请看下文。# b" a+ {  I3 a, |  @9 n' i
你也许永远不会相信我为应用程序添加缓存层,只用了5分钟。
! y$ q, |8 R: q1 E* q我的应用程序使用 spring version 3.2.8 和 maven 3.2.1。- h! |0 ~1 I3 [& ^2 H! i
从spring version 3.2 开始,org.springframework.cache.ehcache已经从核心宝中移除,现在在spring-context-support中。为了让ehcache工作,你必须单独添加在项目中。$ z: a) n" c) e& p$ v* J! [: m
步骤一
0 j+ L( _6 V6 x7 xmaven需要添加下面代码:8 K4 U, z( L* q0 I' y4 D
<dependency>6 N+ F1 h3 z1 x4 L; T
<groupid>org.springframework</groupid>
; b. J3 _" ?" q5 ~: a# W7 ^<artifactid>spring-context-support</artifactid> <version>${spring.version}</version>' a( H8 o5 B2 X5 V
</dependency>3 s, W# F- V. C) V% u/ I
以及
; x7 z) ~0 v+ G3 {6 e<dependency>
* F4 r3 k8 c- w7 s+ L& q0 B<groupid>net.sf.ehcache</groupid>& O* f) @5 H0 [
<artifactid>ehcache</artifactid>
7 U% w/ d8 C" ?7 k! W5 e<version>${ehcache.version}</version>9 t& ^2 R% I/ S3 @" }
</dependency>; A6 z9 ]1 ^! y  T/ G8 K' x9 G; L
将最新版本放到占位符中: ${spring.version} 和 ${ehcache.version}
( V1 U( p3 K+ u步骤二6 r: _8 q0 J4 M* c) O
在应用程序中将以下代码加入context.xml:( U' Z* v' M) i$ T
<bean id=cachemanager class=org.springframework.cache.ehcache.ehcachecachemanager p:cachemanager-ref=ehcache>
; K% }  T* W* N$ |) f- x1 C; |( J<bean id=ehcache class=org.springframework.cache.ehcache. ehcachemanagerfactorybean p:configlocation=classpath:configuration/ehcache.xml p:shared=true> <cache:annotation-driven></cache:annotation-driven></bean></bean>" @7 x0 E9 M& W# k: t& _5 ?# ]
步骤三' z0 [+ r. x% t' s
将ehcache.xml添加到类路径
* O  K$ x$ r7 R2 C0 [0 J% ^" W一个基本的ehcache.xml入下:
9 x3 w! }3 a$ {<ehcache xmlns:xsi=>4 K, j, `# _7 {- E1 S& R$ n
<diskstore path=java.io.tmpdir>
' O, F) I: K  N<defaultcache>0 j. I! b+ ]- Q  \4 ~
<cache name=yourcache maxelementsinmemory=10000 eternal=false timetoidleseconds=1800 timetoliveseconds=1800 maxelementsondisk=10000000 diskexpirythreadintervalseconds=1800 memorystoreevictionpolicy=lru> <persistence strategy=localtempswap> </persistence></cache>% |! Q, B6 e) n7 V# b
</defaultcache></diskstore></ehcache>
0 `. J  K7 r: L6 A6 z7 r步骤四3 D, ^& k; I+ _
最后一步,使用注释,非常简单,一行代码:) v5 R5 y9 U4 H8 K: y
@cacheable(value =youcache)5 D& N; Q' K; ?
这个注释可以使用任何方法,默认情况下在缓存哈希图中,它使用方法参数作为key。
9 g$ p6 s  ~3 U0 d/ k4 e现在,谁说java要写长篇的代码?4 F9 }0 ~2 Z* ^- g* p
ehcache介绍:" ?; E; t% c9 b! b0 \2 s
在这次实践中使用了ehcache,它强大、高度可定制化,可以根据需要设置任何key、缓存类型、缓存时间。最重要的是,他开源9 j; K3 v/ O9 c
% q9 `8 D: s2 m
更多网页制作信息请查看: 网页制作

回复|共 20 个

seazvyt 发表于 2015-10-9 16:25:00|Reserved | 查看全部
本人在此留言均为网络上复制,用于检验本人电脑键盘录入、屏幕显示的机械、光电性能。并不代表本人局部或全部同意、支持或者反对楼主观点。
buingeEvineus 发表于 2015-10-9 16:25:13|INNA | 查看全部
苍天之下,厚土之上,竟有如此奇人异士、文人墨客!讥讽于谈笑间,笑骂于无形中,层次之高,境界之深,非我等所能匹及,偶像啊!
wwzcdenleclv 发表于 2015-10-9 16:24:49|日本 | 查看全部
假如我们把自己力所能及的事都完成了,我们会真的令自己大吃一惊。
wwzcdenleclv 发表于 2015-10-9 16:24:58|美国 | 查看全部
给我点愤怒.
Acropozelan 发表于 2015-10-9 16:25:39|欧洲 | 查看全部
朕要午休了..............
Mqokjdvq 发表于 2016-2-4 17:02:57|INNA | 查看全部
成长可以说已经是很幸福的了。但在另一方面,作者也不是温室里的花*,只能作些鸳鸯蝴蝶 的文章。在前面我已经说过了,这篇文章比形散神聚更胜一筹。诸位见过大风沙没有
bqtklouu 发表于 2016-2-4 17:02:29|德国 | 查看全部
今天统计好像出了问题
Acropozelan 发表于 2016-2-4 17:02:30|加拿大 | 查看全部
哇~~` 你是不是投胎滴时候走错地方啦~``
buingeEvineus 发表于 2016-2-4 17:02:27|美国 | 查看全部
看起来好~~像啊~~~~~
Mqokjdvq 发表于 2016-2-4 17:02:25|中国 | 查看全部
额~哦........偶无语
gevaemaidovef 发表于 2017-4-11 14:17:10|美国 | 查看全部
这是安慰我啊~~还是垮我啊???怎么感觉又被扁了啊
tohme 发表于 2017-4-11 14:19:01|美国 | 查看全部
教教我怎么seo
mwxny 发表于 2017-4-11 14:17:15|阿根廷 | 查看全部
系统居然怀疑我灌水,我身边又没有水龙头。哦…明白了,身上有一个……
GoodyFouppy 发表于 2017-4-11 14:12:15|拉美地区 | 查看全部
也有啊,前天不是你也到一个很狂的贴里去了吗?

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 得知互动-专注Ai与站长技术交流社区-Ai交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表