直接贴代码:
/**
* 读取文件,若文件修改后则重新加载,否则使用缓存
* @param classpath
* @return
* @throws IOException
*/
public static String getTextByPathNoCached(String classpath) throws IOException {
String filePath=getInstance().getClass().getResource(classpath).getFile();
File currFile=new File(filePath);
InputStream in=null;
boolean modifiedB=isModified(classpath,currFile.lastModified());
if(modifiedB){//重新加载
in =new FileInputStream(filePath);
}else {
in = getInstance().getClass().getResourceAsStream(classpath);
if (in == null) {
throw new FileNotFoundException(classpath + "(系统找不到指定的文件。)");
}
}
byte[] chs = new byte[in.available()];
in.read(chs);
in.close();
return new String(chs, "utf-8");
}
/**
* 判断文件是否修改
* @param keypath
* @return
*/
public static boolean isModified(String keypath,long curr){
boolean isModified=false;
String lastModified=System.getProperty(keypath);
if(null==lastModified){
System.setProperty(keypath, Long.valueOf(curr).toString());
}else {
long lastModifiedL=Long.valueOf(System.getProperty(keypath));
isModified=curr!=lastModifiedL;
}
//更新最后一次修改时间
/**if(isModified){
System.setProperty(keypath, Long.valueOf(curr).toString());
}**/
log.info("File res:"+keypath+"\t is modified "+isModified);
return isModified;
}
分享到:
相关推荐
"IDEA WEB项目启动不加载application.properties配置文件" 在本篇文章中,我们将讨论IDEA WEB项目启动不加载application.properties配置文件的问题。这个问题可能是由于项目中使用的SpringBoot版本不一致引起的。...
在.NET框架开发中,配置文件web.config承担着程序配置的重要角色。web.config文件通常位于项目的根目录下,它包含了应用程序的配置信息,如数据库连接字符串、自定义参数等。该文件以键值对的形式存储配置信息,非常...
总结来说,js文件的合并、压缩、缓存和延迟加载是现代Web开发中提升性能的关键技术。在MVC应用程序中,通过合理运用这些技术,可以显著改善页面加载速度,提供更好的用户体验。同时,持续关注并优化这些方面,是保持...
7. **前端构建工具**:像Webpack、Rollup这样的前端构建工具通常会自动处理版本控制和缓存问题,开发者可以在配置文件中设定相应的策略。 8. **客户端缓存策略**:除了HTTP缓存,还可以使用localStorage、...
在本文中,我们将深入探讨一个自定义开发的WebServer项目的配置文件及其相关知识点。 标题“WebServer项目配置文件”暗示了我们正在讨论的是一个自定义的Web服务器,它有自己的配置设置来管理服务器的行为。这样的...
缓存加载是将常用数据或计算结果存储在内存中,当需要时可以直接读取,而不是每次都去源数据处获取。在网络服务器环境中,这通常指的是对静态内容(如HTML、CSS、JavaScript文件)或动态内容(如数据库查询结果)的...
而Design_xxt_eoc_防止静态资源非正常缓存设计_files可能是该文档的相关附件,可能包含示例代码或配置文件。 在实际开发中,Web开发者需要根据项目需求和性能优化目标,灵活运用各种缓存策略。例如,对于频繁变动的...
本篇文章将深入探讨如何在Geoserver中配置图层缓存,以及缓存对性能的影响。 一、图层缓存的重要性 图层缓存是Geoserver优化性能的关键机制之一。当用户请求地图时,Geoserver会预先渲染图层并将其存储在硬盘上,...
这些配置信息通常存储在配置文件中,便于程序运行时动态加载和修改。C#提供了一种简单有效的方法来操作配置文件中的属性(Properties),即通过`System.Configuration`命名空间下的`ConfigurationManager`类以及`...
这通常包含了所有必要的控件文件、配置文件以及可能的示例代码。开发者需要解压此包,按照文档指示安装和配置,以便于在开发环境中使用这些控件。配置库则包含了一系列预设的参数和设置,帮助开发者快速设定摄像头的...
静态文件缓存处理是 Web 开发中非常重要的一步,特别是在移动设备上访问时,静态文件的加载速度会对用户体验产生很大的影响。在本文中,我们将介绍使用 Spring Boot 的缓存机制来缓存静态文件,从而提高页面加载速度...
通过熟练掌握这些配置文件,开发者可以更高效地开发、调试和维护Java Web应用程序。在实际项目中,根据具体需求,可能还需要调整或添加更多的配置项,以满足复杂业务场景的需要。因此,理解并熟练运用这些配置文件是...
- 模块加载:通过修改 `modules` 目录下的配置文件,可以加载或卸载不同的功能模块。 #### 三、MySQL 数据库系统 **MySQL** 是一个关系型数据库管理系统 (RDBMS),它具有速度快、操作简便的特点,是目前最受欢迎...
7. `web.xml`:Web应用的部署描述符,定义了Servlet、过滤器、监听器等Web组件,是所有Java Web应用的基础配置文件。在这个文件中,我们可以配置Spring MVC的DispatcherServlet,设置欢迎页面,定义过滤器以实现权限...
2. **配置**:在Laravel配置文件中设置缓存路径、前缀等参数。 3. **中间件**:在路由或控制器中使用提供的中间件,例如`CacheResponse::class`,来启用页面缓存。 4. **清理缓存**:当内容更新时,需要有机制清除旧...
1. **对象关系映射(ORM)**:Hibernate通过映射XML配置文件或注解,将Java类与数据库表进行关联。这使得开发者可以以对象的方式来处理数据库操作,比如创建、查询、更新和删除数据,从而避免了手动编写大量的SQL...
3. 性能优化:合理利用缓存策略,减少网络传输,提升视频加载速度。 4. 用户交互:设计良好的用户界面和交互体验,使用户能够方便地操作视频监控功能。 总结,大华视频监控WEB二次开发插件为开发者提供了一套完整...
这些组件共同协作,提供了完整的Web应用平台基础数据、权限管理、参数管理、印章管理、文件锁、客户化配置、模板管理、消息中心、门户配置、任务中心、流程管理、业务类型编码规则、流程设计器、流程监控、Web适配、...