Spring
01: Spring简介
02: Spring–Spring组成及拓展
03: Spring–IoC理论推导&IoC本质
04: Spring–第一个Spring程序HelloSpring&修改上节案例
05: Spring–IoC创建对象方式
06: Spring–Spring配置
07: Spring–依赖注入(Dependency Injection)
08: Spring–Bean的作用域
09: Spring–自动装配Bean(使用自动装配xml配置)
10: Spring–使用注解实现自动装配(推荐使用)
11: Spring–注解开发
12: Spring–使用JavaConfig实现配置
13: Spring–静态代理再理解&AOP
14: Spring–AOP(通过 Spring API 实现&自定义类来实现Aop&使用注解实现)
15: Spring–回忆Mybatis
16: Spring–整合Mybatis
17: Spring–Spring声明式事务
1. Spring–使用JavaConfig实现配置
JavaConfig 原来是 Spring 的一个子项目,它通过 Java 类的方式提供 Bean 的定义信息,在 Spring4 的版本, JavaConfig 已正式成为 Spring4 的核心功能 。
1.1 编写一个实体类,Dog
@Component //将这个类标注为Spring的一个组件,放到容器中!
public class Dog {
public String name = "dog";
}
1.2 新建一个config配置包,编写一个MyConfig配置类
MyConfig .class
/*这个也会被Spring容器托管,注册到容器中,
因为他本来就是一个@Component @Configuration代表这是一个配置类,
就和我们之前看的beans.xmL一样
*/
@Configuration // 代表这是一个配置类
// 扫描包
@ComponentScan("com.tian.pojo")
public class MyConfig {
@Bean // 通过方法注册一个bean,这里的返回值就Bean的类型,方法名就是bean的id!
public Dog getDog() {
return new Dog();
}
}
1.3 测试
Test.java
public class Test {
@org.junit.Test
public void test() {
ApplicationContext applicationContext =
new AnnotationConfigApplicationContext(MyConfig.class);
// 这里传入的参数就是刚刚的方法名
Dog dog = (Dog) applicationContext.getBean("getDog");
System.out.println(dog.name);
}
}
运行结果:
1.4 导入其他配置
1.4.1 我们再编写一个配置类
MyConfig02.java
@Configuration
public class MyConfig02 {
}
1.4.2 在之前的配置类中我们来选择导入这个配置类
MyConfig.java
@Configuration // 代表这是一个配置类
//导入合并其他配置类,类似于配置文件中的 inculde 标签
@Import(MyConfig02.class)
public class MyConfig {
@Bean // 通过方法注册一个bean,这里的返回值就Bean的类型,方法名就是bean的id!
public Dog getDog() {
return new Dog();
}
}