本书详细讲解 Java EE 中 Spring、Spring MVC 和 MyBatis 三大框架(以下简称 SSM)的基本知识和应用。本书在对知识点进行描述时采用了大量案例,以便读者理解 SSM 的核心技术。
本书共 15 章,第 1~5 章主要讲解 MyBatis 的相关知识,包括初识 MyBatis 框架、MyBatis 的核心配置、动态 SQL、MyBatis 的关联映射和缓存机制,以及 MyBatis 的注解开发;第 6~9 章主要讲解 Spring的基本知识和应用,包括初识 Spring 框架、Spring 中的 Bean 的管理、Spring AOP,以及 Spring 的数据库编程;第 10~14 章主要讲解 Spring MVC 的相关知识,包括初始 Spring MVC 框架、Spring MVC 的核心类和注解、Spring MVC 数据绑定和响应、Spring MVC 的高级功能,以及 SSM 框架整合;第 15 章通过一个云借阅图书管理系统案例,讲解实际开发中 SSM 框架的应用。
本书附有配套视频、源代码、题库、教学课件等资源,为帮助初学者更好地学习本书,作者还提供了在线答疑。
本书既可作为高等教育本、专科院校计算机相关专业的教材,也可作为 Java 高级技术的培训教材。
本书是在第1版《Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)》的基础上修订而成,对原教材做了如下优化与新增。
1.调整了三个框架的学习顺序,依次为MyBaits→Spring→Spring MVC,使学生入门更容易。
2.MyBatis框架新增了基于注解的增删改查,基于注解的关联查询。
3.Spring框架新增了很多常用注解的讲解,并对框架知识体系进行了合并、拆解,使逻辑更连贯。
4.Spring MVC框架新增了很多常用注解的讲解。
5.框架整合新增了基于纯注解的整合方式。
6.整个知识体系学习过程,以注解为主,以XML为辅。
7.新增了6个大案例,以更好锻炼学生的动手实践能力。
第1章 初识MyBatis框架 1.1 初识框架 1.1.1 框架概述 1.1.2 框架的优势 1.1.3 当前主流框架 1.2 MyBatis 介绍 1.2.1 传统 JDBC 的劣势 1.2.2 MyBatis 概述 1.3 MyBatis 环境搭建 1.4 MyBatis 入门程序 1.5 MyBatis 工作原理 1.6 本章小结 第2章 MyBatis的核心配置 2.1 MyBatis 的核心对象 2.1.1 SqlSessionFactoryBuilder 2.1.2 SqlSessionFactory 2.1.3 SqlSession 2.2 MyBatis 核心配置文件 2.2.1 配置文件的主要元素 2.2.2 <properties>元素 2.2.3 <settings>元素 2.2.4 <typeAliases>元素 2.2.5 <environments>元素 2.2.6 <mappers>元素 2.3 MyBatis 映射文件 2.3.1 MyBatis 映射文件中的常用元素 2.3.2 <select>元素 2.3.3 <insert>元素 2.3.4 <update>元素 2.3.5 <delete>元素 2.3.6 <sql>元素 2.3.7 <resultMap>元素 2.4 案例:员工管理系统 2.5 本章小结 第 3 章 动态SQL 3.1 动态 SQL 中的元素 3.2 条件查询操作 3.2.1 <if>元素 3.2.2 <choose>、<when>、 <otherwise>元素 3.2.3 <where>、<trim>元素 3.3 更新操作 3.4 复杂查询操作 3.4.1 <foreach>元素的属性 3.4.2 <foreach>元素迭代数组 3.4.3 <foreach>元素迭代 List 3.4.4 <foreach>元素迭代 Map 3.5 案例:学生信息查询系统 3.6 本章小结 第 4 章 MyBatis 的关联映射和缓存机制 4.1 关联映射概述 4.2 一对一查询 4.3 一对多查询 4.4 多对多查询 4.5 MyBatis 缓存机制 4.5.1 一级缓存 4.5.2 二级缓存 4.6 案例:商品的类别 4.7 本章小结 第 5 章 MyBatis 的注解开发 5.1 基于注解的单表增删改查 5.1.1 @Select 注解 5.1.2 @Insert 注解 5.1.3 @Update 注解 5.1.4 @Delete 注解 5.1.5 @Param 注解 5.2 基于注解的关联查询 5.2.1 一对一查询 5.2.2 一对多查询 5.2.3 多对多查询 5.3 案例:基于 MyBatis 注解的学生管理程序 5.4 本章小结 第 6 章 初识 Spring 框架 6.1 Spring 介绍 6.1.1 Spring 概述 6.1.2 Spring 框架的优点 6.1.3 Spring 的体系结构 6.1.4 Spring 5 的新特性 6.1.5 Spring 的下载及目录结构 6.2 Spring 的入门程序 6.3 控制反转与依赖注入 6.3.1 控制反转的概念 6.3.2 依赖注入的概念 6.3.3 依赖注入的类型 6.3.4 依赖注入的应用 6.4 本章小结 第 7 章 Spring 中的 Bean 的管理 7.1 Spring IoC 容器 7.1.1 BeanFactory 接口 7.1.2 ApplicationContext 接口 7.2 Bean 的配置 7.3 Bean 的实例化 7.3.1 构造方法实例化 7.3.2 静态工厂实例化 7.3.3 实例工厂实例化 7.4 Bean 的作用域 7.4.1 singleton 作用域 7.4.2 prototype 作用域 7.5 Bean 的装配方式 7.5.1 基于 XML 的装配 7.5.2 基于注解的装配 7.5.3 自动装配 7.6 Bean 的生命周期 7.7 本章小结 第 8 章 Spring AOP 8.1 Spring AOP 介绍 8.1.1 Spring AOP 概述 8.1.2 Spring AOP 术语 8.2 Spring AOP 的实现机制 8.2.1 JDK 动态代理 8.2.2 CGLib 动态代理 8.3 基于 XML 的 AOP 实现 8.4 基于注解的 AOP 实现 8.5 本章小结 第 9 章 Spring 的数据库编程 9.1 Spring JDBC 9.1.1 JdbcTemplate 概述 9.1.2 Spring JDBC 的配置 9.2 JdbcTemplate 的增删改查操作 9.2.1 execute()方法 9.2.2 update()方法 9.2.3 query()方法 9.3 Spring 事务管理概述 9.3.1 事务管理的核心接口 9.3.2 事务管理的方式 9.4 声明式事务管理 9.4.1 基于 XML 方式的声明式事务 9.4.2 基于注解方式的声明式事务 9.5 案例:实现用户登录 9.6 本章小结 第 10 章 初识 Spring MVC 框架 10.1 Spring MVC 介绍 10.1.1 Spring MVC 概述 10.1.2 Spring MVC 特点 10.2 Spring MVC 入门程序 10.3 Spring MVC 工作原理 10.4 本章小结 第 11 章 Spring MVC 的核心类和注解 11.1 DispatcherServlet 11.2 @Controller 注解 11.3 @RequestMapping 注解 11.3.1 @RequestMapping 注解的使用 11.3.2 @RequestMapping 注解的属性 11.3.3 请求映射方式 11.4 本章小结 第 12 章 Spring MVC 数据绑定和响应 12.1 数据绑定 12.2 简单数据绑定 12.2.1 默认类型数据绑定 12.2.2 简单数据类型绑定 12.2.3 POJO 绑定 12.2.4 自定义类型转换器 12.3 复杂数据绑定 12.3.1 数组绑定 12.3.2 集合绑定 12.3.3 复杂 POJO 绑定 12.3.4 JSON 数据绑定 12.4 页面跳转 12.4.1 返回值为 void 类型的页面跳转 12.4.2 返回值为 String 类型的页面跳转 12.4.3 返回值为 ModelAndView 类型的页面跳转 12.5 数据回写 12.5.1 普通字符串的回写 12.5.2 JSON 数据的回写 12.6 本章小结 第 13 章 Spring MVC 的高级功能 13.1 异常处理 13.1.1 简单异常处理器 13.1.2 自定义异常处理器 13.1.3 异常处理注解 13.2 拦截器 13.2.1 拦截器概述 13.2.2 拦截器的配置 13.2.3 拦截器的执行流程 13.2.4 案例:后台系统登录验证 13.3 文件上传和下载 13.3.1 文件上传 13.3.2 文件下载 13.3.3 案例:文件上传和下载 13.4 本章小结 第 14 章 SSM 框架整合 14.1 常用方式整合 SSM 框架 14.1.1 整合思路 14.1.2 项目基础结构搭建 14.1.3 Spring 和 MyBatis 整合 14.1.4 Spring 和 Spring MVC 整合 14.2 纯注解方式整合 SSM 框架 14.2.1 整合思路 14.2.2 纯注解 SSM 框架整合 14.3 本章小结 第 15 章 云借阅图书管理系统 15.1 系统概述 15.1.1 系统功能介绍 15.1.2 系统架构设计 15.1.3 文件组织结构 15.1.4 系统开发及运行环境 15.2 数据库设计 15.3 系统环境搭建 15.3.1 需要引入的依赖 15.3.2 准备数据库资源 15.3.3 准备项目环境 15.4 用户登录模块 15.4.1 用户登录 15.4.2 实现登录验证 15.4.3 注销登录 15.5 图书管理模块 15.5.1 新书推荐 15.5.2 图书借阅 15.5.3 当前借阅 15.5.4 借阅记录 15.6 访问权限控制 15.7 本章小结