spring学习笔记

1、IOC

 

2、AOP(Aspct Oriented Programming)面向切面编程

面向切面编程:基于OOP基础之上新的编程思想;

指在程序运行期间,将某段代码动态的切入指定方法指定位置进行运行的这种编程方式

 

场景:计算器运行计算方法的时候进行日志的记录;

加日志记录:

  1. 直接编写在方法内部;不推荐,修改维护麻烦;
    1. 日志记录:系统的辅助功能;
    2. 业务逻辑:(核心功能)
    3. 耦合;
  2. 希望的是:
    1. 业务逻辑:(核心功能);日志模块;在核心功能运行期间,自己动态的加上
    2. 运行的时候,日志功能可以加上;
    3. 可以使用动态代理来将日志代码动态的在目标方法执行前后先进行执行。(动态代理存在的问题,写起来麻烦,每个都需要实现代理类)
  3. Spring实现了AOP功能;底层就是动态代理;
    1. 可以利用Spring一句代码都不写的去创建动态代理;
      1. 实现简单,而且没有强制要求目标对象必须实现接口;

 

AOP使用场景:

  1)AOP加日志保存到数据库

  2)AOP做权限验证

  3)AOP做安全检查

  4)AOP做事务控制

 

3、SpringMVC == Spring的Web模块

 什么事SpringMVC?

  • Spring为展现层提供您的基于MVC设计理念的优秀的Web框架,是目前最主流的MVC框架之一
  • SpringMVC通过一套MVC注解,让POJO成为处理请求的控制器,而无需实现任何接口
  • 支持REST风格的URL请求
  • 采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性

 

posted on 2022-05-27 09:36  1450811640  阅读(19)  评论(0编辑  收藏  举报