Spring-Springmvc-Mybatis整合
- 概念
- SSM框架集由Spring、SpringMVC、MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架。
- Spring
- Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
- SpringMVC
- Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
- MyBatis
- MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。MyBatis是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
- 框架的结构
- 系统架构
- ORM:MyBatis框架
- Spring Core:基于IOC和AOP的处理方式
- 统一管理所有的JavaBean
- Web框架:Spring MVC
- 数据存储:MySQL
- 前端框架:
- JSP
- VUE、AngularJS
- Jquery
- HTML
- CSS
- 系统架构
- Java的目录结构
- 数据对象模型(com.company.pojo)
- DAO数据访问接口(com.company.dao)
- 系统服务接口(com.company.service)
- 前端控制层Controller(com.company.controller)
- 系统工具类(com.company.tools)
- 前端页面(/WEB-INF/jsp)
- 静态资源文件(/WebContent/statics)
- 项目流程创建:
- 创建项目
- 添加jar包
- 创建包,分层,创建配置文件夹
- 添加jar包
- 创建实体类
- 创建数据访问接口
- 创建业务逻辑接口
- 创建Dao的实现:Mapper.xml
- 创建业务逻辑实现方法
- 设置数据源,连接池
- 配置MyBatis的XML
-
- 配置Springmvc的xml
- 配置Springmvc的xml
-
配置Spring整合XML
-
-
- 读取数据库配置文件
- 包的扫描
- JNDI获取数据源(使用dbcp连接池)
- 配置myBatis SqlSessionFactoryBean
- 自动扫描指定包下面的Mapper接口
- 定义事务管理,指定数据源
- 配置通知,加载事务管理器
- 配置AOP切面,指定事务通知
-
-
- 配置web.xml
- 完成Mapper.xml中的具体实现
- 单元测试每一个万方法的实现
- 创建控制器
- 创建对应的页面
- 列表页面
- 添加页面
- 更新页面
- 列表页面
- 增加Spring过滤器配置,支持中文
- 创建项目
-
优化页面设置
- 项目中装载BootStrap相关配置
- bootstrarp.css,Jquery,bootstarp.js
- 首页中增加轮播图,使用BootStrap实现
- 创建一个公共的页面,用于提供bootstrap的相关支持
- 创建一各导航的头部
- 优化列表页面
- 优化添加页面
- 优化修改页面
- 新增详情页面
- 增加详情控制器
- 项目中装载BootStrap相关配置
- 优化配置文件信息
- 将Spring配置文件信息分层
- 目录结构:
- spring-dao.xml
- spring-service.xml
-
spring-web.xml
- 目录结构:
-
单元测试:
- 将Spring配置文件信息分层
- 配置web.xml
- 配置了以上内容,去掉了监听器。
- 整合完成。