SSM框架
SSM框架是spring、spring MVC 、和mybatis框架的整合.标准的SSM框架有四层,分别是dao层(mapper),service层,controller层和View层。使用spring实现业务对象管理,使用spring MVC负责请求的转发和视图管理,mybatis作为数据对象的持久化引擎。
View层:主要和控制层进行紧密的联系,负责前端页面的表示.负责呈现数据给客户端,将业务逻辑的结果转化为HTML、JSON、XML或其他格式,以便用户浏览。
- Controller层:表示层处理来自客户端(浏览器、移动应用等)的请求,负责请求的路由、参数验证、处理请求、选择视图,然后向客户端返回响应。
- Service层:业务逻辑层包含应用程序的核心业务逻辑,负责协调不同的数据访问操作、处理业务规则和业务逻辑。
- Dao(Mapper)层:数据访问层负责与数据库或其他数据存储系统交互,执行数据的读取、写入、更新和删除操作。
spring
IoC容器(控制反转容器):Spring的IoC容器负责管理应用程序中的所有Java对象,也称为Bean。它负责对象的创建、初始化、装配以及管理Bean之间的依赖关系。Spring的IoC容器使应用程序更加松散耦合,提高了可维护性和可测试性。
AOP(面向切面编程):Spring支持AOP,允许将横切关注点(如日志记录、事务管理)从应用程序的核心业务逻辑中分离出来。这提高了代码的模块化性,并允许开发人员更好地管理和维护应用程序
spring MVC
模型(Model):模型表示应用程序的数据和业务逻辑。在Spring MVC中,模型通常表示为Java对象或POJO(Plain Old Java Object)。模型对象负责保存和管理应用程序的数据,以及定义业务逻辑。模型对象可以传递给视图以进行呈现。
视图(View):视图负责呈现模型的数据给最终用户。在Web应用程序中,视图通常表示为HTML、JSP、Thymeleaf、FreeMarker或JSON等。Spring MVC支持多种视图技术,开发人员可以根据需要选择合适的视图技术。
控制器(Controller):控制器充当中间人,接收来自客户端的HTTP请求,处理请求,然后将请求委派给适当的业务逻辑和模型。控制器通常是Java类,可以使用Spring MVC的注解来定义请求处理方法。控制器还负责选择合适的视图来呈现数据。
前端控制器:Spring MVC使用前端控制器模式,所有的HTTP请求都首先由前端控制器(DispatcherServlet)接收。前端控制器负责协调请求的处理,选择合适的控制器来处理请求,并将结果发送给适当的视图。
请求映射:Spring MVC支持请求映射,开发人员可以通过注解或XML配置来定义URL和控制器之间的映射关系。这允许将请求映射到特定的控制器方法。
数据绑定:Spring MVC支持数据绑定,可以将HTTP请求的参数绑定到控制器方法的参数上。这使得开发人员可以轻松地访问和操作HTTP请求中的数据。
视图解析器:Spring MVC使用视图解析器来确定要使用哪个视图来呈现模型的数据。开发人员可以配置多个视图解析器,以选择适当的视图技术。
拦截器:Spring MVC允许开发人员定义拦截器,用于在请求处理前和请求处理后执行特定的操作,例如身份验证、日志记录等。
mybatis
SQL映射:MyBatis 允许开发人员编写SQL查询并将其与Java对象进行映射。SQL语句可以存储在XML配置文件中,也可以使用注解方式定义在Java代码中。
对象关系映射(ORM):MyBatis允许将查询结果映射为Java对象,这使得查询结果可以直接用Java对象进行操作,而不需要手动处理JDBC结果集。
参数绑定:MyBatis允许将Java对象作为参数传递给SQL查询,这些参数可以轻松地绑定到SQL查询中的占位符。
动态SQL:MyBatis支持动态SQL,开发人员可以根据条件动态构建SQL查询,从而实现灵活的查询条件。
自动映射:MyBatis支持自动将查询结果映射到Java对象,可以根据对象的命名约定自动进行映射,也可以通过配置文件进行自定义映射。
事务管理:MyBatis集成了JDBC事务管理,可以编程式或声明式地管理事务。开发人员可以控制事务的开始、提交和回滚。
缓存:MyBatis支持缓存,可以提高查询性能。它提供了本地缓存和二级缓存(基于数据库的缓存)的支持。
插件:MyBatis允许开发人员编写自定义插件来扩展框架的功能。这些插件可以用于拦截SQL执行、修改查询结果等操作。
易于集成:MyBatis可以与Spring等框架轻松集成,使数据库访问与应用程序的其他部分无缝协作。