当前位置:首页 > 开发 > 编程语言 > Spring > 正文

spring mvc中的@propertysource

发表于: 2015-03-12   作者:jackyrong   来源:转载   浏览:
摘要:   在spring mvc中,在配置文件中的东西,可以在java代码中通过注解进行读取了: @PropertySource  在spring 3.1中开始引入 比如有配置文件 config.properties mongodb.url=1.2.3.4 mongodb.db=hello 则代码中   @PropertySource(&
  在spring mvc中,在配置文件中的东西,可以在java代码中通过注解进行读取了:

@PropertySource  在spring 3.1中开始引入

比如有配置文件
config.properties

mongodb.url=1.2.3.4
mongodb.db=hello

则代码中
 
@PropertySource("classpath:config.properties")
public class AppConfigMongoDB {
 
	//1.2.3.4
	@Value("${mongodb.url}")
	private String mongodbUrl;
 
	//hello
	@Value("${mongodb.db}")
	private String defaultDb;


@Bean
	public static PropertySourcesPlaceholderConfigurer propertyConfigInDev() {
		return new PropertySourcesPlaceholderConfigurer();
	}



   则mongodbUrl已经是读取出1.2.3.4的值了,而spring提倡用env去读取值


	@Autowired
	private Environment env;

String mongodbUrl = env.getProperty("mongodb.url");
		String defaultDb = env.getProperty("mongodb.db");



   要注意的是,要使用
 
@Bean
public static PropertySourcesPlaceholderConfigurer propertyConfigInDev() {
return new PropertySourcesPlaceholderConfigurer();
}

才能让spring正确解析出${} 中的值

   在spring 3.2中,允许支持多个properties了,

@Configuration
	@PropertySource({
		"classpath:config.properties",
		"classpath:db.properties" //如果是相同的key,则最后一个起作用
	})
	public class AppConfig {
		@Autowired
		Environment env;
	}



  spring 4.1中,支持@PropertySources
@Configuration
	@PropertySources({
		@PropertySource("classpath:config.properties"),
		@PropertySource("classpath:db.properties")
	})
	public class AppConfig {
		//...
	}

 
  在spring 4.2中,
  
@Configuration
	@PropertySource("classpath:missing.properties")
	public class AppConfig {
		//...
	}


   如果发现missing.properties不存在,则抛出异常
,也可以使用ignoreResourceNotFound=true去忽略
  @Configuration
@PropertySource(value="classpath:missing.properties", ignoreResourceNotFound=true)
public class AppConfig {
//...
}
 
  

spring mvc中的@propertysource

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
在Spring MVC中,首先进行的是IoC容器的初始化,包括Root和DispatchServlet对应的content。在IoC容
如何根据http请求选择合适的controller是MVC中一项十分关键的功能,在Spring MVC中,HandlerMapping
在spring mvc3中可以用title2的框架简化,下面是步骤: 1 加上包,包如下图: 2 在spring mvc中设置t
在spring mvc3中可以用title2的框架简化,下面是步骤: 1 加上包,包如下图: 2 在spring mvc中设置t
在spring mvc3中可以用title2的框架简化,下面是步骤: 1 加上包,包如下图: 2 在spring mvc中设置t
今天项目上要求使用Memcache对数据进行缓存操作,因为之前的项目中用过Memcache,所以整理下来。 第
很好的一篇文章,拿到博客和大家共享一下 (转)0Spring中MVC框架的底层实现 Written by Tony Jiang @
在spring mvc3中可以用title2的框架简化,下面是步骤: 1 加上包,包如下图: 2 在spring mvc中设置t
在spring mvc3中可以用title2的框架简化,下面是步骤: 1 加上包,包如下图: 2 在spring mvc中设置t
对于企业应用来说,数据是许多业务的命脉,软件通常是可替换的,但是多年积累的数据是永远不能替换
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号