05----------高级装配

  1. Spring profile
  2. 条件化的 bean声明
  3. 自动装配和歧义性
  4. bean的作用域
  5. Spring表达式语言

一.Spring profile

  • 使用Java来生成,需要激活profile

  • 在XML中配置

  • 激活profile,需要使用spring.profiles.active和spring.profiles.default,如果设置了spring.profiles.active,那么它的值决定了哪个profile是激活的

如果没有设置,则会区查找spring.profiles.default,如果都灭有,spring会去创建没有定义在profile中的bean

一般在web.xm中使用DispatcherServlet初始化:

按照这种方式,默认使用spring.profiles.default,如果需要将应用部署到QA,生产后其他环境,可以设置spring.profiles.active即可,因为active优先级大于default。

二.自动装配的歧义性

这样spring无法确认装配哪个,使用@Primary或使用限定符qualifier

bean的作用域,可以使用@Scope来声明哪种类型,默认使用单例SIngleton

注入外部的值:使用@PropertySource注解和Environment

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章