读取web外的配置文件

一般web项目配置文件都放在classPath下面,读取的时候:

1  import java.io.InputStream;
 2 import java.util.Properties;
 3    public class DealConnection {
 4           private static String url = "";
 5           private static String user = "";
 6           private static String pwd = "";
 7           private static String connStr="";
 8  //构造方法
 9       public DealConnection() {
10           InputStream istr = DealConnection.class.getClassLoader().getResourceAsStream("/parse.properties");//获取classPath下面的配置文件
11           Properties p=new Properties();
12             p.load(istr);
13             istr.close();
14            //获取各个配置的值
15             url=p.getProperty("url").trim();
16             user=p.getProperty("user").trim();
17             pwd=p.getProperty("pwd").trim();
18             connStr=p.getProperty("connStr");
19    }
20 //数据库连接方法
21     public Connection openConn(){
22         Connection conn=null;
23         try {
24             Class.forName(connStr).newInstance();
25             conn = DriverManager.getConnection(url, user, pwd);
26         } catch (Exception e) {
27             e.printStackTrace();
28         }
29         return conn;
30     }
31 }

现在如果想把配置文件放到外面,让别人也可以方便修改配置文件,假设:配置文件放到tomcat/bin/conf文件下,就修改读取文件那里

public DealConnection() {
        String name=System.getProperty("user.dir");//得到的路径在tomcat/bin路径
        InputStream istr;
        try {
        istr = new FileInputStream(name + "/conf/parse.properties");//读取就是tomcat/bin/conf下的配置文件
        Properties p=new Properties();
            p.load(istr);
            istr.close();
            url=p.getProperty("url").trim();
            user=p.getProperty("user").trim();
            pwd=p.getProperty("pwd").trim();
            connStr=p.getProperty("connStr");
        } catch (Exception e) {
            e.printStackTrace();
        }

applicationContext.xml,在读取classPath配置文件的时候,路径classpath:jdbc.properties

<!-- 属性文件的位置 -->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <value>classpath:jdbc.properties</value>
        </property>
    </bean>

如果要读取tomcat/bin/conf下的配置文件,路径改成:file:conf/jdbc.properties,它是相对于web容器的

<!-- 属性文件的位置 -->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <value>file:conf/jdbc.properties</value>
        </property>
    </bean>
时间: 2024-10-14 08:56:06

读取web外的配置文件的相关文章

jar包中的类如何读取包内和包外的配置文件

最近将代码打包成jar包,关于如何处理读取配置文件的问题特此记录一下. 目录结构如下 out.properties a.jar -com -a.class -in.properties 如上所示,out.properties是于a.jar包在同一文件目录下: in.properties是在a.jar包内部的. 关于a.class如何读取jar内或jar外的配置文件, 如下所示: Java代码 FileInputStream inputStream1 = new FileInputStream("

跟我一起学extjs5(27--服务端web,spring,hibernate配置文件的加入)

跟我一起学extjs5(27--服务端web,spring,hibernate配置文件的加入) 我们前面创建项目的时候是一个java web project,现在在项目中需要加入spring,hibernate,sqlserver连接的jar包以及加入配置文件.spring我现在使用的是3.1版本,hibernate使用的是3.0,具体的jar包以及一些附加包,请自行下载后加到工程中.(所有的jar包在我的前一个博客中提供的演示软件中有) 一.在java Resources的src中加入一些pa

MVC.Net:读取Web.config/App.config配置

需要读取Web.config/App.config的配置很简单,首先我们需要将配置写入到<appSettings>中,例如: <appSettings> <add key="thumbSize_weight" value="300"/> <add key="thumbSize_height" value="300"/> </appSettings> 读取配置语句(需要

XStream互转String和XML,以及如何读取web的下的文件

在项目开发中有时要传输xm文件,要转换成字符串传输,而无法使用对象传输,所以要进行转换,所用进行总结下利用XStream进行string与XML对象之间的互转,以及在转换某一包下所有的类. XML文件的解析和创建,请参考:http://blog.csdn.net/oyyz111/article/details/22730983 首先,利用Spring的PathMatchingResourcePatternResolver进行某包下的class文件的读取,其中用ant的匹配模式,例如congfig

ServletContext读取Web应用中的资源文件

1 package cn.itcast; 2 3 import java.io.FileInputStream; 4 import java.io.IOException; 5 import java.io.InputStream; 6 import java.io.PrintWriter; 7 import java.util.Properties; 8 9 import javax.servlet.ServletContext; 10 import javax.servlet.Servlet

小谈——读取web资源文件的方式和路径问题

读取web资源文件的方式 a): 采用servletContext对象获得. 优点: 任意文件,任意路径都可获得 缺点: 必须在web环境下 // 拿到全局对象 ServletContext sc = this.getServletContext(); // 获取p1.properties文件的路径 String path = sc.getRealPath("/WEB-INF/classes/p1.properties"); b): 采用resourceBundle获得 优点: 非we

读取web应用下的资源文件(例如properties)

1 package gz.itcast.b_resource; 2 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.util.Properties; 6 7 import javax.servlet.ServletException; 8 import javax.servlet.http.HttpServlet; 9 import javax.servlet.http.HttpServletRe

C#之读取web上的xml

一.使用LINQ读取使用Xdocument上的Load方法,可以快速的加载一个XML文档,然后使用LINQ对 加载XML文档进行查询或其他操作,这里仅简单偏历.所以,一旦查询一组元素有返回元素集,就可以使用一个简单的foreach循环访问每一个元素.核心代码如下: /// <summary> /// 使用LINQ读取web上的xml /// </summary> public static void UseLINQ() { string sURL = "http://lo

spring-boot读取props和yml配置文件

最近微框架spring-boot很火,笔者也跟风学习了一下,废话不多说,现给出一个读取配置文件的例子. 首先,需要在pom文件中依赖以下jar包 Java代码 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>