DI:注入外部值
除了注入其他Bean,完成Bean之间的依赖关系的组装,Spring还能够直接为Bean注入数值。
主要有三种方式
1,使用@PropertySource注解和Environment
@PropertySource("classpath:ll")//这里的注解,引入文件,文件是典型的java properity键值对的文件,其中classpath:表示从src文件目录开始找
org.springframework.core.env.Environment env; @RequestMapping(value = "**/l?") protected String getName(){ System.out.println(env.getProperty("sha")); return "test"; }
2,使用占位符
public zhanweifu(@Value("${'lz'}") String s) { System.out.println(s); } } 在xml直接使用 ${} 使用xml配置 <context:property-placeholder/> 使用java配置 创建一个PropertySourcesPlaceholderConfigurer的Bean——在javaConfig中配置
占位符跟SpEL在使用上很相似
3,SpEL——Spring Expression Language