SSM框架

 spring spring MVC springMyBatis

一、sping是一个分层的javaSE/EE Full-stack(一站式) 轻量级开源框架

1、分层,javaEE经典的MVC三层结构为表现层,业务层,持久层,

web表现层负责页面数据显示,页面跳转调度,例如JSP/servlet,springMVC

service业务层负责业务处理,功能逻辑和事务控制,例如service,JavaBean,EJB

dao持久层负责数据存取和封装,及与数据库打交道,例如JDBC,Mybatis

2、一站式,spring为javaEE的每一层都提供了解决方案,比如:

  • 表现层:springMVC
  • 业务层:ioc控制反转,aop面向切面编程,事务控制;
  • 持久层:jdbcTemplate、HibernateTemplate、ORM框架(对象关系映射)的整合

3、轻量,从大小和开销两方面而言,spring都是轻量的

完整的spring框架可以在一个只有1MB多的jar文件里发布。并且spring所需的处理开销也是微不足道的。

4、spring的三大核心:IOC、DI、AOP

  • IOC,将对象的创建权力交给spring工厂进行管理
  • DI,在spring框架创建Bean对象时,动态地将依赖对象注入到Bean组件。简单的说,就是将另外一个bean对象动态的注入到另一个bean中
  • AOP,采取横向抽取机制,取代了传统纵向继承体系重复性代码的编写方式(例如性能监视、事物管理、安全检查、缓存、日志记录等)。aop基于代理思想,对原来目标对象,创建代理对象,在不修改原对象代码情况下,通过代理对象,调用增强功能的代码,从而对原有业务方法进行增强。例如可以在插入User对象之前进行打印日志,

二、springMVC框架流程图(在笔记本上画有)

springMVC通过一套MVC注解,让pojo成为处理请求的控制器,无需任何接口,同时,springMVC还支持rest风格的url请求。ci

此外,springMVC在数据绑定、视图解析、本地化处理及静态资源处理上都有许多不俗的表现。springMVC框架围绕DispatcherServlet这个核心展开,DispatcherServlet是前端控制器设计模式的实现,提供spring Web MVC的集中访问点,负责职责的分派,而且与spring IOC容器无缝集成,从而可以hu获得spring的所有好处。

三、mybatis介绍

1、Mybatis是一个类似于Hibernate的ORM持久化框架,支持普通sql查询、存储过程以及高级映射。Mybatis通过使用简单的XMl或注解用于配置和原始映射,将接口和POJO对象映射成数据库中的记录。

2、mybatis5大特点:

  • 支持自定义sql、存储过程、高级映射;
  • 实现自动对sql的参数设置;
  • 实现自动对结果集的解析和封装;
  • 通过xml或者注解进行配置和映射,大大减少代码量;
  • 数据源的连接信息通过配置文件进行配置;

3、Mybatis整体架构

  • 配置文件:全局配置文件mybatis-config.xml,其作用为配置数据源,引入映射文件Mapper.xml,映射文件的作用是配置sql语句、参数、结果集封装类型等。
  • SqlSessionFactory:相当于Hibernate的SessionFactory,作用为获取SqlSession,通过newSqlSessionFactoryBuilder().build(inputstream)来构建,inputstream用来读取配置文件的IO流。
  • SqlSession:相当于Hibernate的Session,作用为执行CRUD操作。
  • Executor:执行器,SqlSession通过调用它来完成具体的CRUD,它是一个接口,提供了两种实现,即缓存的实现,数据库的实现。
  • Mapped Statement:在映射文件里配置,包含3部分内容:具体的sql,sql执行所需要的参数类型,sql执行结果的封装类型,参数类型和结果集封装类型包括3种,即HashMap,基本数据类型,POJO。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值