![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
spring注解驱动开发
spring注解驱动开发
白衣如雪徐凤年x
软件工程专业在读生
展开
-
spring容器ApplicationContext初始化源码解析
测试用例: public class BaseTest { public static void main(String[] args) { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("config.xml"); TestBean testBean = context.getBean("testBean", TestBean.class); t转载 2020-06-27 16:44:23 · 249 阅读 · 0 评论 -
spring指定环境以及@Profile用法简介
软件开发一般有多个环境,比如测试环境,开发环境,生产环境。spring运行根据不同环境注册不同组件。 以指定环境启动容器 当不需要指定环境时,我们仅需调用AnnotationConfigApplicationContext的有参构造器(传入配置类的class)即可启动容器。但是当我们需要设置环境时,便需要使用如下方法启动容器: AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();原创 2020-06-22 18:05:39 · 430 阅读 · 0 评论 -
spring自动装配之@Autowired
对于自动装配,最为常用的注解就是@Autowired 此注解可标注在字段、方法、构造器、参数上。 spring创建组件对象并注入容器时,一般调用组件的无参构造方法,当使用@Autowired注解标注有参构造器时,容器将调用该有参构造器。不能再同一个组件的多个构造器上同时标注@Autowired注解,这样spring将不知道该调用哪个构造器,会抛出异常。 将@Autowired注解标注再方法上,该方法的参数将从容器中获取,该方法将会在组件被创建后,初始化方法调用之前(包括后置处理器的初始化前置方法)被调用 @原创 2020-06-22 17:38:43 · 191 阅读 · 0 评论 -
spring属性赋值相关注解
我们可以直接使用@Value注解,标注在组件的字段上,为其赋值 @Value注解仅有一个属性:String value(); 可以传入SpEl表达式,如@Value("#{18-2}") 也可以从properties文件中读出值 需要注意的是,如果我们需要从配置文件中读出值,需要先在配置类上使用@PropertySource注解指定配置文件位置 如@PropertySource("classpath:/test.properties") //引入类路径下的test.properties配置文件 此外,该注解原创 2020-06-22 11:16:30 · 185 阅读 · 0 评论 -
spring组件生命周期
指定组件初始化和销毁方法 1、 通过@Bean指定 可以通过使用@Bean的initMethod和destroyMethod属性来指定初始化和销毁方法。 通常情况下,这些方法就在对应组件内部,且无参、可抛异常 initMethod属性注释: Not commonly used, given that the method may be called programmatically directly within the body of a Bean-annotated method. 官方文档注释提示该方原创 2020-06-21 19:47:39 · 245 阅读 · 0 评论 -
spring组件注册系列注解源码详解
前言 spring注解开发的组件注册可以完全使用注解来做到,舍弃了传统的xml配置文件,取而代之的是使用配置类来设置配置信息 @Configuration 此注解标注在类上,表名该类为配置类,配置类的作用和配置文件一样。 @Bean 该注解可标注在方法上,容器初始化时将调用该方法,并将该方法的返回值注入到容器中,组件的名字默认为方法名。 如果显式的指定了组件名称,方法名将被忽略 `@AliasFor("name") String[] value() default {};` 用于设置要被注入的组件原创 2020-06-21 13:30:55 · 168 阅读 · 0 评论