我需要去配置一个.properties 结尾的 或者其他的文件,在tomcat 运行的时候直接读取,这样就不用自己单独拼了,而且位置随意,只需要改变 tomcat 配置就行。
如下图所示,红框部分是我配置的, -Dglobal.config.path=/etc/tomcat/tomcat.d (=左边是固定的,右边是自己想放置的路径)
String path = System.getProperty("global.config.path"); 就能获取到 对应的路径
然后读取,其实还有更简单的方法。因为properties 本身就继承了hashtable 可以强转,我这是测试,所以随便写了
注意要自己读写文件的话 对象必须是new 要不然会空指针。因为定义为null时并不会在jvm中开辟内存。new 指向的一个具体的对象,对象需要空间存放的。在对象引用的时候,会将对象的内存地址传给引用的对象,以进行存储。
测试
附上一些system 获取配置的选项
java.version:java运行时版本
java.vendor:java运行时环境供应商
java.vendor.url:java供应商url
java.home;java安装目录
java.vm.specification.version:java虚拟机规范版本
java.vm.specification.vendor:java虚拟机规范供应商
java.vm.specification.name:java虚拟机规范名称
java.vm.version:java虚拟机实现版本
java.vm.vendor:java虚拟机实现供应商
java.vm.name:java虚拟机实现名称
java.specification.version:java运行时环境规范版本
java.specification.vendor:java运行时环境规范运营商
java.specification.name:java运行时环境规范名称
java.class.version:java类格式版本
java.class.path:java类路径
java.library.path:加载库是搜索的路径列表
java.io.tmpdir:默认的临时文件路径
java.compiler:要使用的JIT编译器的路径
java.ext.dirs:一个或者多个扩展目录的路径
os.name:操作系统的名称
os.arch:操作系统的架构
os.version:操作系统的版本
file.separator:文件分隔符(在unix系统中是“/”)
path.separator:路径分隔符(在unix系统中是“:”)
line.separator:行分隔符(在unix系统中是“/n”)
user.name:用户的账户名称
user.home:用户的主目录
user.dir:用户的当前工作目录