Spring
Spring是一个轻量级的IoC和AOP容器框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。
== IOC==:Inversion of Control,控制反转,指将对象的控制权转移给Spring框架,由 Spring 来负责控制对象的生命周期(比如创建、销毁)和对象间的依赖关系。
实现IOC思想需要DI做支持,Spring这个容器中,替你管理着一系列的类,前提是你需要将这些类交给Spring容器去管理,然后在你需要的时候,不是自己去定义,而是直接向Spring容器去索取。
AOP:一般称为面向切面,作为面向对象的一种补充,用于将那些与业务无关,但却对多个对象产生影响的公共行为和逻辑,抽取并封装为一个可重用的模块,这个模块被命名为“切面”(Aspect)。降低了模块间的耦合度,提高系统的可维护性。可用于权限认证、日志、事务处理。
AOP的五种通知:
(1)前置通知(Before Advice)
(2)后置通知(After Advice)
(3)环绕通知(Around Advice)
(4)返回后通知(AfterReturning Advice)
(5)抛出异常后通知(AfterThrowing advice)
SpringMVC
SpringMVC是Spring框架的明星产品,用来接收浏览器发来的请求,并返回数据。遵循了MVC思想,主要是想实现松耦合,实现代码间的高内聚,提高代码的可维护性。
M是Model,模型层,用来封装数据。
V是View,视图层,用来展示数据。
C是Controller,控制层,用来接收请求并给出响应。
SpringMVC的五个核心组件:
1.前端控制器,DispatcherServlet 接收请求并分发请求
2.处理器映射器,HandlerMapping 根据请求,找到具体能处理请求的类和方法。
3.处理器适配器,HandlerAdapter 正式开始调用方法处理请求,并返回结果
4.视图解析器,ViewResolver 把页面找到,把数据进行解析
5.视图渲染,View 具体展示数据并返回给浏览器
ORM思想:对象关系映射,以对象的方式操作数据库
是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。
MyBatis
MyBatis是一个优秀的持久成框架,基于ORM设计思想,实现了一对象的方式操作数据库。MyBatis的ORM思想并不完全,只完成了结果集映射,但是SQL需要自己去写,所以也称之为半自动化的ORM映射框架。
优点:1.简单易学,本身就很小且简单,没有任何第三方依赖
2.SQL和代码的分离,提高了可维护性。
3.与JDBC相比,减少了50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接
4.提供映射标签,支持对象与数据库的ORM字段关系映射;提供对象关系映射标签,支持对象关系组件维护
MyBatis-Plus
全自动的ORM映射框架,是对MyBatis的增强工具,在MyBatis的基础上只做增强,不做改变,为简化开发,提高效率而生。