-
内容大纲
本书主要讲解Java EE框架MyBatis、Spring和Spring MVC的核心开发技术,帮助读者进行“精要”式的学习和项目实战,同时汲取Java EE的思想,并最终将其灵活运用到实际工作中。
全书内容共7章,分别对MyBatis、Spring和Spring MVC的基础知识与核心技术实现进行了详细的描述。书中利用大量篇幅介绍了Spring中的DI与AOP,这两种技术是Spring框架的内部原理,掌握它们是学习Spring的重中之重。另外,本书还系统解析了MyBatis+Spring+Spring MVC框架的整合,并介绍了如何使用Spring Boot开发Web软件项目。
本书适用于已具有一定Java编程基础的读者,包括具有Servlet编程经验,以及在Java平台下进行各类软件开发的开发人员、测试人员等。 -
作者介绍
-
目录
第1章 MyBatis 3核心技术之必备技能
1.1 什么是框架
1.2 什么是对象关系映射
1.3 MyBatis的优势
1.4 ORM的原理实现
1.4.1 使用JDBC和反射技术实现泛型DAO
1.4.2 操作XML文件
1.5 准备MyBatis的开发环境
1.5.1 下载Eclipse
1.5.2 下载MyBatis
1.5.3 在Eclipse中创建Library库
1.5.4 创建Java项目并引用Library库
1.6 创建SqlSessionFactory和SqlSession对象
1.6.1 XML配置文件模板
1.6.2 使用XML配置文件创建SqlSessionFactory对象
1.6.3 创建SqlSession对象
1.6.4 SqlSessionFactoryBuilder和SqlSessionFactory的API
1.7 在Eclipse中安装MyBatis Generator插件
1.8 使用MyBatis Generator工具逆向的代码操作Oracle数据库
1.8.1 进行逆向操作
1.8.2 操作数据库
1.9 使用MyBatis Generator工具逆向的代码操作MySQL数据库
1.9.1 进行逆向操作
1.9.2 操作数据库
1.10 自建环境使用SqlSession操作Oracle和MySQL数据库
1.10.1 针对Oracle的CURD
1.10.2 针对MySQL的CURD
1.10.3 向SQL映射传入参数类型
1.10.4 从SQL映射取得返回值类型
1.10.5 SQL映射文件中命名空间的作用
1.11 自建环境使用Mapper接口操作Oracle和MySQL数据库
1.11.1 接口-SQL映射的对应关系
1.11.2 针对Oracle的CURD
1.11.3 针对MySQL的CURD
1.11.4 向Mapper接口传入参数类型
1.11.5 从SQL映射取得返回值类型
1.12 MyBatis核心对象的生命周期与封装
1.12.1 创建GetSqlSessionFactory类
1.12.2 创建GetSqlSession类
1.12.3 创建SQL映射接口
1.12.4 创建SQL映射文件
1.12.5 测试多次获取的SqlSession对象是否为同一个
1.12.6 添加记录及异常回滚的测试
第2章 MyBatis 3核心技术之实战技能
2.1 结合Log4j实现输出日志
2.1.1 结合Log4j 1实现输出日志
2.1.2 结合Log4j 2实现输出日志
2.2 SQL语句中特殊符号的处理
2.3 使用typeAliases配置别名
2.3.1 系统预定义别名
2.3.2 使用单独配置自定义别名
2.3.3 使用批量配置自定义别名
2.3.4 别名重复的解决办法
2.4 使用properties保存数据库信息
2.4.1 使用配置内部属性值
2.4.2 使用引用外部properties属性文件中的配置
2.4.3 使用程序代码读取properties文件中的参数
2.4.4 数据库密码加/解密
2.5 配置多个连接数据库环境
2.5.1 实现多个连接数据库环境
2.5.2 多个连接数据库环境与数据库加/解密
2.6 使用数据源
2.6.1 DataSource接口介绍
2.6.2 JNDI介绍
2.6.3 DataSource与JNDI的关系
2.6.4 使用JNDI接口操作JNDI Tree上的数据
2.6.5 在JNDI树中先获得DataSource再获得Connection
2.6.6 在MyBatis中从JNDI获得DataSource
2.6.7 在MyBatis中使用第三方的HikariCP连接池
2.7 不同数据库执行不同SQL语句的支持
2.7.1 使用实现执行不同的SQL语句
2.7.2 在SQL映射的id值相同的情况下有无databaseId的优先级判断
2.8 获取Mapper的多种方式
2.9 中type为JDBC和MANAGED时的区别
2.10 动态SQL
2.10.1 标签的基本使用
2.10.2 标签与有参构造方法
2.10.3 使用 ${} 拼接SQL语句
2.10.4 标签
2.10.5 插入null值的第 1种方法——JdbcType
2.10.6 插入null值的第 2种方法——
2.10.7 标签
2.10.8 标签的使用
2.10.9 标签的使用
2.10.10 标签的使用
2.10.11 使用执行批量插入
2.10.12 使用标签对like语句进行适配
2.10.13 使用标签规范SQL语句
2.11 读写CLOB类型的数据
2.12 处理分页
2.12.1 使用SqlSession对象对查询的数据进行分页
2.12.2 使用Mapper接口对查询的数据进行分页
2.13 实现批处理
2.14 实现一对一级联
2.14.1 数据表结构和内容以及关系
2.14.2 创建实体类
2.14.3 创建SQL映射文件
2.14.4 级联解析
2.14.5 根据ID查询记录
2.14.6 查询所有记录
2.14.7 对SQL语句执行次数进行优化
2.15 实现一对多级联
2.15.1 数据表的结构、内容以及关系
2.15.2 创建实体类
2.15.3 创建SQL映射文件
2.15.4 级联解析
2.15.5 根据ID查询记录
2.15.6 查询所有记录
2.15.7 对SQL语句的执行次数进行优化
2.16 延迟加载
2.16.1 默认立即加载策略
2.16.2 使用全局延迟加载策略与两种加载方式
2.16.3 使用fetchType属性设置局部加载策略
2.17 缓存的使用
2.17.1 一级缓存
2.17.2 二级缓存
2.17.3 验证update语句具有清除二级缓存的特性
第3章 Spring 5核心技术之IoC
3.1 Spring框架简介
3.2 Spring框架的模块组成
3.3 IoC和DI
3.4 IoC容器
3.5 面向切面编程
3.6 初步体会IoC的优势
3.7 在Spring中创建JavaBean
3.7.1 使用XML声明法创建对象
3.7.2 使用Annotation注解法创建对象
3.7.3 处理JavaBean的生命周期
3.8 装配Spring Bean
3.8.1 使用XML声明法注入对象
3.8.2 使用注解声明法注入对象
3.8.3 多实现类的歧义性
3.8.4 使用 @Autowired注解向构造方法进行注入
3.8.5 使用 @Autowired注解向set方法进行注入
3.8.6 使用 @Autowired注解向Field进行注入
3.8.7 使用 @Inject向Field-setMethod-Constructor进行注入
3.8.8 向 @Bean工厂方法注入参数
3.8.9 使用 @Autowired (required = false) 的写法
3.8.10 使用 @Bean为JavaBean的id重命名
3.8.11 为构造方法进行注入
3.8.12 使用p命名空间对属性值进行注入
3.8.13 Spring上下文环境的相关知识
3.8.14 BeanFactory与ApplicationContext
3.8.15 注入null类型
3.8.16 注入Properties类型
3.8.17 在Spring中注入外部属性文件的属性值
3.8.18 在IoC容器中创建单例和多例的对象—— XML配置文件法
3.8.19 在IoC容器中创建单例和多例的对象—— 注解法
3.8.20 父子容器
3.8.21 注入特殊字符
3.8.22 使用@Value注解进行注入
第4章 Spring 5核心技术之AOP
4.1 AOP的使用
4.1.1 AOP的原理之代理设计模式
4.1.2 与AOP相关的基本概念
4.1.3 AOP核心案例
4.2 MyBatis 3和Spring 5的整合
第5章 Spring 5 MVC实战技术
5.1 MVC、软件框架与Spring 5 MVC介绍
5.2 Spring 5 MVC核心控制器
5.3 核心技术
5.3.1 执行控制层:无参数传递
5.3.2 执行控制层:有参数传递
5.3.3 执行控制层:有参数传递简化版
5.3.4 实现登录功能
5.3.5 将URL参数封装成实体类
5.3.6 限制提交method的方式
5.3.7 控制层方法的参数类型
5.3.8 控制层方法的返回值类型
5.3.9 取得request、response和session对象
5.3.10 登录失败后显示错误信息
5.3.11 向控制层注入Service业务逻辑层
5.3.12 重定向:无参数传递
5.3.13 重定向:有参数传递
5.3.14 重定向传递参数:RedirectAttributes.addAttribute() 方法
5.3.15 重定向传递参数:RedirectAttributes.addFlashAttribute() 方法
5.3.16 解决转发到*.html文件的404异常
5.3.17 使用fastjson在服务端解析JSON字符串
5.3.18 使用jackson在服务端将JSON字符串转换成各种Java数据类型
5.3.19 在控制层返回JSON对象示例
5.3.20 在控制层返回JSON字符串示例
5.3.21 使用HttpServletResopnse对象输出响应字符
5.3.22 单文件上传1:使用MultipartHttpServletRequest
5.3.23 单文件上传2:使用MultipartFile
5.3.24 单文件上传3:使用MultipartFile结合实体类
5.3.25 多文件上传1:使用MultipartHttpServletRequest
5.3.26 多文件上传2:使用MultipartFile[]
5.3.27 多文件上传3:使用MultipartFile[]结合实体类
5.3.28 支持文件名为中文的文件的下载
5.4 扩展技术
5.4.1 使用InternalResourceViewResolver简化返回的视图名称
5.4.2 控制层返回List对象及实体的效果
5.4.3 实现国际化
5.4.4 处理异常
5.4.5 配置文件的不同使用方式
5.4.6 方法参数是Model数据类型
5.4.7 方法参数是ModelMap数据类型
5.4.8 方法返回值是ModelMap数据类型
5.4.9 方法返回值是ModelAndView数据类型
5.4.10 方法返回值是ModelAndView实现重定向
5.4.11 使用 @RequestAttribute和 @SessionAttribute注解
5.4.12 使用 @CookieValue和 @RequestHeader注解
5.4.13 使用 @SessionAttributes注解
5.4.14 使用 @ModelAttribute注解
5.4.15 在路径中添加通配符的功能
5.4.16 控制层返回void数据的情况
5.4.17 解决多人开发路径可能重复的问题
5.4.18 @PathVariable注解的使用
5.4.19 通过URL参数访问指定的业务方法
5.4.20 @RestController注解的使用
5.4.21 @GetMapping、@PostMapping、@PutMapping和@DeleteMapping注解的使用
5.4.22 Spring 5 MVC与Spring 5的整合及应用AOP切面
第6章 MyBatis 3、Spring 5和Spring 5 MVC的整合
6.1 准备MyBatis 3、Spring 5和Spring 5 MVC框架的JAR包文件
6.2 准备MyBatis 3与Spring 5整合的插件
6.3 创建Web项目
6.4 配置web.xml文件
6.5 配置springMVC-servlet.xml文件
6.6 MyBatis配置文件
6.7 创建MyBatis映射的相关文件
6.8 配置applicationContext.xml文件
6.9 创建Service对象
6.10 创建Controller对象
6.11 测试正常的效果
6.12 测试回滚的效果
第7章 前沿技术Spring Boot
7.1 搭建Maven开发环境
7.1.1 Maven介绍
7.1.2 搭建Maven环境
7.1.3 在Eclipse中关联Maven
7.1.4 创建Maven项目
7.1.5 使用Maven工具下载Spring框架(JAR包、源代码和帮助文档)
7.1.6 向仓库中添加自定义的JAR包
7.1.7 查看依赖关系
7.2 使用Thymeleaf模板引擎
7.2.1 常见的使用方式
7.2.2 实现循环
7.2.3 实现国际化与转义
7.2.4 处理链接
7.2.5 实现if处理
7.2.6 实现比较
7.2.7 处理属性值
7.3 使用Spring Boot开发Web项目
7.3.1 创建Maven Web Project
7.3.2 更改错误的Maven Web Project环境
7.3.3 常用Starter的介绍
7.3.4 创建控制层
7.3.5 添加JSTL依赖
7.3.6 创建JSP视图文件
7.3.7 创建启动类Application
7.3.8 运行Application类
7.3.9 执行test2的URL
7.3.10 执行test1的URL
7.3.11 添加JSP依赖
7.3.12 实现项目首页
7.3.13 在CMD中启动项目
7.3.14 创建可执行JAR
7.3.15 实现注入IoC
7.3.16 实现切面AOP
7.3.17 官方建议的项目结构
7.3.18 实现Spring Boot整合Thymeleaf模板
7.3.19 使用自定义的Thymeleaf模板显示异常信息
7.3.20 实现Spring Boot整合MyBatis框架
7.3.21 整合 @WebFilter和 @WebListener资源
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...