图书介绍
Spring 3.x企业应用开发实战PDF|Epub|txt|kindle电子书版本网盘下载
![Spring 3.x企业应用开发实战](https://www.shukui.net/cover/50/33871280.jpg)
- 陈雄华,林开雄著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121152139
- 出版时间:2012
- 标注页数:710页
- 文件大小:287MB
- 文件页数:726页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
Spring 3.x企业应用开发实战PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1篇 概述2
第1章 Spring概述2
1.1认识Spring3
1.2关于SpringSource4
1.3 Spring带给我们什么5
1.4 Spring体系结构6
1.5 Spring 3.0的新功能8
1.5.1核心API更新到Java 5.08
1.5.2 Spring表达式语言8
1.5.3可通过Java类提供IoC配置信息9
1.5.4通用类型转换系统和属性格式化系统10
1.5.5数据访问层新增OXM功能10
1.5.6 Web层的增强10
1.5.7其他11
1.6 Spring对Java版本的要求11
1.7如何获取Spring11
1.8小结12
第2章 快速入门13
2.1实例功能概述14
2.1.1比Hello World更适用的实例14
2.1.2实例功能简介14
2.2环境准备16
2.2.1创建库表16
2.2.2建立工程17
2.2.3类包及Spring配置文件规划19
2.3持久层20
2.3.1建立领域对象20
2.3.2 UserDao21
2.3.3 LoginLogDao24
2.3.4在Spring中装配DAO24
2.4业务层26
2.4.1 UserService26
2.4.2在Spring中装配Service27
2.4.3单元测试29
2.5展现层31
2.5.1配置Spring MVC框架31
2.5.2处理登录请求33
2.5.3 JSP视图页面35
2.6运行Web应用37
2.7小结38
第2篇 IoC和AOP40
第3章 IoC容器概述40
3.1 IoC概述41
3.1.1通过实例理解IoC的概念41
3.1.2 IoC的类型43
3.1.3通过容器完成依赖关系的注入45
3.2相关Java基础知识46
3.2.1简单实例46
3.2.2类装载器ClassLoader48
3.2.3 Java反射机制51
3.3资源访问利器53
3.3.1资源抽象接口53
3.3.2资源加载56
3.4 BeanFactory和ApplicationContext58
3.4.1 BeanFactory介绍58
3.4.2 ApplicationContext介绍61
3.4.3父子容器68
3.5 Bean的生命周期68
3.5.1 BeanFactory中Bean的生命周期68
3.5.2 ApplicationContext中Bean的生命周期77
3.6小结79
第4章 在IoC容器中装配Bean80
4.1 Spring配置概述81
4.1.1 Spring容器高层视图81
4.1.2基于XML的配置82
4.2 Bean基本配置84
4.2.1装配一个Bean84
4.2.2 Bean的命名85
4.3依赖注入86
4.3.1属性注入86
4.3.2构造函数注入89
4.3.3工厂方法注入93
4.3.4选择注入方式的考量94
4.4注入参数详解95
4.4.1字面值95
4.4.2引用其他Bean96
4.4.3.内部Bean98
4.4.4 null值98
4.4.5级联属性98
4.4.6集合类型属性99
4.4.7简化配置方式103
4.4.8自动装配106
4.5方法注入107
4.5.1 lookup方法注入107
4.5.2方法替换108
4.6 〈bean〉之间的关系109
4.6.1继承109
4.6.2依赖110
4.6.3引用111
4.7整合多个配置文件112
4.8 Bean作用域113
4.8.1 singleton作用域113
4.8.2 prototype作用域114
4.8.3 Web应用环境相关的Bean作用域115
4.8.4作用域依赖问题117
4.9 FactoryBean118
4.10基于注解的配置120
4.10.1使用注解定义Bean120
4.10.2使用注解配置信息启动Spring容器120
4.10.3自动装配Bean122
4.10.4 Bean作用范围及生命过程方法125
4.11基于Java类的配置127
4.11.1使用Java类提供Bean定义信息127
4.11.2使用基于Java类的配置信息启动Spring容器130
4.12不同配置方式比较132
4.13小结134
第5章 Spring容器高级主题135
5.1 Spring容器技术内幕136
5.1.1内部工作机制136
5.1.2 BeanDefiinition139
5.1.3 InstantiationStrategy140
5.1.4 BeanWrapper140
5.2属性编辑器141
5.2.1 JavaBean的编辑器142
5.2.2 Spring默认属性编辑器145
5.2.3自定义属性编辑器146
5.3使用外部属性文件149
5.3.1使用外部属性文件149
5.3.2使用加密的属性文件151
5.3.3属性文件自身的引用155
5.4引用Bean的属性值156
5.5国际化信息158
5.5.1基础知识158
5.5.2 MessageSource163
5.5.3容器级的国际化信息资源166
5.6容器事件167
5.6.1 Spring事件类结构168
5.6.2解构Spring事件体系的具体实现169
5.6.3一个实例170
5.7小结172
第6章 Spring AOP基础173
6.1 AOP概述174
6.1.1 AOP到底是什么174
6.1.2 AOP术语176
6.1.3 AOP的实现者178
6.2基础知识178
6.2.1带有横切逻辑的实例178
6.2.2 JDK动态代理181
6.2.3 CGLib动态代理184
6.2.4 AOP联盟186
6.2.5代理知识小结186
6.3创建增强类187
6.3.1增强类型187
6.3.2前置增强188
6.3.3后置增强192
6.3.4环绕增强193
6.3.5异常抛出增强194
6.3.6引介增强196
6.4创建切面199
6.4.1切点类型200
6.4.2切面类型201
6.4.3静态普通方法名匹配切面203
6.4.4静态正则表达式方法匹配切面205
6.4.5动态切面208
6.4.6流程切面211
6.4.7复合切点切面213
6.4.8引介切面215
6.5自动创建代理216
6.5.1实现类介绍217
6.5.2 BeanNameAutoProxyCreator217
6.5.3 DefaultAdvisorAutoProxyCreator219
6.6小结220
第7章 基于@AspectJ和Schema的AOP221
7.1 Spring对AOP的支持222
7.2 JDK 5.0注解知识快速进阶222
7.2.1了解注解222
7.2.2一个简单的注解类223
7.2.3使用注解224
7.2.4访问注解225
7.3着手使用@AspectJ226
7.3.1使用前的准备226
7.3.2一个简单的例子227
7.3.3如何通过配置使用@AspectJ切面229
7.4@AspectJ语法基础230
7.4.1切点表达式函数230
7.4.2在函数入参中使用通配符231
7.4.3逻辑运算符232
7.4.4不同增强类型232
7.4.5引介增强用法233
7.5切点函数详解235
7.5.1@annotation()235
7.5.2 execution()237
7.5.3 args()和@args()238
7.5.4 within()240
7.5.5@within()和@target()240
7.5.6 target()的this()241
7.6@AspectJ进阶243
7.6.1切点复合运算243
7.6.2命名切点244
7.6.3增强织入的顺序245
7.6.4访问连接点信息246
7.6.5绑定连接点方法入参247
7.6.6绑定代理对象249
7.6.7绑定类注解对象249
7.6.8绑定返回值250
7.6.9绑定抛出的异常251
7.7基于Schema配置切面252
7.7.1一个简单切面的配置252
7.7.2配置命名切点253
7.7.3各种增强类型的配置255
7.7.4绑定连接点信息257
7.7.5 Advisor配置258
7.8混合切面类型259
7.8.1混合使用各种切面类型260
7.8.2各种切面类型总结261
7.9 JVM Class文件字节码转换基础知识261
7.9.1 java.lang.instrument包的工作原理262
7.9.2如何向JVM中注册转换器263
7.9.3使用JVM启动参数注册转换器的问题265
7.10使用LTW织入切面265
7.10.1 Spring的LoadTimeWeaver266
7.10.2使用LTW织入一个切面268
7.10.3在Tomcat下的配置270
7.10.4在其他Web应用服务器下的配置271
7.11小结271
第3篇 数据访问274
第8章 Spring对DAO的支持274
8.1 Spring的DAO理念275
8.2统一的异常体系275
8.2.1 Spring的DAO异常体系276
8.2.2 JDBC的异常转换器278
8.2.3其他持久技术的异常转换器278
8.3统一数据访问模板279
8.3.1使用模板和回调机制279
8.3.2 Spring为不同持久化技术所提供的模板类281
8.4数据源282
8.4.1配置一个数据源282
8.4.2获取JNDI数据源287
8.4.3 Spring的数据源实现类287
8.5小结288
第9章 Spring的事务管理289
9.1数据库事务基础知识290
9.1.1何为数据库事务290
9.1.2数据并发的问题291
9.1.3数据库锁机制293
9.1.4事务隔离级别294
9.1.5 JDBC对事务支持294
9.2 ThreadLocal基础知识296
9.2.1 ThreadLocal是什么296
9.2.2 ThreadLocal的接口方法297
9.2.3一个TheadLocal实例298
9.2.4与Thread同步机制的比较299
9.2.5 Spring使用ThreadLocal解决线程安全问题300
9.3 Spring对事务管理的支持301
9.3.1事务管理关键抽象302
9.3.2 Spring的事务管理器实现类305
9.3.3事务同步管理器307
9.3.4事务传播行为309
9.4编程式的事务管理309
9.5使用XML配置声明式事务310
9.5.1一个将被实施事务增强的服务接口312
9.5.2使用原始的TransactionProxyFactoryBean313
9.5.3基于tx/aop命名空间的配置315
9.6使用注解配置声明式事务318
9.6.1使用@Transactional注解318
9.6.2通过AspectJ LTW引入事务切面322
9.7集成特定的应用服务器323
9.7.1 BEA WebLogic324
9.7.2 BEA WebLogic324
9.8小结324
第10章 Spring的事务管理难点剖析325
10.1 DAO和事务管理的牵绊326
10.1.1 JDBC访问数据库326
10.1.2 Hibernate访问数据库328
10.2应用分层的迷惑330
10.3事务方法嵌套调用的迷茫334
10.3.1 Spring事务传播机制回顾334
10.3.2相互嵌套的服务方法335
10.4多线程的困惑338
10.4.1 Spring通过单实例化Bean简化多线程问题338
10.4.2启动独立线程调用事务方法338
10.5联合军种作战的混乱340
10.5.1 Spring事务管理器的应对340
10.5.2 Hibernate+Spring JDBC混合框架的事务管理341
10.6 特殊方法成漏网之鱼345
10.6.1哪些方法不能实施Spring AOP事务345
10.6.2事务增强遗漏实例345
10.7数据连接泄漏349
10.7.1底层连接资源的访问问题349
10.7.2 Spring JDBC数据连接泄漏350
10.7.3通过DataSourceUtils获取数据连接353
10.7.4通过DataSourceUtils获取数据连接355
10.7.5 JdbcTemplate如何做到对连接泄漏的免疫357
10.7.6使用TransactionAwareData SourceProxy357
10.7.7其他数据访问技术的等价类358
10.8小结359
第11章 使用Spring JDBC访问数据库361
11.1使用Spring JDBC362
11.1.1 JDBCTemplate小试牛刀362
11.1.2在DAO中使用JDBCTemplate363
11.2基本的数据操作364
11.2.1更改数据364
11.2.2返回数据库的表自增主键值367
11.2.3批量更改数据369
11.2.4查询数据370
11.2.5查询单值数据373
11.2.6调用存储过程375
11.3 BLOB/CLOB类型数据的操作377
11.3.1如何获取本地数据连接377
11.3.2相关的操作接口379
11.3.3插入Lob类型的数据380
11.3.4以块数据方式读取Lob数据383
11.3.5以流数据方式读取Lob数据383
11.4自增键和行集384
11.4.1自增键的使用384
11.4.2如何规划主键方案386
11.4.3以行集返回数据388
11.5其他类型的JDBCTemplate389
11.5.1 NamedParameterJDBCTemplate389
11.5.2 SimpleJDBCTemplate391
11.6以OO方式访问数据库391
11.6.1使用MappingSqlQuery查询数据391
11.6.2使用SqlUpdate更新数据393
11.6.3使用StoredProcedure执行存储过程394
11.6.4 SqlFunction类396
11.7小结396
第12章 整合其他ORM框架398
12.1 Spring整合ORM技术399
12.2在Spring中使用Hibernate400
12.2.1配置SessionFactory400
12.2.2使用HibernateTemplate403
12.2.3处理LOB类型数据407
12.2.4添加Hibernate事件监听器409
12.2.5使用原生Hibernate API409
12.2.6使用注解配置410
12.2.7事务处理412
12.2.8延迟加载的问题413
12.3在Spring中使用myBatis414
12.3.1配置SqlMapClient415
12.3.2在Spring配置myBatis416
12.3.3编写myBatis的DAO417
12.5 DAO层设计420
12.5.1 DAO基类的设计421
12.5.2查询接口方法的设计423
12.5.3分页查询接口设计424
12.6小结425
第4篇 业务层及Web层技术428
第13章 任务调度和异步执行器428
13.1任务调度概述429
13.2 Quartz快速进阶429
13.2.1 Quartz基础结构430
13.2.2使用SimpleTrigger432
13.2.3使用CronTrigger434
13.2.4使用Calendar437
13.2.5任务调度信息存储439
13.3在Spring中使用Quartz442
13.3.1创建JobDetail442
13.3.2创建Trigger444
13.3.3创建Scheduler446
13.4 Spring中使用JDK Timer447
13.4.1 Timer和TimerTask448
13.4.2 Spring对JDK Timer的支持450
13.5 Spring对JDK 5.0 Executor的支持451
13.5.1了解JDK 5.0的Executor452
13.5.2 Spring对Executor所提供的抽象454
13.6实际应用中的任务调度455
13.6.1如何产生任务456
13.6.2任务调度对应用程序集群的影响457
13.6.3任务调度云458
13.6.4 Web应用程序中调度器的启动和关闭问题460
13.7小结462
第14章 使用OXM进行对象XML映射463
14.1认识XML解析技术464
14.1.1什么是XML464
14.1.2 XML的处理技术464
14.2 XML处理利器:XStream466
14.2.1 XStream概述466
14.2.2快速入门466
14.2.3使用XStream别名469
14.2.4 XStream转换器470
14.2.5 XStream注解472
14.2.6流化对象474
14.2.7持久化API475
14.2.8额外功能:处理JSON476
14.3其他常见O/X Mapping开源项目478
14.3.1 JAXB478
14.3.2 XMLBeans482
14.3.3 Castor485
14.3.4 JiBX490
14.3.5总结比较493
14.4与Spring OXM整合494
14.4.1 Spring OXM概述494
14.4.2整合OXM实现者496
14.4.3如何在Spring中进行配置497
14.4.4 Spring OXM简单实例499
14.5小结501
第15章 Spring MVC503
15.1 Spring MVC概述504
15.1.1体系结构504
15.1.2配置DispatcherServlet505
15.1.3一个简单的实例510
15.2注解驱动的控制器514
15.2.1使用@RequestMapping映射请求514
15.2.2请求处理方法签名概述518
15.2.3处理方法签名详细说明519
15.2.4使用HttpMessageConverter〈T〉523
15.2.5处理模型数据532
15.3处理方法的数据绑定538
15.3.1数据绑定流程剖析539
15.3.2数据转换539
15.3.3数据格式化545
15.3.4数据校验549
15.4视图和视图解析器558
15.4.1认识视图558
15.4.2认识视图解析器560
15.4.3 JSP和JSTL561
15.4.4模板视图565
15.4.5 Excel569
15.4.6 PDF570
15.4.7输出XML572
15.4.8输出JSON573
15.4.9使用XmlViewResolver573
15.4.10使用ResourceBundle ViewResolver574
15.4.11 混合使用多种视图技术575
15.5本地化解析577
15.5.1本地化概述577
15.5.2使用CookieLocaleResolver578
15.5.3使用SessionLocaleResolver579
15.5.4使用LocaleChangeInterceptor579
15.6文件上传579
15.6.1配置MultipartResolver580
15.6.2编写控制器和文件上传表单页面580
15.7杂项581
15.7.1静态资源处理581
15.7.2装配拦截器586
15.7.3异常处理587
15.8小结589
第5篇 测试及实战592
第16章 实战型单元测试592
16.1单元测试概述593
16.1.1为什么需要单元测试593
16.1.2单元测试之误解594
16.1.3单元测试之困境595
16.1.4单元测试基本概念596
16.2 JUnit 4快速进阶600
16.2.1 JUnit 4概述600
16.2.2 JUnit 4生命周期601
16.2.3使用JUnit 4601
16.3模拟利器Mockito608
16.3.1模拟测试概述608
16.3.2创建Mock对象608
16.3.3设定Mock对象的期望行为及返回值609
16.3.4验证交互行为611
16.4测试整合之王Unitils612
16.4.1 Unitils概述612
16.4.2集成Spring615
16.4.3集成Hibernate618
16.4.4集成Dbunit619
16.4.5自定义扩展模块620
16.5使用Unitils测试DAO层620
16.5.1数据库测试的难点621
16.5.2扩展Dbunit用Excel准备数据621
16.5.3测试实战624
16.6使用unitils测试Service层634
16.7测试Web层639
16.7.1对LoginController进行单元测试640
16.7.2使用Spring Servlet API模拟对象641
16.7.3使用Spring RestTemplate测试642
16.7.4使用Selenium测试644
16.8小结647
第17章 实战案例开发648
17.1论坛案例概述649
17.1.1论坛整体功能结构649
17.1.2论坛用例描述649
17.1.3主要功能流程描述651
17.2系统设计655
17.2.1技术框架选择655
17.2.2 Web目录结构及类包结构规划656
17.2.3单元测试类包结构规划657
17.2.4系统的结构图657
17.2.5 PO的类设计658
17.2.6持久层设计659
17.2.7服务层设计659
17.2.8 Web层设计660
17.2.9数据库设计661
17.3开发前的准备663
17.4持久层开发664
17.4.1 PO类664
17.4.2 DAO基类666
17.4.3通过扩展基类所定义DAO类671
17.4.4 DAO Bean的装配672
17.4.5使用Hibernate二级缓存674
17.5对持久层进行测试676
17.5.1配置Unitils测试环境676
17.5.2准备测试数据库及测试数据677
17.5.3编写DAO测试基类678
17.5.4编写BoardDao测试用例678
17.6服务层开发680
17.6.1 UserService的开发680
17.6.2 ForumService的开发682
17.6.3服务类Bean的装配685
17.7对服务层进行测试686
17.7.1编写Service测试基类687
17.7.2编写ForumService测试用例687
17.8 Web层开发689
17.8.1 BaseController的基类689
17.8.2用户登录和注销691
17.8.3用户注册692
17.8.4论坛管理694
17.8.5论坛普通功能696
17.8.6分页显示论坛版块的主题帖子698
17.8.7 web.xml配置702
17.8.8 Spring MVC配置704
17.9对Web层进行测试705
17.9.1编写Web测试基类705
17.9.2编写ForumManageController测试用例706
17.10部署和运行应用707
17.11小结710
附录A JavaMail发送邮件711
附录B在Spring中开发Web Service738