首先是Spring的配置文件
applicationContext.xml
<!-- 打开注解 --> <context:annotation-config/> <!-- 扫描包,一定要扫描到相应的VO类 --> <context:component-scan base-package="com.ssh.*" /> <!-- 加载properties文件,用于往javabean中注入 --> <bean name="myproperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean"> <property name="locations"> <list> <value>classpath:META-INF/app_config/properties/sysconfig.properties</value> <value>classpath:META-INF/app_config/properties/sysconfig-debug.properties</value> </list> </property> </bean> <!-- 加载properties文件,用于替换Spring 配置文件中的占位符变量(${varible}) --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="properties" ref="myproperties"></property> <property name="locations"> <list> <value>classpath:META-INF/app_config/properties/global.framwork.properties</value> </list> </property> </bean>
SysConfigVo
package com.ssh.service; import org.springframework.stereotype.Component; import org.springframework.bean.factory.annotation.Value; @Component public class SysConfig { //myProperties必须和applicationContext.xml中的PropertiesFactoryBean的name一样 @Value("#{myProperties}['gloable.model']") private String gloable_model; public String getGloable_model() { return gloable_model; } public void setGloable_model(String gloable_model) { this.gloable_model = gloable_model; } }
在service中使用该VO
package com.ssh.service; import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.ssh.dao.UserDao; import com.ssh.entity.User; @Service public class UserService { @Resource private SysConfig sysConfig; logger.info(sysConfig.getGloable_model()); }
相关推荐
在Spring Boot中,属性注入是核心特性之一,它使得我们可以方便地将配置文件中的参数值注入到Bean类的属性中,从而实现灵活的配置管理。本文将详细讲解如何利用`@ConfigurationProperties`注解以及与`@...
然而,在某些情况下,我们可能需要在非Spring注解的类中访问Spring容器中的Bean,或者在这些类中使用YAML配置文件中的配置信息。本篇将详细介绍如何在这样的场景下实现这一目标。 首先,让我们来理解如何在非Spring...
本篇文章将深入探讨如何通过注解将配置资源注入到Bean中,以此来理解Spring的注解驱动开发。 1. **注解的基本概念** 注解是Java提供的一种元数据机制,它允许我们在代码中嵌入额外的信息,这些信息可以被编译器或...
在这里,我们可以声明bean的类、属性、初始化方法、依赖注入等。 2. **applicationContext.xml**:此文件通常用于定义整个应用上下文,包含所有bean的定义,是Spring应用的主配置文件。 3. **web.xml**:虽然不是...
9. `applicationContext.xml`: 这是Spring容器的主配置文件,用于定义Bean的实例化、依赖注入、bean之间的关系等。它是Spring应用上下文的基础,包含了所有业务对象和服务的配置。 通过这些配置文件的组合,我们...
2. **Environment接口**:在需要获取配置信息的bean中注入`Environment`接口,然后通过`getProperty`方法获取值: ```java @Component public class SocketService { private final Environment env; ...
在Spring框架中,配置文件是核心组成部分,它们用于定义bean的定义、依赖关系以及各种配置信息。本篇文章将深入探讨Spring配置文件中的归类,主要包括IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented ...
在Spring中,bean的配置通常保存在XML文件中,如`beans.xml`,这些配置包含了bean的定义、依赖关系以及初始化参数等。通过在Java类上添加xDoclet特定的注解,我们可以指示xDoclet生成这些配置信息。例如,使用`@...
这两个类都是Spring用于创建应用上下文的实现,主要用来加载XML配置文件并初始化Spring容器。 1. `ClassPathXmlApplicationContext`:此上下文主要用于加载类路径(classpath)下的XML配置文件。这意味着配置文件应...
Spring支持多种配置方式,包括XML、Java配置类(@Configuration)、注解(@Component、@Service等)以及通过@ConfigurationProperties处理YAML或Properties文件。在实验小例子中,我们可能看到这几种配置方式的组合...
在上面的例子中,`currentTime`字段将被当前的日期时间初始化,而`doSomething`方法的`configProp`参数将从应用的属性配置文件中获取值。 SpEL表达式的语法非常丰富,支持算术运算、比较操作、逻辑运算、数组和集合...
`PropertyPlaceholderConfigurer`是Spring早期版本中处理属性文件的工具,而`@PropertySource`则是从Spring 3.1引入的新特性,它们都可以用来从外部属性文件中读取值并注入到bean中。 1. `...
在Spring框架中,Bean的管理是其核心特性之一,它涉及到Bean的创建、初始化、装配以及销毁等整个生命周期过程。本课件主要涵盖了以下几个关键知识点: 1. **控制反转(IoC)和依赖注入(DI)**:Spring的核心设计...
这篇备忘录将深入探讨 `applicationContext.xml` 文件在 Spring 3.1 中的角色、结构和常见配置元素。我们将讨论如何通过 XML 配置来管理 Bean、属性注入、AOP(面向切面编程)、事务管理和资源加载。 首先,`...
当容器初始化Bean时,会遍历所有Bean,寻找实现了`BeanPostProcessor`接口的类,调用其`postProcessBeforeInitialization`和`postProcessAfterInitialization`方法,从而实现注解注入。 最后,Spring提供了多种工具...
在Java开发中,我们可能会遇到“消息队列监听器无法注入bean的问题”,这个问题通常涉及到Spring框架和消息队列的集成,如RabbitMQ或ActiveMQ等。本文将围绕这个主题,结合提供的文件,分析问题并提供解决方案。 ...
这使得开发人员能够在一个文件中定义和配置多个Bean,从而简化了应用程序的配置过程。 #### `<bean>` 元素 `<bean>`元素用于告诉Spring容器一个类及其配置方式。它包含了以下关键属性: - **class属性**:表示...
例如,如果你在配置文件中指定了数据库连接信息,Spring Boot会在启动时创建一个配置好的DataSource Bean,并将其注入到需要数据库连接的服务中。 总的来说,Spring Boot的properties配置文件读取过程是一个多层次...
Spring的`@Value`注解可以直接注入配置文件中的属性值。例如: ```java @Value("${property.name}") private String propertyName; ``` 4. **@ConfigurationProperties** 对于复杂的配置,可以使用`@...
7. **XML配置中的bean定义**:尽管大部分配置可以通过注解完成,但在某些情况下,我们仍需在XML文件中声明bean,例如,当需要自定义初始化方法、配置特定的bean属性,或者处理非Java组件(如数据库连接池)时。...