JAVA - 普通类读取WEB-INF里面配置文件
服务器:Tomcat 9
注意问题:配置文件应该放入Tomcat的正式工程目录中测试。
可用代码:
package com.daoen.rtis.test; import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.util.Properties; public class Test { public void GetPro() { try { String fileName = "db.txt";// property文件名
String filePath = getWebPath(fileName);// 得到property文件在web工程里的全路径名称 System.out.println(filePath); Reader myReader = new FileReader(fileName);// 读取property文件 Properties prop = new Properties();// 创建Properties类
prop.load(myReader);// 用Properties类对象加载文件 System.out.println(prop.getProperty("ip"));
System.out.println(prop.getProperty("port"));
System.out.println(prop.getProperty("user"));
System.out.println(prop.getProperty("password")); myReader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} // 得到web容器路径
// 注意:要在正式发布的web工程里面加入文件,不能在源代码工程里测试。
public static String getWebPath(String fileName) {
// file:/D:/JavaWeb/.metadata/.me_tcat/webapps/TestBeanUtils/WEB-INF/classes/
String path = Thread.currentThread().getContextClassLoader().getResource("").toString(); // 去掉返回路径中各种不需要的东西
path = path.replace('/', '\\'); // 将/换成\
path = path.replace("file:", ""); // 去掉file:
// path = path.replace("classes\\", ""); // 去掉class\
path = path.substring(1); // 去掉第一个\,如 \D:\JavaWeb... // 如果有文件名,则在路径上加入文件名
if (fileName.isEmpty() == false) {
path += fileName;
} return path;
} }
参考:
https://blog.csdn.net/shokuninn/article/details/53808629
https://www.cnblogs.com/lingtiaoti/p/9500322.html
JAVA - 普通类读取WEB-INF里面配置文件的更多相关文章
- java properties类读取配置文件
1.JAVA Properties类,在java.util包里,具体类是java.util.properties.Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值 ...
- 读取web外的配置文件
一般web项目配置文件都放在classPath下面,读取的时候: 1 import java.io.InputStream; 2 import java.util.Properties; 3 publ ...
- Java配置方式读取外部的资源配置文件
通过@PropertySource可以指定读取的配置文件,通过@Value注解获取值,具体用法: package cn.qlq; import org.springframework.context. ...
- Java File类读取文件属性
package myjavademo;import java.io.*; publicclass MyJavaDemo { public static void main(String[] ...
- java.util.ResourceBundle 读取国际化资源或配置文件
1.定义三个资源文件,放到src的根目录下面 命名规范是: 自定义名_语言代码_国别代码.properties 默认 : 自定义名.properties 2.资源文件都必须是ISO-8859-1编 ...
- Java 数据类型:集合接口Map:HashTable;HashMap;IdentityHashMap;LinkedHashMap;Properties类读取配置文件;SortedMap接口和TreeMap实现类:【线程安全的ConcurrentHashMap】
Map集合java.util.Map Map用于保存具有映射关系的数据,因此Map集合里保存着两个值,一个是用于保存Map里的key,另外一组值用于保存Map里的value.key和value都可以是 ...
- Java中spring读取配置文件的几种方法
Spring读取配置XML文件分三步: 一.新建一个Java Bean: package springdemo; public class HelloBean { private String hel ...
- Java基础加强-读取配置文件和内省
Java读取配置文件 1.采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来. String path = "/WEB-INF/jdbc_conne ...
- 基于Java Properties类设置本地配置文件
一.Java Properties类介绍 Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件, ...
随机推荐
- arcgis python 获得硬件id
import time import wmi, zlib def get_cpu_info(): tmpdict = {} tmpdict["CpuCores"] = 0 c = ...
- 转载:Base64编解码介绍
https://www.liaoxuefeng.com/wiki/897692888725344/949441536192576 Base64是一种用64个字符来表示任意二进制数据的方法. 用记事本打 ...
- c# 通过json.net中的JsonConverter进行自定义序列化与反序列化
https://www.cnblogs.com/yijiayi/p/10051284.html 相信大家在工作中会经常遇见对json进行序列化与反序列化吧,但通常的序列化与反序列化中的json结构与c ...
- Linux中root用户找不到JAVA_HOME
Linux中root用户找不到JAVA_HOME 在Ubuntu环境中安装好Java环境后设置环境变量:在/etc/profile中设置好了JAVA_HOME变量并引入到PATH中,用于Ubunt ...
- 使用Nginx转发tcp请求
要求nginx版本大于1.9,在nginx.conf添加以下,要求和http{}同级 stream { upstream cakehouse { server weight= max_fails= f ...
- asp.net core mvc 读取appsettings.config中文乱码问题
asp.net core mvc 读取appsettings.config中文乱码问题的解决方法如下: 用记事本打开appsettings.config,另存为的时候,编码设置为 “UTF-8”,
- MSYS2 更新源
博客转载自:https://blog.csdn.net/puputaoexin/article/details/81780492 在使用msys2下载文件的时候回出现下载速度奇慢,且经常因为各种原因报 ...
- (obj) error: LNK2019: 无法解析的外部符号解决方法
利用VS2010 C++ 调用 labview生成的动态库编程时无法生成exe 报错信息: Cjj_32.obj : error LNK2019: 无法解析的外部符号 _GetPXIResource@ ...
- [图片问答]打印html样式有问题
1.加载css样式,参考样例10 http://www.c-lodop.com/demolist/PrintSample10.html2.查看lodop内部解析的html信息,见http://www. ...
- [LeetCode] 482. License Key Formatting 注册码格式化
You are given a license key represented as a string S which consists only alphanumeric character and ...