Spring 3.X 企业应用开发实战 -- 目录
2015-08-25 21:58
956 查看
《Spring3.X企业应用开发实战》,陈雄华 林开雄著,电子工业出版社,2012.2出版。
如其名,这是一本偏向讲解如何使用Spring的书,偏向实战的书,是指导我们使用Spring这个基础框架,进行企业开发的最好入门书籍。
在2014年,有幸全部看完,断断续续的,也看了有2个月,收益良多,现在过去1年多了,很多细节已经忘记,不能准确描述出来,不过,如果有应用的场景,依然能从记忆中流出......
1.2 关于 SpringSource
1.3 Spring 带给我们什么
1.4 Spring 体系结构
1.5 Spring 3.0的新功能
核心API更新到 Java 5.0
Spring 表达式语言
可通过 Java 类提供IoC配置信息
通用类型转换系统和属性格式化系统
数据访问层新增OXM功能
Web层的增强
其他
1.6 Spring 对 Java 版本的要求
1.7 如何获取 Spring
1.8 小结
比 Hello World 更实用的实例
实例功能简介
2.2 环境准备
创建库表
建立工程
类包及 Spring 配置文件规划
2.3 持久层
建立领域对象
UserDao
LoginLogDao
在 Spring 中装配 DAO
2.4 业务层
UserService
在 Spring 中装配 Service
单元测试
2.5 展现层
配置 Spring MVC 框架
处理登录请求
JSP视图页面
2.6 运行Web应用
2.7 小结
通过实例理解 IoC 的概念
IoC 的类型
通过容器完成依赖关系的注入
3.2 相关 Java 基础知识
简单实例
类装载器 ClassLoader
Java 反射机制
3.3 资源访问利器
资源抽象接口
资源加载
3.4 BeanFactory 和 ApplicationContext
BeanFactory 介绍
ApplicationContext介绍
父子容器
3.5 Bean 的生命周期
BeanFactory 中 Bean 的生命周期
ApplicationContext 中 Bean 的生命周期
3.6 小结
Spring 容器高层视图
基于XML的配置
4.2 Bean 基本配置
装配一个Bean
Bean的命名
4.3 依赖注入
属性注入
构造函数注入
工厂方法注入
选择注入方式的考量
4.4 注入参数详解
字面值
引用其他 Bean
内部 Bean
null 值
级联属性
集合类型属性
简化配置方式
自动装配
4.5 方法注入
lookup 方法注入
方法替换
4.6 bean 之间的关系
继承
依赖
引用
4.7 整合多个配置文件
4.8 Bean 作用域
singleton 作用域
prototype 作用域
Web 应用环境相关的 Bean 作用域
作用域依赖问题
4.9 FactoryBean
4.10 基于注解的配置
使用注解定义 Bean
使用注解配置信息启动 Spring 容器
自动装配 Bean
Bean 作用范围及生命过程方法
4.11 基于 Java 类的配置
使用 Java 类提供 Bean 定义信息
使用基于 Java 类的配置信息启动 Spring 容器
4.12 不同配置方式比较
4.13 小结
内部工作机制
BeanDefinition
InstantiationStrategy
BeanWrapper
5.2 属性编辑器
JavaBean 的编辑器
Spring 默认属性编辑器
自定义属性编辑器
5.3 使用外部属性文件
使用外部属性文件
使用加密的属性文件
属性文件自身的引用
5.4 引用 Bean 的属性值
5.5 国际化信息
基础知识
MessageSource
容器级的国际化信息资源
5.6 容器事件
Spring 事件类结构
结构 Spring 事件体系的具体实现
一个实例
5.7 小结
AOP 到底是什么
AOP 术语
AOP 的实现者
6.2 基础知识
带有横切逻辑的实例
JDK 动态代理
CGLib 动态代理
AOP 联盟
代理知识小结
6.3 创建增强类
增强类型
前置增强
后置增强
环绕增强
异常抛出增强
引介增强
6.4 创建切面
切点类型
切面类型
静态普通方法名匹配切面
静态正则表达式方法匹配切面
动态切面
流程切面
复合切点切面
引介切面
6.5 自动创建代理
实现类介绍
BeanNameAutoProxyCreator
DefaultAdvisorAutoProxyCreator
6.6 小结
7.2 JDK 5.0 注解知识快速进阶
了解注解
一个简单的注解类
使用注解
访问注解
7.3 着手使用 @AspectJ
使用前的准备
一个简单的例子
如何通过配置使用 @AspectJ 切面
7.4 @AspectJ 语法基础
切点表达式函数
在函数入参中使用通配符
逻辑运算符
不同增强类型
引介增强用法
7.5 切点函数详解
@annotation()
execution()
args()和@args()
within()
@within()和@target()
target()的this()
7.6 @AspectJ 进阶
切点复合运算
命名切点
增强织入的顺序
访问连接点信息
绑定连接点方法入参
绑定代理对象
绑定类注解对象
绑定返回值
绑定抛出的异常
7.7 基于Schema 配置切面
一个简单切面的配置
配置命名切点
各种增强类型的配置
绑定连接点信息
Advisor配置
7.8 混合切面类型
混合使用各种切面类型
各种切面类型总结
7.9 JVM Class 文件字节码转换基础知识
java.lang.instrument 包的工作原理
如何向 JVM 中注册转换器
使用 JVM 启动参数注册转换器的问题
7.10 使用 LTW 织入切面
Spring 的 LoadTimeWeaver
使用 LTW 织入一个切面
在 Tomcat 下的配置
在其他Web应用服务器下的配置
7.11 小结
8.2 统一的异常体系
Spring的DAO异常体系
JDBC的异常转换器
其他持久技术的异常转换器
8.3 统一数据访问模板
使用模板和回调机制
Spring 为不同持久化技术所提供的模板类
8.4 数据源
配置一个数据源
获取 JNDI 数据源
Spring 的数据源实现类
8.5 小结
何为数据库事务
数据并发的问题
数据库锁机制
事务隔离级别
JDBC对事务支持
9.2 ThreadLocal 基础知识
ThreadLocal 是什么
ThreadLocal 的接口方法
一个ThreadLocal实例
与Thread同步机制的比较
Spring 使用 ThreadLocal解决线程安全问题
9.3 Spring 对事务管理的支持
事务管理关键抽象
Spring 的事务管理器实现类
事务同步管理器
事务传播行为
9.4 编程式的事务管理
9.5 使用 XML 配置声明式事务
一个将被实施事务增强的服务接口
使用原始的TransactionProxyFactoryBean
基于 tx/aop 命名空间的配置
9.6 使用注解配置声明式事务
使用 @Transaction 注解
通过 AspectJ LTW 引入事务切面
9.7 集成特定的应用服务器
BEA WebLogic
9.8 小结
JDBC 访问数据库
Hibernate 访问数据库
10.2 应用分层的迷惑
10.3 事务方法嵌套调用的迷茫
Spring 事务传播机制回顾
相互嵌套的服务方法
10.4 多线程的困惑
Spring 通过单实例化Bean简化多线程问题
启动独立线程调用事务方法
10.5 联合军种作战的混乱
Spring 事务管理器的应对
Hibernate+Spring JDBC 混合框架的事务管理
10.6 特殊方法成漏网之鱼
哪些方法不能实施 Spring AOP事务
事务增强遗漏实例
10.7 数据连接泄露
底层连接资源的访问问题
Spring JDBC 数据连接泄露
通过 DataSourceUtils 获取数据连接
JdbcTemplate如何做到对连接泄露的免疫
使用 TransactionAwareDataSourceProxy
其他数据访问技术的等价类
10.8 小结
JDBCTemplate 小试牛刀
在 DAO 中使用 JDBCTemplate
11.2 基本的数据操作
更改数据
返回数据库的表自增主键值
批量更改数据
查询数据
查询单值数据
调用存储过程
11.3 BLOB/CLOB 类型数据的操作
如何获取本地数据连接
相关的操作接口
插入 Lob 类型的数据
以块数据方式读取 Lob 数据
以流数据方式读取 Lob 数据
11.4 自增键和行集
自增键的使用
如何规划主键方案
以行集返回数据
11.5 其他类型的 JDBCTemplate
NamedParameterJDBCTemplate
SimpleJDBCTemplate
11.6 以 OO 方式访问数据库
使用 MappingSqlQuery 查询数据
使用 SqlUpdate 更新数据
使用 StoredProcedure 执行存储过程
SqlFunction 类
11.7 小结
12.2 在 Spring 中 使用Hibernate
配置 SessionFactory
使用 HibernateTemplate
处理 Lob 类型数据
添加 Hibernate 事件监听器
使用原生 Hibernate API
使用注解配置
事务处理
延迟加载的问题
12.3 在 Spring 中使用 MyBatis
配置 SqlMapClient
在 Spring 配置 MyBatis
编写 MyBatis 的DAO
12.5 DAO 层设计
DAO基类的设计
查询接口方法的设计
分页查询接口设计
12.6 小结
13.2 Quartz 快速进阶
Quartz 基础结构
使用 SimpleTrigger
使用 CronTrigger
使用调度信息存储
13.3 在 Spring 中使用 Quartz
创建 JobDetail
创建 Trigger
创建 Scheduler
13.4 Spring 中使用 JDK Timer
Timer 和 TimerTask
Spring 对JDK Timer 的支持
13.5 Spring 对JDK 5.0 Executor 的支持
了解 JDK 5.0 的 Executor
Spring 对 Executor 所提供的抽象
13.6 实际应用中的任务调度
如何产生任务
任务调度对应用程序集群的影响
任务调度云
Web 应用程序中调度器的启动和关闭问题
13.7 小结
什么是 XML
XML 的处理技术
14.2 XML 处理利器:XStream
XStream 概述
快速入门
使用 XStream 别名
XStream 转换器
XStream 注解
流化对象
持久化 API
额外功能:处理 JSON
14.3 其他常见 O/X Mapping开源项目
JAXB
XMLBeans
Castor
JiBX
总结比较
14.4 与 Spring OXM 整合
Spring OXM 概述
整合 OXM 实现者
如何在 Spring 中进行配置
Spring OXM 简单实例
14.5 小结
体系结构
配置 DispatcherServlet
一个简单的实例
15.2 注解驱动的控制器
使用 @RequestMapping 映射请求
请求处理方法签名概述
处理方法签名详细说明
使用 HttpMessageConverter<T>
处理模型数据
15.3 处理方法的数据绑定
数据绑定流程剖析
数据转换
数据格式化
数据校验
15.4 视图和视图解析器
认识视图
认识视图解析器
JSP 和 JSTL
模板视图
Excel
PDF
输出 XML
输出 JSON
使用 XmlViewResolver
使用 ResourceBundleViewResolver
混合使用多种视图技术
15.5 本地化解析
本地化概述
使用 CookieLocaleResolver
使用 SessionLocaleResolver
使用 LocaleChangeInterceptor
15.6 文件上传
配置 MultipartResolver
编写控制器和文件上传表单页面
15.7 杂项
静态资源处理
装配拦截器
异常处理
15.8 小结
为什么需要单元测试
单元测试之无解
单元测试之困境
单元测试基本概念
16.2 JUnit 4 快速进阶
JUnit 4 概述
JUnit 4 生命周期
使用 JUnit 4
16.3 模拟利器 Mockito
模拟测试概述
创建 Mock 对象
设定 Mock 对象的期望行为及返回值
验证交互行为
16.4 测试整合之王 Unitils
Unitils 概述
集成 Spring
集成 Hibernate
集成 Dbunit
自定义扩展模块
16.5 使用 Unitils 测试 DAO 层
数据库测试的难点
扩展 Dbunit 用 Excel 准备数据
测试实战
16.6 使用 Unitils 测试 Service 层
16.7 测试 Web 层
对 LoginController 进行单元测试
使用 Spring Servlet API 模拟对象
使用 Spring RestTemplate 测试
使用 Selenium 测试
16.8 小结
论坛整体功能结构
论坛用例概述
主要功能流程概述
17.2 系统设计
技术框架选择
Web 目录结构及类包结构规划
单元测试类包结构规划
系统的结构图
PO 的类设计
持久层设计
服务层设计
Web层设计
数据库设计
17.3 开发前的准备
17.4 持久层开发
PO 类
DAO 基类
通过扩展基类所定义 DAO 类
DAO Bean 的装配
使用 Hibernate 二级缓存
17.5 对持久层进行测试
配置 Unitils 测试环境
准备测试数据库及测试数据
编写 DAO 测试基类
编写 BoardDao 测试用例
17.6 服务层开发
UserService 的开发
ForumService 的开发
服务类 Bean 的装配
17.7 对服务层进行测试
编写 Service 测试基类
编写 ForumService 测试用例
17.8 Web 层开发
BaseController 的基类
用户登录和注销
用户注册
论坛管理
论坛普通功能
分页展示论坛版块的主题帖子
web.xml 配置
Spring MVC配置
17.9 对 Web 层进行测试
编写 Web 测试基类
编写 ForumManageController 测试用例
17.10 部署和运行应用
17.11 小结
如其名,这是一本偏向讲解如何使用Spring的书,偏向实战的书,是指导我们使用Spring这个基础框架,进行企业开发的最好入门书籍。
在2014年,有幸全部看完,断断续续的,也看了有2个月,收益良多,现在过去1年多了,很多细节已经忘记,不能准确描述出来,不过,如果有应用的场景,依然能从记忆中流出......
概述
第1章 Spring概述
1.1 认识 Spring1.2 关于 SpringSource
1.3 Spring 带给我们什么
1.4 Spring 体系结构
1.5 Spring 3.0的新功能
核心API更新到 Java 5.0
Spring 表达式语言
可通过 Java 类提供IoC配置信息
通用类型转换系统和属性格式化系统
数据访问层新增OXM功能
Web层的增强
其他
1.6 Spring 对 Java 版本的要求
1.7 如何获取 Spring
1.8 小结
第2章 快速入门
2.1 实例功能概述比 Hello World 更实用的实例
实例功能简介
2.2 环境准备
创建库表
建立工程
类包及 Spring 配置文件规划
2.3 持久层
建立领域对象
UserDao
LoginLogDao
在 Spring 中装配 DAO
2.4 业务层
UserService
在 Spring 中装配 Service
单元测试
2.5 展现层
配置 Spring MVC 框架
处理登录请求
JSP视图页面
2.6 运行Web应用
2.7 小结
IoC 和 AOP
第3章 IoC 容器概述
3.1 IoC 概述通过实例理解 IoC 的概念
IoC 的类型
通过容器完成依赖关系的注入
3.2 相关 Java 基础知识
简单实例
类装载器 ClassLoader
Java 反射机制
3.3 资源访问利器
资源抽象接口
资源加载
3.4 BeanFactory 和 ApplicationContext
BeanFactory 介绍
ApplicationContext介绍
父子容器
3.5 Bean 的生命周期
BeanFactory 中 Bean 的生命周期
ApplicationContext 中 Bean 的生命周期
3.6 小结
第4章 在 IoC 容器中装配 Bean
4.1 Spring 配置概述Spring 容器高层视图
基于XML的配置
4.2 Bean 基本配置
装配一个Bean
Bean的命名
4.3 依赖注入
属性注入
构造函数注入
工厂方法注入
选择注入方式的考量
4.4 注入参数详解
字面值
引用其他 Bean
内部 Bean
null 值
级联属性
集合类型属性
简化配置方式
自动装配
4.5 方法注入
lookup 方法注入
方法替换
4.6 bean 之间的关系
继承
依赖
引用
4.7 整合多个配置文件
4.8 Bean 作用域
singleton 作用域
prototype 作用域
Web 应用环境相关的 Bean 作用域
作用域依赖问题
4.9 FactoryBean
4.10 基于注解的配置
使用注解定义 Bean
使用注解配置信息启动 Spring 容器
自动装配 Bean
Bean 作用范围及生命过程方法
4.11 基于 Java 类的配置
使用 Java 类提供 Bean 定义信息
使用基于 Java 类的配置信息启动 Spring 容器
4.12 不同配置方式比较
4.13 小结
第5章 Spring 容器高级主题
5.1 Spring 容器技术内幕内部工作机制
BeanDefinition
InstantiationStrategy
BeanWrapper
5.2 属性编辑器
JavaBean 的编辑器
Spring 默认属性编辑器
自定义属性编辑器
5.3 使用外部属性文件
使用外部属性文件
使用加密的属性文件
属性文件自身的引用
5.4 引用 Bean 的属性值
5.5 国际化信息
基础知识
MessageSource
容器级的国际化信息资源
5.6 容器事件
Spring 事件类结构
结构 Spring 事件体系的具体实现
一个实例
5.7 小结
第6章 Spring AOP 基础
6.1 AOP 概述AOP 到底是什么
AOP 术语
AOP 的实现者
6.2 基础知识
带有横切逻辑的实例
JDK 动态代理
CGLib 动态代理
AOP 联盟
代理知识小结
6.3 创建增强类
增强类型
前置增强
后置增强
环绕增强
异常抛出增强
引介增强
6.4 创建切面
切点类型
切面类型
静态普通方法名匹配切面
静态正则表达式方法匹配切面
动态切面
流程切面
复合切点切面
引介切面
6.5 自动创建代理
实现类介绍
BeanNameAutoProxyCreator
DefaultAdvisorAutoProxyCreator
6.6 小结
第7章 基于 @AspectJ 和 Schema 的 AOP
7.1 Spring 对 AOP 的支持7.2 JDK 5.0 注解知识快速进阶
了解注解
一个简单的注解类
使用注解
访问注解
7.3 着手使用 @AspectJ
使用前的准备
一个简单的例子
如何通过配置使用 @AspectJ 切面
7.4 @AspectJ 语法基础
切点表达式函数
在函数入参中使用通配符
逻辑运算符
不同增强类型
引介增强用法
7.5 切点函数详解
@annotation()
execution()
args()和@args()
within()
@within()和@target()
target()的this()
7.6 @AspectJ 进阶
切点复合运算
命名切点
增强织入的顺序
访问连接点信息
绑定连接点方法入参
绑定代理对象
绑定类注解对象
绑定返回值
绑定抛出的异常
7.7 基于Schema 配置切面
一个简单切面的配置
配置命名切点
各种增强类型的配置
绑定连接点信息
Advisor配置
7.8 混合切面类型
混合使用各种切面类型
各种切面类型总结
7.9 JVM Class 文件字节码转换基础知识
java.lang.instrument 包的工作原理
如何向 JVM 中注册转换器
使用 JVM 启动参数注册转换器的问题
7.10 使用 LTW 织入切面
Spring 的 LoadTimeWeaver
使用 LTW 织入一个切面
在 Tomcat 下的配置
在其他Web应用服务器下的配置
7.11 小结
数据访问
第8章 Spring 对 DAO 的支持
8.1 Spring的DAO理念8.2 统一的异常体系
Spring的DAO异常体系
JDBC的异常转换器
其他持久技术的异常转换器
8.3 统一数据访问模板
使用模板和回调机制
Spring 为不同持久化技术所提供的模板类
8.4 数据源
配置一个数据源
获取 JNDI 数据源
Spring 的数据源实现类
8.5 小结
第9章 Spring 的事务管理
9.1 数据库事务基础知识何为数据库事务
数据并发的问题
数据库锁机制
事务隔离级别
JDBC对事务支持
9.2 ThreadLocal 基础知识
ThreadLocal 是什么
ThreadLocal 的接口方法
一个ThreadLocal实例
与Thread同步机制的比较
Spring 使用 ThreadLocal解决线程安全问题
9.3 Spring 对事务管理的支持
事务管理关键抽象
Spring 的事务管理器实现类
事务同步管理器
事务传播行为
9.4 编程式的事务管理
9.5 使用 XML 配置声明式事务
一个将被实施事务增强的服务接口
使用原始的TransactionProxyFactoryBean
基于 tx/aop 命名空间的配置
9.6 使用注解配置声明式事务
使用 @Transaction 注解
通过 AspectJ LTW 引入事务切面
9.7 集成特定的应用服务器
BEA WebLogic
9.8 小结
第10章 Spring 的事务管理难点剖析
10.1 DAO 和事务管理的牵绊JDBC 访问数据库
Hibernate 访问数据库
10.2 应用分层的迷惑
10.3 事务方法嵌套调用的迷茫
Spring 事务传播机制回顾
相互嵌套的服务方法
10.4 多线程的困惑
Spring 通过单实例化Bean简化多线程问题
启动独立线程调用事务方法
10.5 联合军种作战的混乱
Spring 事务管理器的应对
Hibernate+Spring JDBC 混合框架的事务管理
10.6 特殊方法成漏网之鱼
哪些方法不能实施 Spring AOP事务
事务增强遗漏实例
10.7 数据连接泄露
底层连接资源的访问问题
Spring JDBC 数据连接泄露
通过 DataSourceUtils 获取数据连接
JdbcTemplate如何做到对连接泄露的免疫
使用 TransactionAwareDataSourceProxy
其他数据访问技术的等价类
10.8 小结
第11章 使用 Spring JDBC 访问数据库
11.1 使用 Spring JDBCJDBCTemplate 小试牛刀
在 DAO 中使用 JDBCTemplate
11.2 基本的数据操作
更改数据
返回数据库的表自增主键值
批量更改数据
查询数据
查询单值数据
调用存储过程
11.3 BLOB/CLOB 类型数据的操作
如何获取本地数据连接
相关的操作接口
插入 Lob 类型的数据
以块数据方式读取 Lob 数据
以流数据方式读取 Lob 数据
11.4 自增键和行集
自增键的使用
如何规划主键方案
以行集返回数据
11.5 其他类型的 JDBCTemplate
NamedParameterJDBCTemplate
SimpleJDBCTemplate
11.6 以 OO 方式访问数据库
使用 MappingSqlQuery 查询数据
使用 SqlUpdate 更新数据
使用 StoredProcedure 执行存储过程
SqlFunction 类
11.7 小结
第12章 整合其他ORM框架
12.1 Spring 整合ORM技术12.2 在 Spring 中 使用Hibernate
配置 SessionFactory
使用 HibernateTemplate
处理 Lob 类型数据
添加 Hibernate 事件监听器
使用原生 Hibernate API
使用注解配置
事务处理
延迟加载的问题
12.3 在 Spring 中使用 MyBatis
配置 SqlMapClient
在 Spring 配置 MyBatis
编写 MyBatis 的DAO
12.5 DAO 层设计
DAO基类的设计
查询接口方法的设计
分页查询接口设计
12.6 小结
业务层及Web层技术
第13章 任务调度和异步执行器
13.1 任务调度概述13.2 Quartz 快速进阶
Quartz 基础结构
使用 SimpleTrigger
使用 CronTrigger
使用调度信息存储
13.3 在 Spring 中使用 Quartz
创建 JobDetail
创建 Trigger
创建 Scheduler
13.4 Spring 中使用 JDK Timer
Timer 和 TimerTask
Spring 对JDK Timer 的支持
13.5 Spring 对JDK 5.0 Executor 的支持
了解 JDK 5.0 的 Executor
Spring 对 Executor 所提供的抽象
13.6 实际应用中的任务调度
如何产生任务
任务调度对应用程序集群的影响
任务调度云
Web 应用程序中调度器的启动和关闭问题
13.7 小结
第14章 使用 OXM 进行对象 XML 映射
14.1 认识 XML 解析技术什么是 XML
XML 的处理技术
14.2 XML 处理利器:XStream
XStream 概述
快速入门
使用 XStream 别名
XStream 转换器
XStream 注解
流化对象
持久化 API
额外功能:处理 JSON
14.3 其他常见 O/X Mapping开源项目
JAXB
XMLBeans
Castor
JiBX
总结比较
14.4 与 Spring OXM 整合
Spring OXM 概述
整合 OXM 实现者
如何在 Spring 中进行配置
Spring OXM 简单实例
14.5 小结
第15章 Spring MVC
15.1 Spring MVC 概述体系结构
配置 DispatcherServlet
一个简单的实例
15.2 注解驱动的控制器
使用 @RequestMapping 映射请求
请求处理方法签名概述
处理方法签名详细说明
使用 HttpMessageConverter<T>
处理模型数据
15.3 处理方法的数据绑定
数据绑定流程剖析
数据转换
数据格式化
数据校验
15.4 视图和视图解析器
认识视图
认识视图解析器
JSP 和 JSTL
模板视图
Excel
输出 XML
输出 JSON
使用 XmlViewResolver
使用 ResourceBundleViewResolver
混合使用多种视图技术
15.5 本地化解析
本地化概述
使用 CookieLocaleResolver
使用 SessionLocaleResolver
使用 LocaleChangeInterceptor
15.6 文件上传
配置 MultipartResolver
编写控制器和文件上传表单页面
15.7 杂项
静态资源处理
装配拦截器
异常处理
15.8 小结
测试及实战
第16章 实战型单元测试
16.1 单元测试概述为什么需要单元测试
单元测试之无解
单元测试之困境
单元测试基本概念
16.2 JUnit 4 快速进阶
JUnit 4 概述
JUnit 4 生命周期
使用 JUnit 4
16.3 模拟利器 Mockito
模拟测试概述
创建 Mock 对象
设定 Mock 对象的期望行为及返回值
验证交互行为
16.4 测试整合之王 Unitils
Unitils 概述
集成 Spring
集成 Hibernate
集成 Dbunit
自定义扩展模块
16.5 使用 Unitils 测试 DAO 层
数据库测试的难点
扩展 Dbunit 用 Excel 准备数据
测试实战
16.6 使用 Unitils 测试 Service 层
16.7 测试 Web 层
对 LoginController 进行单元测试
使用 Spring Servlet API 模拟对象
使用 Spring RestTemplate 测试
使用 Selenium 测试
16.8 小结
第17章 实战案例开发
17.1 论坛案例概述论坛整体功能结构
论坛用例概述
主要功能流程概述
17.2 系统设计
技术框架选择
Web 目录结构及类包结构规划
单元测试类包结构规划
系统的结构图
PO 的类设计
持久层设计
服务层设计
Web层设计
数据库设计
17.3 开发前的准备
17.4 持久层开发
PO 类
DAO 基类
通过扩展基类所定义 DAO 类
DAO Bean 的装配
使用 Hibernate 二级缓存
17.5 对持久层进行测试
配置 Unitils 测试环境
准备测试数据库及测试数据
编写 DAO 测试基类
编写 BoardDao 测试用例
17.6 服务层开发
UserService 的开发
ForumService 的开发
服务类 Bean 的装配
17.7 对服务层进行测试
编写 Service 测试基类
编写 ForumService 测试用例
17.8 Web 层开发
BaseController 的基类
用户登录和注销
用户注册
论坛管理
论坛普通功能
分页展示论坛版块的主题帖子
web.xml 配置
Spring MVC配置
17.9 对 Web 层进行测试
编写 Web 测试基类
编写 ForumManageController 测试用例
17.10 部署和运行应用
17.11 小结
相关文章推荐
- Spring揭秘 读书笔记 七 BeanFactory的启动分析
- [笔记][Java7并发编程实战手册]4.3 创建固定的线程执行器newFixedThreadPool线程池
- Java线程状态知识点
- Eclipse User Library Add/Edit/Remove
- spring 引入外部配置文件
- Struts2、SpringMVC、Servlet(Jsp)性能对比测试
- 解决Eclipse下面工程和文件乱码问题 [转载]
- JAVA - 垃圾回收
- Strurts2下导出Excel文件(含下载弹出框)
- Java连接MySQL
- 你必须知道的几种java容器(集合类)
- Java得到年在一个季度的错误的第一天
- eclipse配置jdk的src.zip源代码步骤
- JAVA问题总结之9--取模%运算
- Myeclipse中使用svn
- 简单原理介绍java反射(2)
- java_Collection_介绍
- java 学习笔记基础
- java多线程理解
- Java(十四)--创建窗口,添加按钮,接受事件