Spring阅读源码环境搭建
关于Spring, 我们平时接触最多的其实应该是Spring Boot, 但是Spring Boot, 只是Spring的大集成者,所以,学习Spring,强烈建议从Spring Framework开始学起,逐步熟悉之后,再看Spring Boot其实就很简单了,下面带大家,写一个非常简单的一个demo,我们只使用Spring相关的依赖。
关于阅读源码的环境,有多种方式,建议先在idea里面进行debug吧,等熟悉之后,可以至github下载Spring官方源码,进行阅读,写注释。
引入pom
我这里使用的是spring 5.2.x系列版本,建议使用5.0以上版本
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.10.RELEASE</version>
</dependency>
引入这个pom之后,其实spring基本的jar就都引进来了,然后写一个简单的程序来进行测试。
编写代码
@Configuration
public class Demo1 {
@Bean
public Person person() {
Person person = new Person();
person.setName("spring");
return person;
}
public static void main(String[] args) {
// TODO: 直接new出来一个AnnotationConfigApplicationContext,将配置类传进去
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(Demo1.class);
// TODO: 从IOC容器中将Person这个类型的bean拿出来.
Person bean = applicationContext.getBean(Person.class);
System.out.println(bean);
}
}
运行结果输出:
person("spring")
可以看到使用Spring非常简单的几行代码就搞定了,上面代码中我用到了@Configuration和@Bean注解,以及一个很重要的类AnnotationConfigApplicationContext,关于这两个注解以及applicationContext. 我之后会详细介绍。
简单解释一下上述代码:
@Configuration 用于声明一个配置类,Spring老的版本用的都是XML, 可以将一个@Configuration声明的类类比成一个XML配置文件。
@Bean 用于声明一个Bean,可以类比成以前XML中的<bean>标签。表示容器启动后,将Person对象放至IOC容器中
AnnotationConfigApplicationContext:可以当成一个容器,Annotation的意思很明显,表示我们这个ApplicationContext是基于注解的,我们所有的bean全放在IOC容器中。关于IOC容器以及bean的初始化,我后面会接着往下讲。
欢迎留言,转发,点赞支持哦~
网友评论