http://blog.csdn.net/hemingwang0902/article/details/4733911
http://jackyrong.iteye.com/blog/1330946
在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件
中的文件,进行键值对的注入,例子如下:
中的文件,进行键值对的注入,例子如下:
package com.eastcom.intsight.cms.etl.common; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; @Service
public class ParamsConfigure { private static String eltTempDataPath;
private static String eltTempDataCharset;
private static String eltTempDataDelimiter; @Value("${elt_temp_data_path}")
public void setEltTempDataPath(String eltTempDataPath) {
ParamsConfigure.eltTempDataPath = eltTempDataPath;
} @Value("${elt_temp_data_charset}")
public void setEltTempDataCharset(String eltTempDataCharset) {
ParamsConfigure.eltTempDataCharset = eltTempDataCharset;
} @Value("${elt_temp_data_delimiter}")
public void setEltTempDataDelimiter(String eltTempDataDelimiter) {
ParamsConfigure.eltTempDataDelimiter = eltTempDataDelimiter;
} public synchronized static String getEltTempDataPath() {
return ParamsConfigure.eltTempDataPath;
} public synchronized static String getEltTempDataCharset() {
return ParamsConfigure.eltTempDataCharset;
} public synchronized static String getEltTempDataDelimiter() {
return ParamsConfigure.eltTempDataDelimiter;
} }
注解@PostConstruct
@Documented
@Retention(value=RUNTIME)
@Target(value=METHOD)
public @interface PostConstruct
PostConstruct 注释用于在依赖关系注入完成之后需要执行的方法上,以执行任何初始化。此方法必须在将类放入服务之前调用。支持依赖关系注入的所有类都必须支持此注释。即使类没有请求注入任何资源,用 PostConstruct 注释的方法也必须被调用。只有一个方法可以用此注释进行注释。应用 PostConstruct 注释的方法必须遵守以下所有标准:该方法不得有任何参数,除非是在 EJB 拦截器 (interceptor) 的情况下,根据 EJB 规范的定义,在这种情况下它将带有一个 InvocationContext 对象 ;该方法的返回类型必须为 void;该方法不得抛出已检查异常;应用 PostConstruct 的方法可以是 public、protected、package private 或 private;除了应用程序客户端之外,该方法不能是 static;该方法可以是 final;如果该方法抛出未检查异常,那么不得将类放入服务中,除非是能够处理异常并可从中恢复的 EJB。