一、概述
Spring框架是一个轻量级的企业级开发的一站式解决方案。Spring框架主要提供了IoC容器、AOP、数据访问、Web开发、消息、测试等相关技术的支持。
二、基础配置
1、Spring框架四大原则
1)使用POJO进行轻量级和最小侵入式开发
2)通过依赖注入和基于接口编程实现松耦合
3)通过AOP和默认习惯进行声明式编程
4)使用AOP和模板减少模块化代码
2、依赖注入
在Spring环境下,控制反转和依赖注入是等同的概念,控制反转是通过依赖注入实现的。
所谓依赖注入指的是容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖关系。
声明Bean的注解:
- @Component组件,没有明确的角色
- @Service在业务逻辑层(Service)使用
- @Repository在数据访问层(dao)使用
- @Controller在表现层(MVC)使用
注入Bean的注解:
- @Autowired:Spring提供的注解
- @Inject:JSR-330提供的注解
- @Resource:JSR-250提供的注解
3、Java配置
Java配置是通过@Configuration和@Bean来实现的
- @Configuration声明当前类是一个配置类,相当于一个Spring配置单xml文件
- @Bean注解在方法上,声明当前方法的返回值为一个Bean
4、AOP
AOP:面向切面编程,相对于OOP面向对象编程。
Spring的AOP的存在目的是为了解耦。AOP可以让一组类共享相同的行为。在OOP中只能通过继承类和实现接口,来使代码的耦合度增强,且类继承只能为单继承,阻碍更多行为添加到一组类上,AOP弥补了OOP的不足。
1)添加spring aop支持和AspectJ依赖
2)编写拦截规则的注解
3)编写使用注解的被拦截类
4)编写使用方法规则被拦截类
5)编写切面
6)配置类
7)运行