JavaEE实战精粹:MyBatis+Spring+SpringMVC

JavaEE实战精粹:MyBatis+Spring+SpringMVC

立即阅读
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

主要讲解Java EE框架MyBatis、Spring和Spring MVC的核心开发技术,帮助读者进行“精要”式的学习和项目实战,同时汲取Java EE的思想,并最终将其灵活运用到实际工作中。

内容简介

本书内容共7章,分别对MyBatis、Spring和Spring MVC的基础知识与核心技术实现进行描述。书中利用大量篇幅介绍Spring中的DI与AOP,这两种技术是Spring框架的内部原理。另外,还系统解析MyBatis Spring Spring MVC框架的整合,并介绍如何使用Spring Boot开发Web软件项目。

作者简介

作者高洪岩,某世界500强项目经理,有10年Java相关开发经验,精通Java语言,擅长J2EE、EJB、Android、报表和多线程,以及并发相关的技术内容,理论与实践经验颇丰。著有《Java多线程编程核心技术》《Java并发编程:核心方法与框架》《NIO与Socket编程技术指南》《Java EE核心框架实战(第2版)》《Jasper Reports+iReport报表开发详解》《Android学习精要》等书籍。

章节目录

版权信息

内容提要

前言

资源与支持

第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资源

JavaEE实战精粹:MyBatis+Spring+SpringMVC是2020年由人民邮电出版社出版,作者高洪岩。

得书感谢您对《JavaEE实战精粹:MyBatis+Spring+SpringMVC》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
JavaScript悟道 电子书
与大宗师道格拉斯一起,痛并快乐地用好JavaScript。
Java架构师指南 电子书
知名Java专家多年经验总结,介绍从程序员进阶到架构师需要具备的技能的完整教程 基于Java官方API的解读,从架构师的独特角度讲解Java知识和技能 企业级开发的经典示例,全程项目驱动,涵盖电商支付接口的综合调试 程序员走向架构师是必经之路。本书基于Java官方API进行解读,从架构师的角度讲解Java知识和技能,并从搭建虚拟机开始,学习常用的Linux命令,力争使程序员能在较短的时间内成功迈入架构师的殿堂。 近年来编程领域的知识愈加丰富,使广大程序员应接不暇。如何在有限的时间内高效学习是一个棘手的问题。本书作者根据自身的丰富经验,精选了Java中必须掌握的核心技能,并以项目为驱动,循序渐进,详细讲解了企业级项目和电商平台,让读者在学习知识的同时以实战加深印象,可谓是高屋建瓴。 如何能在短时间内达到架构师的水平?面对难以入手的海量知识,读者往往一头雾水,相信通过阅读本书,每位读者都能从中找到答案。
R语言编程:基于tidyverse 电子书
一本基于tidyverse入门R语言编程的书。
C/C++程序设计竞赛真题实战特训教程(图解版) 电子书
蓝桥杯C/C++备赛指南,提高编程思维和竞赛水平。
Angular开发入门与实战 电子书
深入浅出学Angular,实战驱动,快速提升开发实力。