`

如何从spring配置文件中的参数值初始化map

阅读更多
<bean id="dnsConfig" class="com.configuration.ParameterConfig">
<property name="valueStack">
<map>
<entry key="js">
<value>http://js.imcoal.com</value>
</entry>
<entry key="js100M">
<value>http://218.21.222.164</value>
</entry>
<entry key="js10M">
<value>http://110.19.108.84</value>
</entry>
</map>
</property>
</bean>

ParameterConfig是一个参数配置类

public class ParameterConfig extends AbstractConfig<String> {

}

AbstractConfig类

public abstract class AbstractConfig<V> implements Configuration<String, V>{
	protected final Log logger = LogFactory.getLog(this.getClass());
	
	private Map<String , V> valueStack = Collections.synchronizedMap(new HashMap<String, V>());

	
	public V getValue(String key) {
		return valueStack.get(key);
	}

	public void putValue(String key, V value) {
		valueStack.put(key, value);		
	}
	
	public V getCurType (String curType) {
		return null;
	}
	
	public Map<String, V> getValueStack() {
		return valueStack;
	}

	public void setValueStack(Map<String, V> valueStack) {
		this.valueStack = valueStack;
	}
	
	protected boolean containsKey(String key) {
		return valueStack.containsKey(key);
	}
}

 

Configuration接口

public interface Configuration <K, V>{	
	
	public abstract V getValue(K key);
	
	public abstract void putValue(K key, V value);

	public abstract V getCurType(K key);
}

 

Spring容器启动时自动加载配置文件配置的值,放到map中,

使用

// 请求发起方判断
ApplicationContext context = WebApplicationContextUtils
.getRequiredWebApplicationContext(session.getServletContext());

ParameterConfig dnsConfig = (ParameterConfig) 
context.getBean("dnsConfig");

for (String key : dnsConfig.getValueStack().keySet()) {
    System.out.println("value:" + dnsConfig.getValue(key));
}

 

分享到:
评论

相关推荐

    spring 配置文件 归类

    本篇文章将深入探讨Spring配置文件中的归类,主要包括IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)两个重要概念。 ### 1. IOC (控制反转) IOC是Spring的核心特性,...

    Spring配置文件详解1

    下面我们将深入探讨Spring配置文件中的关键知识点。 首先,我们来看`&lt;context:component-scan&gt;`标签,它用于开启注解扫描。这个标签告诉Spring去寻找特定包下的所有使用了Spring注解(如@Service、@Repository、@...

    Spring配置文件

    本篇文章将深入探讨Spring配置文件的核心概念、结构以及应用场景。 **一、Spring配置文件的基本概念** Spring配置文件通常是XML格式,主要用来描述Bean的定义和它们之间的关系。这些文件通常以`applicationContext...

    SpringMVC一些配置文件的demo

    1. **核心配置文件**:SpringMVC的配置通常在`dispatcher-servlet.xml`中进行,这是SpringMVC的前端控制器DispatcherServlet的初始化参数。这个文件定义了处理器映射器、视图解析器、异常处理器等关键组件。 2. **...

    Spring整合配置文件详解.doc

    #### 二、Spring配置文件详解 **1. 构造注入** 构造注入是Spring框架中一种常见的依赖注入方式,通过构造器来传递依赖。这种方式的优点在于,可以确保类在初始化时就有必要的依赖。例如,在配置文件中可以这样定义...

    【戏说Spring Boot】Spring Boot初始化器解析

    在Spring Boot应用开发中,初始化器扮演着重要的角色,它们负责在应用程序启动时执行特定的配置或设置。本文将深入探讨Spring Boot初始化器的三种定义方式及其执行过程。 首先,让我们来看第一种定义初始化器的方式...

    spring在web.xml中和在struts中的不同配置..pdf

    Struts2的Spring插件会在Struts配置文件(如struts.xml)中定义一个`&lt;package&gt;`,包含`&lt;interceptors&gt;`和`&lt;default-interceptor-ref&gt;`元素,这样Struts2就会知道如何与Spring协作,将Action实例化和依赖注入交给...

    Spring注入map共2页.pdf.zip

    在实际项目中,Spring Map注入常用于配置管理,例如在Spring Boot项目中,可以将配置文件(如application.properties或application.yml)中的键值对映射到一个Map,便于程序在运行时动态获取配置信息。 由于压缩包...

    spring笔记

    + 启动 Spring 容器加载配置文件,实例化其中配置好的对象,并按照指定的名字存在 Spring 容器中 BeanFactory 和 ApplicationContext * BeanFactory:延迟加载,使用 bean 时才进行初始化 * ApplicationContext:...

    spring框架登录初始化数据与struct2权限设置等相关知识

    ### Spring框架登录初始化数据与Struts2权限设置等相关知识 #### 一、数据库操作 **1. 对象作为WHERE条件** 在使用SSH框架时,经常需要根据对象的属性来进行数据库查询,特别是在分页操作中。这里涉及到的关键...

    spring-beans-3.0.xsd

    `spring-beans`的配置文件通常以`.xsd`为后缀,这些文件定义了XML Schema,用于验证Spring配置文件的语法和结构。本文将深入探讨`spring-beans-3.0.xsd`和`spring-beans-3.1.xsd`这两个版本的变更,以及它们在Spring...

    Spring系列面试题129道(附答案解析)

    Spring配置文件是一个XML文件,它包含了应用程序中Bean的配置元数据。配置文件定义了需要由Spring IoC容器管理的Bean,以及这些Bean之间的依赖关系。 71、什么是SpringIOC容器? Spring IOC容器是控制反转设计模式...

    基于Spring2.0的Collection配置使用例子

    在Spring配置文件(如`beans.xml`)中,你可以使用`&lt;list&gt;`、`&lt;set&gt;`、`&lt;map&gt;`和`&lt;props&gt;`标签来声明这些集合。每个标签都有自己的特定用途: 1. `&lt;list&gt;`:用于创建ArrayList实例,其内部元素可以是其他Bean或简单...

    JSP Spring配置文件中传值的实例详解

    Spring框架提供了多种方式在配置文件中获取和设置值,本文将通过实例详细介绍如何在JSP Spring配置文件中传值。 首先,配置文件中传值的一个重要方式是通过属性值的注入。在XML配置中,可以使用`&lt;property&gt;`标签来...

    spring bean的生命周期

    - **XML配置**:在传统的Spring应用中,Bean的定义通常写在XML配置文件中,如`springbean-xml`中的配置。 - **注解配置**:使用`@Component`,`@Service`,`@Repository`和`@Controller`注解标记类,配合`@...

    spring quartz通过xml配置实现定时任务demo

    在Spring的配置文件(如`applicationContext.xml`)中,你需要声明一个`SchedulerFactoryBean`,它负责初始化和管理Quartz的`Scheduler`实例。同时,定义一个`JobDetailBean`来描述你的Job,并创建一个`...

    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....

    iBATIS基本配置和spring中dwr配置

    3. **在Spring配置文件中配置DWRServlet**:在Spring的`applicationContext.xml`或相关的配置文件中,声明DWRServlet。 ```xml &lt;bean id="dwrServlet" class="org.directwebremoting.spring.DwrController"&gt; ...

    Spring的Bean配置说明

    #### 一、Spring配置文件根元素`&lt;beans&gt;`解析 - **功能概述**:`&lt;beans&gt;`是Spring配置文件的根元素,用来包含一个或多个`&lt;bean&gt;`元素,用于定义Spring容器管理的各种Bean。 #### 二、`&lt;bean&gt;`元素详解 - **基础...

Global site tag (gtag.js) - Google Analytics