图书介绍

Spring 3.x企业应用开发实战PDF|Epub|txt|kindle电子书版本网盘下载

Spring 3.x企业应用开发实战
  • 陈雄华,林开雄著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121152139
  • 出版时间:2012
  • 标注页数:710页
  • 文件大小:287MB
  • 文件页数:726页
  • 主题词:JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

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

热门推荐