`
wb284551926
  • 浏览: 540029 次
文章分类
社区版块
存档分类
最新评论

java读取WEB-INF下properties配置文件

阅读更多

Properties p = new Properties();
          try{
        String path = this.class.getClass().getResource("/").getPath();//得到工程名WEB-INF/classes/路径
        path=path.substring(1, path.indexOf("classes"));//从路径字符串中取出工程路径
            p.load(new FileInputStream(path+"jdbc.properties"));
        }catch(Exception e){
            e.printStackTrace();
        }

01.package apistudy; 
02. 
03.import java.io.File; 
04.import java.io.FileInputStream; 
05.import java.io.FileOutputStream; 
06.import java.io.IOException; 
07.import java.io.InputStream; 
08.import java.io.OutputStream; 
09.import java.io.UnsupportedEncodingException; 
10.import java.util.Properties; 
11. 
12.public class PropertiesTest 
13.{ 
14. 
15.    public static void main(String[] args) 
16.    { 
17. 
18.        String readfile = "d:" + File.separator + "readfile.properties"; 
19.        String writefile = "d:" + File.separator + "writefile.properties"; 
20.        String readxmlfile = "d:" + File.separator + "readxmlfile.xml"; 
21.        String writexmlfile = "d:" + File.separator + "writexmlfile.xml"; 
22.        String readtxtfile = "d:" + File.separator + "readtxtfile.txt"; 
23.        String writetxtfile = "d:" + File.separator + "writetxtfile.txt"; 
24. 
25.        readPropertiesFile(readfile); //读取properties文件 
26.        writePropertiesFile(writefile); //写properties文件 
27.        readPropertiesFileFromXML(readxmlfile); //读取XML文件 
28.        writePropertiesFileToXML(writexmlfile); //写XML文件 
29.        readPropertiesFile(readtxtfile); //读取txt文件 
30.        writePropertiesFile(writetxtfile); //写txt文件 
31.    } 
32. 
33.    //读取资源文件,并处理中文乱码 
34.    public static void readPropertiesFile(String filename) 
35.    { 
36.        Properties properties = new Properties(); 
37.        try 
38.        { 
39.            InputStream inputStream = new FileInputStream(filename); 
40.            properties.load(inputStream); 
41.            inputStream.close(); //关闭流 
42.        } 
43.        catch (IOException e) 
44.        { 
45.            e.printStackTrace(); 
46.        } 
47.        String username = properties.getProperty("username"); 
48.        String passsword = properties.getProperty("password"); 
49.        String chinese = properties.getProperty("chinese"); 
50.        try 
51.        { 
52.            chinese = new String(chinese.getBytes("ISO-8859-1"), "GBK"); // 处理中文乱码 
53.        } 
54.        catch (UnsupportedEncodingException e) 
55.        { 
56.            e.printStackTrace(); 
57.        } 
58.        System.out.println(username); 
59.        System.out.println(passsword); 
60.        System.out.println(chinese); 
61.    } 
62. 
63.    //读取XML文件,并处理中文乱码 
64.    public static void readPropertiesFileFromXML(String filename) 
65.    { 
66.        Properties properties = new Properties(); 
67.        try 
68.        { 
69.            InputStream inputStream = new FileInputStream(filename); 
70.            properties.loadFromXML(inputStream); 
71.            inputStream.close(); 
72.        } 
73.        catch (IOException e) 
74.        { 
75.            e.printStackTrace(); 
76.        } 
77.        String username = properties.getProperty("username"); 
78.        String passsword = properties.getProperty("password"); 
79.        String chinese = properties.getProperty("chinese"); //XML中的中文不用处理乱码,正常显示 
80.        System.out.println(username); 
81.        System.out.println(passsword); 
82.        System.out.println(chinese); 
83.    } 
84. 
85.    //写资源文件,含中文 
86.    public static void writePropertiesFile(String filename) 
87.    { 
88.        Properties properties = new Properties(); 
89.        try 
90.        { 
91.            OutputStream outputStream = new FileOutputStream(filename); 
92.            properties.setProperty("username", "myname"); 
93.            properties.setProperty("password", "mypassword"); 
94.            properties.setProperty("chinese", "中文"); 
95.            properties.store(outputStream, "author: shixing_11@sina.com"); 
96.            outputStream.close(); 
97.        } 
98.        catch (IOException e) 
99.        { 
100.            e.printStackTrace(); 
101.        } 
102.    } 
103. 
104.    //写资源文件到XML文件,含中文   
105.    public static void writePropertiesFileToXML(String filename) 
106.    { 
107.        Properties properties = new Properties(); 
108.        try 
109.        { 
110.            OutputStream outputStream = new FileOutputStream(filename); 
111.            properties.setProperty("username", "myname"); 
112.            properties.setProperty("password", "mypassword"); 
113.            properties.setProperty("chinese", "中文"); 
114.            properties.storeToXML(outputStream, "author: shixing_11@sina.com"); 
115.            outputStream.close(); 
116.        } 
117.        catch (IOException e) 
118.        { 
119.            e.printStackTrace(); 
120.        } 
121.    } 
122. 
123.} 

 

 

分享到:
评论
1 楼 liuyuanhui0301 2013-07-11  
     

相关推荐

    java 读取WEB-INF下文件夹中的properties文件

    非常实用的读取配置文件的小工具,专门读取WEB-INF下文件夹中的properties文件,代码简洁、亲测没有问题,适用范围广,任何类中都可调用,传入Key及可得到Value

    java读取WEB-INF或src目录下的properties配置文件

    大家都喜欢把配置文件放在src目录下,如果有10个以上的配置文件为什么不考虑在WEB-INF目录下新建一个文件夹,专门放配置文件;这样即好管理,文件安全性又高。亲问题已经解决,把源代码共享给大家,已经通过测试;...

    Spring MVC 入门实例

    上面, 我们在 web.xml 文件中告诉 ContextLoaderListener, 我们还有另外两个配置文件 /WEB-INF/database.xml 和 /WEB-INF/applicationContext.xml. applicationContext.xml: 1 ...

    将 Flex 集成到 Java EE 应用程序的最佳实践(完整源代码)

    BlazeDS 所需的所有配置文件均放在 /WEB-INF/flex/ 目录下。BlazeDS 将读取 services-config.xml 配置文件,该配置文件又引用了 remoting-config.xml、proxy-config.xml 和 messaging-config.xml 这 3 个配置文件,...

    cdi-properties:用于从类路径上的属性文件读取属性的 CDI 项目

    示例用法通过将这个项目的产品(一个常规的*.jar文件)添加到您的WEB-INF/lib目录中,您可以使用以下语法将属性文件条目注入您的 Java 代码: public MyClass { @Inject @Property("keyValue") Double myDoubleProp;...

    +Flex+集成到+Java+EE+应用程序的最佳实践(完整源代码)

    BlazeDS 所需的所有配置文件均放在 /WEB-INF/flex/ 目录下。BlazeDS 将读取 services-config.xml 配置文件,该配置文件又引用了 remoting-config.xml、proxy-config.xml 和 messaging-config.xml 这 3 个配置文件,...

    J2Cache两级缓存框架-其他

    实际使用过程需要将所需的配置文件复制到应用类路径中,如WEB-INF/classes目录。 J2Cache运行时所需jar包请查看core/pom.xml 测试方法: 1、安装Redis 2、git clone https://gitee.com/ld/J2Cache 3、修改core/...

    ssh(structs,spring,hibernate)框架中的上传下载

    WEB-INF下的applicationContext.xml为Spring的配置文件,struts-config.xml为Struts的配置文件,file-upload.jsp为文件上传页面,file-list.jsp为文件列表页面。  本文后面的章节将从数据持久层->业务层->Web层的...

    springmybatis

    下面对这几个配置文件解释下: 1.Configuration.xml 是 mybatis 用来建立 sessionFactory 用的,里面主要包含了数据库连接相关东西,还有 java 类所对应的别名,比如 ...

    java 面试题 总结

    但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地...

    超级有影响力霸气的Java面试题大全文档

    但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地...

    Spring-Reference_zh_CN(Spring中文参考手册)

    初始化web配置 3.4.3.2. Request作用域 3.4.3.3. Session作用域 3.4.3.4. global session作用域 3.4.3.5. 作用域bean与依赖 3.4.4. 自定义作用域 3.5. 定制bean特性 3.5.1. Lifecycle接口 3.5.1.1. 初始化回调 3.5....

    Spring中文帮助文档

    13. Web MVC framework Web框架 13.1. 概述 13.1.1. 与其他MVC实现框架的集成 13.1.2. Spring Web MVC框架的特点 13.2. DispatcherServlet 13.3. 控制器 13.3.1. AbstractController 和 WebContentGenerator ...

    Spring API

    13. Web MVC framework Web框架 13.1. 概述 13.1.1. 与其他MVC实现框架的集成 13.1.2. Spring Web MVC框架的特点 13.2. DispatcherServlet 13.3. 控制器 13.3.1. AbstractController 和 WebContentGenerator ...

    spring chm文档

    2.4.1. 在XML里更为简单的声明性事务配置 2.4.2. JPA 2.4.3. 异步的JMS 2.4.4. JDBC 2.5. Web层 2.5.1. Spring MVC的表单标签库 2.5.2. Spring MVC合理的默认值 2.5.3. Portlet 框架 2.6. 其他特性 2.6.1. ...

    Spring 2.0 开发参考手册

    2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的支持 2.4. 中间层 2.4.1. 在XML里更为简单的声明性...

    Activiti6.0教程例子下载

    这里需要说明的就是,这个Demo默认采用的是h2内存数据库,如果想用你自己的数据库,就需要修改web应用WEB-INF/classes目录下的db.properties。然后,按上面说的,把database里的create文件夹里的数据库文件导入你...

Global site tag (gtag.js) - Google Analytics