在现实工作中,我们常常需要保存一些系统配置信息,大家一般都会选择配置文件来完成,本文根据笔者工作中用到的读取配置文件的方法小小总结一下,主要叙述的是spring读取配置文件的方法。
一、读取xml配置文件
(一)新建一个java bean
package chb.demo.vo;
public class HelloBean {
private String helloWorld;
public String getHelloWorld() {
return helloWorld;
}
public void setHelloWorld(String helloWorld) {
this.helloWorld = helloWorld;
}
}
(二)构造一个配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" >
<beans>
<bean id="helloBean" class="chb.demo.vo.HelloBean">
<property name="helloWorld">
<value>Hello!chb!</value>
</property>
</bean>
</beans>
(三)读取xml文件
1.利用ClassPathXmlApplicationContext
ApplicationContext context = new ClassPathXmlApplicationContext("beanConfig.xml");
//这种用法不够灵活,不建议使用。
HelloBean helloBean = (HelloBean)context.getBean("helloBean");
System.out.println(helloBean.getHelloWorld());
2.利用FileSystemResource读取
Resource rs = new FileSystemResource("D:/software/tomcat/webapps/springWebDemo/WEB-INF/classes/beanConfig.xml");
BeanFactory factory = new XmlBeanFactory(rs);
HelloBean helloBean = (HelloBean)factory.getBean("helloBean");
System.out.println(helloBean.getHelloWorld());
值得注意的是:利用FileSystemResource,则配置文件必须放在project直接目录下,或者写明绝对路径,否则就会抛出找不到文件的异常。
二、读取properties配置文件
这里介绍两种技术:利用spring读取properties 文件和利用java.util.Properties读取
(一)利用spring读取properties 文件
我们还利用上面的HelloBean.java文件,构造如下beanConfig.properties文件:
helloBean.class=chb.demo.vo.HelloBean
helloBean.helloWorld=Hello!chb!
属性文件中的"helloBean"名称即是Bean的别名设定,.class用于指定类来源。
然后利用org.springframework.beans.factory.support.PropertiesBeanDefinitionReader来读取属性文件
BeanDefinitionRegistry reg = new DefaultListableBeanFactory();
PropertiesBeanDefinitionReader reader = new PropertiesBeanDefinitionReader(reg);
reader.loadBeanDefinitions(new ClassPathResource("beanConfig.properties"));
BeanFactory factory = (BeanFactory)reg;
HelloBean helloBean = (HelloBean)factory.getBean("helloBean");
System.out.println(helloBean.getHelloWorld());
(二)利用java.util.Properties读取属性文件
比如,我们构造一个ipConfig.properties来保存服务器ip地址和端口,如:
ip=192.168.0.1
port=8080
则,我们可以用如下程序来获得服务器配置信息:
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ipConfig.properties");
Properties p = new Properties();
try {
p.load(inputStream);
} catch (IOException e1) {
e1.printStackTrace();
}
System.out.println("ip:"+p.getProperty("ip")+",port:"+p.getProperty("port"));
三 用接口类WebApplicationContext来取。
private WebApplicationContext wac;
wac =WebApplicationContextUtils.getRequiredWebApplicationContext(
this.getServletContext());
JdbcTemplate jdbcTemplate = (JdbcTemplate)wac.getBean("jdbcTemplate");
其中,jdbcTemplate为spring配置文件中的一个bean的id值。
这种用法比较灵活,spring配置文件在web中配置启动后,该类会自动去找对应的bean,而不用再去指定配置文件的具体位置。
分享到:
相关推荐
总结来说,Spring配置文件加密实现涉及到以下几个关键步骤: 1. 选择并实现加密算法(如AES)。 2. 使用TE网络技术创建透明加密的文件系统。 3. 自定义或调整Spring的启动流程,使其能够通过加密层读取配置文件。 4...
在Java中,我们可以使用多种方法来读取配置文件,下面将详细介绍几种常见的方法。 1. **使用`java.io`流读取** 最基础的方式是使用Java的I/O流来读取文本配置文件(通常是.properties格式)。例如,`java.io....
通过以上两种方式,开发者可以在Spring Boot项目中灵活地管理和读取配置文件,以适应不同场景的需求。无论是核心配置文件还是自定义配置文件,Spring Boot提供的强大配置支持都能让应用的配置管理变得简单而高效。
下面将详细介绍几种在Java中读取`.properties`配置文件的方法。 1. 使用`java.util.Properties`类 `Properties`类是Java提供的一种内置机制,用于处理属性列表。它继承了`Hashtable`类,提供了加载和保存属性列表...
这种方式允许开发者在主配置文件中引用其他辅助配置文件,进一步增强了配置文件的模块化。 例如,在一个名为 `rootConfig.xml` 的主配置文件中,可以这样导入其他配置文件: ```xml <!-- 其他 Bean 定义.....
首先,Spring配置文件通常以XML格式存在,例如`bean_config.xml`。这些文件定义了Bean的结构和它们之间的依赖关系。一个简单的配置文件示例如下: ```xml <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" ...
在Spring Boot应用中读取本地JSON文件,通常有以下几种方法: 1. **使用Java I/O流**:这是最基础的方法,通过`java.io`包中的`FileReader`和`BufferedReader`类,可以打开并读取JSON文件内容。例如: ```java ...
接下来,我们将介绍SpringBoot读取YML配置的三种方式: **第一种方式:@Value注解** 当只需获取配置文件中的个别值时,使用`@Value`是最直接的方法。例如: ```java @Configuration public class AppConfig { @...
然而,如果确实有需求,可以通过以下几种方式引入XML配置: 1. **启用XML配置** 在Spring Boot项目中,我们可以通过添加`@ImportResource`注解到主配置类(即带有@SpringBootApplication注解的类)上来导入XML配置...
这允许我们在不重启应用的情况下,通过修改外部的配置文件来调整日志级别和输出方式。 总的来说,理解和配置好Spring中的Log4j对于开发和维护Spring应用至关重要。通过合理配置`log4j.properties`文件,开发者可以...
问题 自己开发一个工具类,为第三方应用提供调用接口,但是打包后测试过程...从配置上,完全没有写错的可能,见上方的配置,所以只能从不能获取配置文件内容的几种可能着手了! 变量被static关键字所修饰 我们所需要获
本文将深入探讨在SSM框架下加载properties配置文件的几种常见方法。 1. **使用Spring的PropertyPlaceholderConfigurer** Spring提供了`PropertyPlaceholderConfigurer`类,可以方便地从.properties文件中读取属性...
在Spring框架中,读取配置文件是常见的任务,特别是在配置应用程序的运行时参数时。本文将探讨两种方式来实现这一目标:通过Spring工厂和直接使用Spring程序代码。 首先,我们来看第一种方法,即通过Spring工厂读取...
Spring加载XML配置文件的过程分为几个步骤: 1. **定位配置文件**:根据提供的路径找到XML配置文件。 2. **解析XML文件**:使用DOM或SAX解析器将XML内容转换为内存中的对象结构。 3. **构建BeanDefinition**:从解析...
通过以上一种或多种方式,一般可以解决Spring Boot读取配置文件时的中文乱码问题。在实践中,通常推荐首先检查和修改IDE的编码设置,因为这是最容易出错且影响全局的地方。同时,确保整个开发环境中的一致性,包括...
本篇文章将详细探讨Java中加载配置文件的几种常见方式。 1. **使用Properties类** Java标准库中的`java.util.Properties`类是处理.properties文件的主要工具。我们可以使用`Properties.load()`方法从InputStream中...
1. **依赖注入(Dependency Injection, DI)**:这是Spring框架的核心特性,它允许开发者通过配置文件或注解来管理对象之间的依赖关系,而不是在代码中硬编码这些依赖。这使得代码更易于测试和维护,因为对象的创建和...
这是最常用的方式,通过在Spring的配置文件(如`spring.xml`)中引入`context`命名空间,并使用`context:property-placeholder`标签来指定Properties文件的位置。 ```xml <beans xmlns="http://www.spring...
1. **Spring配置文件**: - `applicationContext.xml`:这是Spring的核心配置文件,用于定义Bean的创建、依赖注入以及服务的声明。在这里,你会看到如数据源、事务管理器、DAO接口和实现类的配置,以及可能的AOP...
这些信息通常存储在`.properties`文件中,并通过占位符`${}`引用到Spring配置文件中。然而,对于敏感信息,如密码、API密钥等,直接明文存储在属性文件中存在安全风险。为了保护这些数据,我们需要采取加密措施。 ...