java web开发中获取tomcat上properties文件内容的方法

 更新时间:2017年07月19日 14:42:15   作者:WhyWin  
java web开发中如何获取tomcat上properties文件内容的方法,方便文件存储位置的修改,解耦和,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

在java web开发的时候经常会用到读取读取或存放文件,这个文件的默认路径在哪里呢?写死在程序里面显然是可以的,但这样子不利于位于,假如有一天项目从window移植到linux,或者保存文件的路径变了,就需要去源代码中查找,进行替换,这样子不仅效率低,而且程序的耦合度也会过高,这里我用了一个properties文件用于存放文件的保存路径,需要保存或者读取都来自己properties所保存的路径。

1、我存放的propeities文件路径

  因为linux和window上面的分盘是不一样的,所以我把保存文件路径的properties文件放在项目中,所以可以通过获取tomcat所以路径来获取该文件

2、properties文件内容

这里文件路径我使用了 / ,可以兼容linux系统和window,假如在程序中文件的分隔符建议使用File.separator作为分隔符,以兼容不同的操作系统。

filePath=E:/file  

3、获取文件所在的路径

String dir = System.getProperty("user.dir"); //获得tomcat所在的工作路径 
    System.out.println(dir);
    
    //获取到存储了文件存储位置的filedir.properties 文件路径
    String dir2 = dir.substring(0, dir.length()-4) + File.separator +"webapps" + File.separator + "NGBOSSmonitor" +File.separator + "WEB-INF"
           + File.separator + "classes" + File.separator + "META-INF" + File.separator + "config" + File.separator + "filedir.properties";

  dir 获取到的是  :D:\Tocat\tomcat6.0.37\bin

  我获取的dir2 为    D:\Tocat\tomcat6.0.37\webapps\你的项目名\WEB-INF\classes\META-INF\config\filedir.properties 

4、通过properties文件,获取到里面的filePath的值,即获得 E:/file

/**
   * 获取filePath路径【properities文件】中key对应的值,
   * @param filePath properities文件路径【包含properities文件】
   * @param key 要查找的key值
   * @return key对应的value
   */
   public String GetValueByKey(String filePath, String key) {
         Properties pps = new Properties();
         try {
           InputStream in = new BufferedInputStream (new FileInputStream(filePath)); 
           pps.load(in);
           String value = pps.getProperty(key);
           //System.out.println(key + " = " + value);
           in.close();
           return value;
           
         }catch (IOException e) {
           e.printStackTrace();
           return null;
         }
       }


  到达这里,已经完整得获得了filedir.properties 里面得 filePath的值。

5、总结

  开发过程中,使程序解耦合很重要,耦合程度越低,我们开发修改越容易。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Spark网站日志过滤分析实例讲解

    Spark网站日志过滤分析实例讲解

    这篇文章主要介绍了Spark网站日志过滤分析实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-02-02
  • Java自定义协议报文封装 添加Crc32校验的实例

    Java自定义协议报文封装 添加Crc32校验的实例

    下面小编就为大家分享一篇Java自定义协议报文封装 添加Crc32校验的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • JAVA加密算法- 非对称加密算法(DH,RSA)的详细介绍

    JAVA加密算法- 非对称加密算法(DH,RSA)的详细介绍

    这篇文章主要介绍了JAVA加密算法- 非对称加密算法(DH,RSA),详细介绍了DH,RSA的用法和示例,需要的朋友可以了解一下。
    2016-11-11
  • 解析spring加载bean流程的方法

    解析spring加载bean流程的方法

    这篇文章主要介绍了解析spring加载bean流程的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • JavaSwing坦克大战游戏的设计和实现

    JavaSwing坦克大战游戏的设计和实现

    JavaSwing坦克大战游戏的设计要有图形用户界面,界面能够反映游戏所有的细节,在最终呈现的游戏中也要满足所有需求,感兴趣的小伙伴一起来看看吧
    2021-08-08
  • Spring配置数据源流程与作用详解

    Spring配置数据源流程与作用详解

    这篇文章主要介绍了使用SpringBoot配置多数据源的经验分享,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • Java实现简单的五子棋游戏示例代码

    Java实现简单的五子棋游戏示例代码

    这篇文章主要为大家介绍了如何利用Java语言实现简单的五子棋游戏,文中的示例代码讲解详细,对我们学习Java游戏开发有一定帮助,需要的可以参考一下
    2022-05-05
  • Spring中的策略模式简单实现与使用分析

    Spring中的策略模式简单实现与使用分析

    这篇文章主要介绍了Spring中的策略模式简单实现与使用分析,去初始化时除了 initMultipartResolver(上传文件)没有获取 Properties defaultStrategies;默认策略,其他的八大件都会使用到策略模式,需要的朋友可以参考下
    2024-01-01
  • Spring Security使用权限注解实现精确控制

    Spring Security使用权限注解实现精确控制

    在现代的应用系统中,权限管理是确保系统安全性的重要环节,Spring Security作为Java世界最为普及的安全框架,提供了强大而灵活的权限控制功能,这篇文章将深入探讨Spring Security使用权限注解实现精确控制,需要的朋友可以参考下
    2024-12-12
  • Spring中的循环依赖详解

    Spring中的循环依赖详解

    这篇文章主要介绍了Spring中的循环依赖详解,  Spring 框架是一个流行的Java应用程序框架,它提供了许多强大的功能,如依赖注入和面向切面编程,然而在使用 Spring 框架时,我们可能会遇到循环依赖的问题,需要的朋友可以参考下
    2023-09-09

最新评论