思维导图
四大原则
- 使用POJO进行轻量级和最小侵入式开发
- 通过依赖注入和基于接口编程实现松耦合
- 通过AOP和默认习惯进行声明式编程
- 使用AOP和模板减少模式化代码
依赖注入
定义
是容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖。
Bean注解
- @Component组件,没有明确的角色。
- @Service在业务逻辑层使用
- @Repository在数据访问层使用
- @Controller在表现层使用
输入Bean注解
注解
- @Resource:JSR-250提供的注解
- @AutoWired:Spring提供的注解
- @Inject:JSR-330提供的注解
以上三个注解可注解在set方法上或者属性上。
配置
- @Configuration:声明当前类为配置类。
- @ComponentScan:自动扫描包名下所使用的的@Service、@Component、@Repository和@Controller的类,并注册为Bean。
Java配置
注解
- @Configuration
- @Service
- @Component
- @Repository
- @Controller
AOP
注解式切面编程
- 使用@Aspect声明一个切面
- 使用@After、@Before、@Around定义建言,可直接将拦截规则作为参数
- 其中@After、@Before、@Around参数的拦截规则为切点,为了使切点服用,可使用@PointCouture专门定义拦截规则,然后在@After,@Before、@Around参数中调用
- 其中符合条件的每一个拦截处作为连接点
拦截方式
- 基于注解拦截
- 基于方法规则拦截