版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_39531549/article/details/82729368
* 加载资源文件应用:
*
* 我们现在写两个配置文件。一个存放中文信息,另一个存放英文信息
* 使用类,来通过语言环境,最终识别加载哪一个文件的信息:ResourceBundle
*
* 什么是语言环境:Locale
* >zh_CN
* >en_US
* new Locale("zh","CN");
* Locale.getDefault();
* LOcale.US
*
* 资源文件命名的格式:基本名称+Locale部分+.properties
* 例如: res_ch_CN.properties 其中基本名称为res 而ch_CN是部分
* 必须所有的资源文件基本名称要相同,不同之处就是 Locale部分
一、通过配置文件实现中英文
public class Demo {
public static void main(String[] args) {
//创建现场
Locale locale = Locale.CHINA;//Locale.US
//得到ResourceBundle
//第一个参数:基本名称
//第二个参数:Locale
ResourceBundle rb = ResourceBundle.getBundle("res", locale);
//使用ResourceBundle获取资源信息
System.out.println(rb.getString("username"));
System.out.println(rb.getString("password"));
System.out.println(rb.getString("login"));
}
}
二、配置文件 1 - res_en_US.properties 2 - res_zh_CN.properties
文件一、
username=username
password=password
login=login
文件二、
username=\u7528\u6237\u540D
password=\u5BC6\u7801
login=\u767B\u5F55
三、不同访问出现中英文JSP登录页面
<body>
<%
/* 把与语言相关的所有的字符串都变成变量 */
Locale locale = request.getLocale();//获取浏览器提交的语言环境
ResourceBundle rb = ResourceBundle.getBundle("res",locale);
%>
<%= rb.getString("username") %>
<%= rb.getString("password") %>
<%= rb.getString("login") %>
</body>
四、使用类加载器加载配置文件
/*第一种方式读取配置文件*/
try {
// 读取配置文件
Properties pro = new Properties();
// 类加载器
InputStream in = JDBCUtils.class.getClassLoader().getResourceAsStream("dp.properties");
// 加载文件 pro.load(in);
drivername = pro.getProperty("driverName");
url = pro.getProperty("url");
username = pro.getProperty("username");
password = pro.getProperty("password");
}
catch (IOException e)
{ e.printStackTrace(); }
/* 第二种方式读取配置文件 */
drivername = ResourceBundle.getBundle("db").getString("driverName");
url = ResourceBundle.getBundle("db").getString("url");
username = ResourceBundle.getBundle("db").getString("username");
password = ResourceBundle.getBundle("db").getString("password");