zoukankan      html  css  js  c++  java
  • java读取配置文件的几种方法

    一.读取xml配置文件

    (一)新建一个java bean(HelloBean.java)
     1 package XX.XXX.XXX;   
     2   
     3 public class HelloBean {   
     4  private String helloWorld;   
     5   
     6  public String getHelloWorld() {   
     7   return helloWorld;   
     8  }   
     9   
    10  public void setHelloWorld(String helloWorld) {   
    11   this.helloWorld = helloWorld;   
    12  }   
    13 }

    (二)构造一个配置文件(beanConfig.xml)

    1 <!---->xml version="1.0" encoding="UTF-8"?>  
    2 <!---->>  
    3 <beans>  
    4  <bean id="helloBean" class="chb.demo.vo.HelloBean">  
    5   <property name="helloWorld">  
    6    <value>Hello!chb!value>  
    7   property>  
    8  bean>  
    9 beans>

    (三)读取xml文件

    1.利用ClassPathXmlApplicationContext

    1 ApplicationContext context = new ClassPathXmlApplicationContext("beanConfig.xml");   
    2 HelloBean helloBean = (HelloBean)context.getBean("helloBean");   
    3 System.out.println(helloBean.getHelloWorld());

    2.利用FileSystemResource读取

    1 Resource rs = new FileSystemResource("D:/software/tomcat/webapps/springWebDemo/WEB-INF/classes/beanConfig.xml");   
    2   BeanFactory factory = new XmlBeanFactory(rs);   
    3   HelloBean helloBean = (HelloBean)factory.getBean("helloBean");   
    4   System.out.println(helloBean.getHelloWorld());

    值得注意的是:利用FileSystemResource,则配置文件必须放在project直接目录下,或者写明绝对路径,否则就会抛出找不到文件的异常

    二.读取properties配置文件

    这里介绍两种技术:利用spring读取properties 文件和利用java.util.Properties读取
    (一)利用spring读取properties 文件
    我们还利用上面的HelloBean.java文件,构造如下beanConfig.properties文件:
    1 helloBean.class=chb.demo.vo.HelloBean   
    2 helloBean.helloWorld=Hello!chb!  
    
    
    属性文件中的"helloBean"名称即是Bean的别名设定,.class用于指定类来源。
    然后利用org.springframework.beans.factory.support.PropertiesBeanDefinitionReader来读取属性文件
    1 BeanDefinitionRegistry reg = new DefaultListableBeanFactory();   
    2  PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(reg);   
    3  reader.loadBeanDefinitions(new ClassPathResource("beanConfig.properties"));   
    4  BeanFactory factory = (BeanFactory)reg;   
    5  HelloBean helloBean = (HelloBean)factory.getBean("helloBean");   
    6  System.out.println(helloBean.getHelloWorld());
    
    
    (二)利用java.util.Properties读取属性文件
    比如,我们构造一个ipConfig.properties来保存服务器ip地址和端口,如:
    1 ip=192.168.0.1   
    2 port=8080
    
    
    则,我们可以用如下程序来获得服务器配置信息:
    1 InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ipConfig.properties");   
    2   Properties p = new Properties();   
    3   try {   
    4    p.load(inputStream);   
    5   } catch (IOException e1) {   
    6    e1.printStackTrace();   
    7   }   
    8 System.out.println("ip:"+p.getProperty("ip")+",port:"+p.getProperty("port"));
    
    
  • 相关阅读:
    November 07th, 2017 Week 45th Tuesday
    November 06th, 2017 Week 45th Monday
    November 05th, 2017 Week 45th Sunday
    November 04th, 2017 Week 44th Saturday
    November 03rd, 2017 Week 44th Friday
    Asp.net core 学习笔记 ( Area and Feature folder structure 文件结构 )
    图片方向 image orientation Exif
    Asp.net core 学习笔记 ( Router 路由 )
    Asp.net core 学习笔记 ( Configuration 配置 )
    qrcode render 二维码扫描读取
  • 原文地址:https://www.cnblogs.com/javaleon/p/4018067.html
Copyright © 2011-2022 走看看