意外的问题总会让人措手不及,今天与大家分享的就是NVelocity设置缓存的问题,之前刚google了一下发现没什么太好的解决方案,希望在这能为需要的朋友找出满意的答案,上一篇blog刚说了NVelocity的用法,这就不在重复了,如需要的朋友,请点击这里,查看NVelocity的用法和使用参考文档已经下载最新dll地址。

  很多朋友可能也会遇到这样的问题,设置缓存的代码已经写了为什么不起作用呢,刚开始我也很苦闷,下来看设置缓存的代码吧,如下:

// 设置缓存velocityEngine.AddProperty(RuntimeConstants.FILE_RESOURCE_LOADER_CACHE, true);velocityEngine.AddProperty("file.resource.loader.modificationCheckInterval", (Int64)30);   // 单位为秒

就像我上篇那样刚开始,我的错误设置如下:

就这样设置缓存,怎么也不能起作用,这是什么原因呢?

原来是这来出了问题,如图:

这样设置的缓存,每次在VelocityEngine(Velocity 引擎)创建的时候都会重新New,Velocity标签也许没有我们想象的那么强大,这就是为什么缓存无效的原因了。

既然知道了问题的所在,那么怎么来处理这个问题呢,下面是我给出的解决方案:

利用static变量的特点,每次进来的时候都会检测VelocityEngine对象是否为null,这样只用赋值一次,等到设置的缓存失效为止,他就不会重新New了,模板也就被缓存起来了。

【Stone 制作整理,引用请写明出处谢谢合作,联系QQ:1370569】

NVelocity标签设置缓存的解决方案相关推荐

  1. html audio标签无效,HTML5的audio标签设置currentTime无效解决方案

    上帝视角看民宿产业 - 马化腾 00:00 01:06 在firefox.IE.中都有效,但是在chrome中无效, 原因:这是一个与服务器有关的chrome报错 解决方案: 1.将的src引用的视频 ...

  2. 设置log缓存_Redis中缓存击穿 缓存穿透 缓存雪崩解决方案

    戳上方蓝字 "给自己一个smile" 关注我 并 置顶星标! 你的关注意义重大! 目录     1.  缓存击穿     2.  缓存穿透     3.  缓存雪崩     4.  ...

  3. 集成Ehcache用来缓存表以后,怎么设置缓存刷新时间

    问答 集成Ehcache用来缓存表以后,怎么设置缓存刷新时间 发布于 217天前  作者 老司机  93 次浏览  复制  上一个帖子  下一个帖子  标签: 无 集成Ehcache用来缓存表以后,怎 ...

  4. input标签 设置纯数字输入

    input标签 设置纯手机号输入(键盘输入或粘贴时自动去除非数字字符) 解决方案: <input  type="tel" placeholder="请输入11位手机 ...

  5. Vue组件设置缓存kepp-alive 后如何获取数据

    Vue组件设置缓存kepp-alive 后如何获取数据 解决方案 : beforeRouteEnter activated beforeRouteEnter 每次进去组件渲染时,都会执行beforeR ...

  6. redis系列之数据库与缓存数据一致性解决方案(简单易懂)

    数据库与缓存读写模式策略 写完数据库后是否需要马上更新缓存还是直接删除缓存? (1).如果写数据库的值与更新到缓存值是一样的,不需要经过任何的计算,可以马上更新缓存,但是如果对于那种写数据频繁而读数据 ...

  7. div中的img标签多余空白bug解决方案

    上传图片之前: 上图之前之后: 原图是这样的: 发现区别了吧,这里用到了css3的object-fit属性为cover(保持原有尺寸比例.保证替换内容尺寸一定大于容器尺寸,宽度和高度至少有一个和容器一 ...

  8. 谷歌浏览器设置缓存方法

    谷歌浏览器设置缓存方法: 1.在桌面Google Chrome快捷方式,目标: 找到 C:\Users\Splendid\AppData\Local\-\Application\chrome.exe ...

  9. kodi android 卡顿,给Kodi设置缓存来解决播放大文件卡顿

    给Kodi设置缓存来解决播放大文件卡顿 2021-03-02 16:21:20 28点赞 355收藏 31评论 Kodi可以算是电视盒子上最棒的播放器了,它具有强大的功能,优美的界面,相信很多人也都是 ...

最新文章

  1. 是否顺应互联网大脑的发育趋势决定科技企业兴衰
  2. 黑苹果没有找到触控板为什么还是能用_为什么Macbook触控板体验领先Windows那么多,却难以取代鼠标?...
  3. ios8 Xcode6 设置Launch Image 启动图片
  4. PAT甲级1023 Have Fun with Numbers:[C++题解]高精度加法和两个vector大小比较
  5. HTML入门第一和第二章
  6. 参加 JSConf China 2019 是怎样的体验?VS Code 和 TypeScript 都很火
  7. python socket 大文件_python之socket运用之传输大文件
  8. hibernate保存mysql乱码_hibernate保存数据到mysql时的中文乱码问题
  9. 国庆活动延长三天!快来领取你的数据技术嘉年华门票!
  10. MySQL备份,恢复方案,mysqlbinlog,mysqldump,主从,主主复制
  11. 百分点舆情洞察系统解决方案
  12. k8s数据持久化实验
  13. 赵本山 政治敏锐_每天5分钟保持敏锐的7种方法
  14. 一. 图模型(graphical model, GM)的表示
  15. 如何使用jmeter录制脚本
  16. Arduino字符串操作函数
  17. java word书签_Java 给Word中的指定字符串添加书签
  18. 英特尔核显驱动hd630_英特尔首款独显 Xe Max 评测出炉:低于移动端 GTX 1050 Ti
  19. Android studio 4.0 offline mode
  20. 一秒解决笔记本无法连接网络问题——解决笔记本插网线,显示未识别网络。

热门文章

  1. Kewail-邮件短信接口的基础教程
  2. 人生中最【无用】的二十件事
  3. shell timeout
  4. hibernate 程序运行时的错误,及解决办法(不定期更新)
  5. 开发应用层的需要了解 framework层吗?---不需要!!!!
  6. oracle中with的用法及用处
  7. python绘制星空_用python画星空源代码是什么?
  8. exfat单元分配要设置多少_微软宣布,支持往Linux内核里添加exFAT存储了!跨系统存储的福音...
  9. [转载] 《Python语言程序设计》课程笔记
  10. ftp服务器如何配置多个文件夹,ftp服务器如何配置多个文件夹