图书介绍

精通Spring 2.x 企业应用开发详解2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

精通Spring 2.x 企业应用开发详解
  • 陈雄华著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121047930
  • 出版时间:2007
  • 标注页数:788页
  • 文件大小:180MB
  • 文件页数:807页
  • 主题词:JAVA语言-程序设计

PDF下载


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

下载说明

精通Spring 2.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 Spring带给我们什么5

1.3 Spring体系结构6

1.4 Spring 2.0的新功能7

1.4.1 简化配置文件编写,增强配置文件的扩展性7

1.4.2 新Bean的作用域8

1.4.3 AOP的增强8

1.4.4 持久层的增强8

1.4.5 展现层的增强8

1.4.6 其他9

1.5 Spring对Java版本的要求9

1.6 如何获取Spring9

1.7 Spring项目文件结构11

1.8 Spring的子项目16

1.8.1 Spring Web Flow16

1.8.2 Spring Web Services16

1.8.3 Spring Security(Acegi Security)17

1.8.4 Spnng LDAP17

1.8.5 Spring Rich Client17

1.8.6 Spring Extensions Modules17

1.8.7 Spring IDE for Eclipse17

1.8.8 Spring BeanDoc18

1.8.9 Spring OSGi18

1.8.10 Spring.NET18

1.9 和Spring相似的框架18

1.9.1 PicoContainer18

1.9.2 NanoContainer19

1.9.3 Google Guice19

1.9.4 Jdon Framework19

1.10 小结19

第2章 快速入门20

2.1 实例功能概述21

2.1.1 比Hello World更适用的实例21

2.1.2 实例功能简介21

2.2 环境准备23

2.2.1 创建库表23

2.2.2 建立工程24

2.2.3 类包及Spring配置文件规划25

2.3 持久层26

2.3.1 建立领域对象27

2.3.2 UserDao28

2.3.3 LoginLogDao30

2.3.4 在Spring中装配DAO31

2.4 业务层32

2.4.1 UserService32

2.4.2 在Spring中装配Service34

2.4.3 单元测试35

2.5 展现层37

2.5.1 配置Spring MVC框架37

2.5.2 处理登录请求39

2.5.3 JSP视图页面42

2.6 打包和部署44

2.6.1 通过Ant打包44

2.6.2 在Tomcat中部署46

2.7 小结47

第2篇 Spring核心技术50

第3章 IoC容器概述50

3.1 IoC概述51

3.1.1 通过实例理解IoC的概念51

3.1.2 IoC的类型53

3.1.3 通过容器完成依赖关系的建立55

3.2 相关Java基础知识56

3.2.1 简单实例56

3.2.2 类装载器ClassLoader58

3.2.3 Java反射机制60

3.3 BeanFactory和ApplicationContext62

3.3.1 BeanFactory介绍62

3.3.2 ApplicationContext介绍66

3.3.3 父子容器71

3.4 Bean的生命周期72

3.4.1 BeanFactory中Bean的生命周期72

3.4.2 ApplicationContext中Bean的生命周期80

3.5 小结82

第4章 在IoC容器中装配Bean83

4.1 Spring配置文档类型84

4.2 Bean基本配置86

4.2.1 装配一个Bean86

4.2.2 Bean的命名86

4.3 依赖注入87

4.3.1 属性注入87

4.3.2 构造函数注入90

4.3.3 工厂方法注入94

4.3.4 选择注入方式的考量95

4.4 注入参数详解96

4.4.1 字面值96

4.4.2 引用其他Bean97

4.4.3 内部Bean98

4.4.4 null值99

4.4.5 级联属性99

4.4.6 集合类型属性100

4.4.7 简化配置方式103

4.4.8 自动装配104

4.5 方法注入109

4.5.1 lookup方法注入109

4.5.2 方法替换110

4.6 <bean>之间的关系111

4.6.1 继承112

4.6.2 依赖113

4.6.3 引用114

4.7 Bean作用域115

4.7.1 singleton作用域115

4.7.2 prototype作用域117

4.7.3 Web应用环境相关的Bean作用域117

4.7.4 作用域依赖问题119

4.8 FactoryBean120

4.8.1 FactoryBean的工作方式121

4.8.2 集合FactoryBean122

4.8.3 属性FactoryBean124

4.9 小结126

第5章 Spring容器高级主题127

5.1 Spring容器技术内幕128

5.1.1 内部工作机制128

5.1.2 BeanDefinition130

5.1.3 InstantiationStrategy132

5.1.4 BeanWrapper132

5.2 属性编辑器133

5.2.1 JavaBean的编辑器133

5.2.2 Spring默认属性编辑器137

5.2.3 自定义属性编辑器137

5.3 使用外部属性文件140

5.3.1 使用外部属性文件141

5.3.2 使用加密的属性文件142

5.4 国际化信息147

5.4.1 基础知识147

5.4.2 MessageSource153

5.4.3 容器级的国际化信息资源156

5.5 容器事件157

5.5.1 Spring事件类结构157

5.5.2 解构Spring事件体系的具体实现159

5.5.3 一个实例159

5.6 小结161

第6章 Spring AOP基础162

6.1 AOP概述163

6.1.1 AOP到底是什么163

6.1.2 AOP术语165

6.1.3 AOP的实现者167

6.2 基础知识167

6.2.1 带有横切逻辑的实例168

6.2.2 JDK动态代理170

6.2.3 CGLib动态代理173

6.2.4 AOP联盟175

6.2.5 代理知识小结175

6.3 创建增强类176

6.3.1 增强类型176

6.3.2 前置增强177

6.3.3 后置增强181

6.3.4 环绕增强183

6.3.5 异常抛出增强184

6.3.6 引介增强186

6.4 创建切面189

6.4.1 切点类型189

6.4.2 切面类型190

6.4.3 静态普通方法名匹配切面192

6.4.4 静态正则表达式方法匹配切面194

6.4.5 动态切面197

6.4.6 流程切面201

6.4.7 复合切点切面203

6.4.8 引介切面205

6.5 自动创建代理206

6.5.1 实现类介绍206

6.5.2 BearnNameAutoProxyCreator207

6.5.3 DefaultAdvisorAutoProxyCreator209

6.6 小结210

第7章 基于@AspectJ和Schema的AOP211

7.1 Spring 2.0对AOP的支持212

7.2 JDK5.0注解知识快速进阶212

7.2.1 了解注解212

7.2.2 一个简单的注解类213

7.2.3 使用注解214

7.2.4 访问注解215

7.3 着手使用@AspectJ216

7.3.1 使用前的准备216

7.3.2 一个简单的例子216

7.3.3 如何通过配置使用@AspectJ切面218

7.4 @AspectJ语法基础219

7.4.1 切点表达式函数220

7.4.2 在函数入参中使用通配符221

7.4.3 逻辑运算符221

7.4.4 不同增强类型222

7.4.5 引介增强用法223

7.5 切点函数详解225

7.5.1 @annotation()225

7.5.2 execution()226

7.5.3 args()和@args()228

7.5.4 within()229

7.5.5 @within()和@target()230

7.5.6 target()的this()231

7.6 @AspectJ进阶233

7.6.1 切点复合运算233

7.6.2 命名切点234

7.6.3 增强织入的顺序235

7.6.4 访问连接点信息236

7.6.5 绑定连接点方法入参237

7.6.6 绑定代理对象239

7.6.7 绑定类注解对象240

7.6.8 绑定返回值240

7.6.9 绑定抛出的异常241

7.7 基于Schema配置切面242

7.7.1 一个简单切面的配置242

7.7.2 配置命名切点244

7.7.3 各种增强类型的配置245

7.7.4 绑定连接点信息248

7.7.5 Advisor配置249

7.8 混合切面类型249

7.8.1 混合使用各种切面类型250

7.8.2 各种切面类型总结251

7.9 集成AspectJ252

7.9.1 使用AspectJ LTW252

7.9.2 管理容器外的对象253

7.9.3 使用Spring IoC管理AspectJ切面258

7.10 小结259

第3篇 数据库访问262

第8章 Spring对DAO的支持262

8.1 Spring的DAO理念263

8.2 统一的异常体系263

8.2.1 Spring的DAO异常体系263

8.2.2 JDBC的异常转换器265

8.2.3 其他持久技术的异常转换器266

8.3 统一数据访问模板266

8.3.1 使用模板和回调机制267

8.3.2 Spring为不同持久化技术所提供的模板类269

8.4 数据源270

8.4.1 配置一个数据源270

8.4.2 获取JNDI数据源273

8.4.3 Spring的数据源实现类273

8.5 小结274

第9章 Spring的事务管理275

9.1 数据库事务基础知识276

9.1.1 何为数据库事务276

9.1.2 数据并发的问题277

9.1.3 数据库锁机制279

9.1.4 事务隔离级别280

9.1.5 JDBC对事务支持281

9.2 ThreadLocal基础知识282

9.2.1 ThreadLocal是什么283

9.2.2 ThreadLocal的接口方法283

9.2.3 一个TheadLocal实例284

9.2.4 Thread同步机制的比较285

9.2.5 Spring使用ThreadLocal解决线程安全问题286

9.3 Spring对事务管理的支持288

9.3.1 事务管理关键抽象288

9.3.2 Spring的事务管理器实现类291

9.3.3 事务同步管理器294

9.3.4 事务传播行为295

9.4 编程式的事务管理298

9.5 使用XML配置声明式事务299

9.5.1 一个需要事务配置的服务接口301

9.5.2 使用原始的TransactionProxy FactoryBean302

9.5.3 基于tx/aop命名空间的配置304

9.6 使用注解配置声明式事务307

9.6.1 使用@Transactional注解307

9.6.2 通过AspectJ LTW引入事务切面310

9.7 JTA事务管理311

9.7.1 集成JOTM,在Spring中配置JTA事务311

9.7.2 使用Tomcat/JOTM/Spring提供JTA事务315

9.7.3 在特定应用服务器使用JTA317

9.8 小结318

第10章 使用Spring JDBC访问数据库319

10.1 使用Spring JDBC320

10.1.1 JdbcTemplate小试牛刀320

10.1.2 通过JdbcDaoSupport使用Jdbc Template321

10.2 基本的数据操作322

10.2.1 更改数据322

10.2.2 返回数据库的表自增主键值324

10.2.3 批量更改数据326

10.2.4 查询数据327

10.2.5 查询单值数据330

10.2.6 调用存储过程331

10.3 BLOB/CLOB类型数据的操作334

10.3.1 如何获取本地数据连接334

10.3.2 相关的操作接口335

10.3.3 插入Lob类型的数据337

10.3.4 以块数据方式读取Lob数据339

10.3.5 以流数据方式读取Lob数据340

10.4 自增键和行集341

10.4.1 自增键的使用341

10.4.2 以行集返回数据344

10.5 其他类型的JdbcTemplate344

10.5.1 NamedParameterJdbcTemplate345

10.5.2 SimpleJdbcTemplate346

10.6 以OO方式访问数据库348

10.6.1 使用MappingSqlQuery查询数据348

10.6.2 使用SqlUpdate更新数据349

10.6.3 使用StoredProcedure执行存储过程350

10.6.4 SqlFunction类351

10.7 小结352

第11章 使用JPA访问数据库353

11.1 JPA概述354

11.1.1 什么是JPA354

11.1.2 JPA的发展及影响354

11.1.3 目前已经有哪些实现355

11.2 JPA快速进阶355

11.2.1 实体对象356

11.2.2 使用注解元数据357

11.2.3 使用XML元数据361

11.2.4 JPA的体系结构及重要的API363

11.2.5 JPA的查询语言365

11.3 使用LocalEntityManagerFactoryBean368

11.3.1 认识JpaTemplate368

11.3.2 使用JpaTemplate编写数据访问类369

11.3.3 编写相应的配置信息370

11.3.4 测试BbtForum373

11.4 JVM Class文件字节码转换基础知识374

11.4.1 java.lang.instrument包的工作原理374

11.4.2 如何向JVM中注册转换器375

11.4.3 使用JVM启动参数注册转换器的问题377

11.4.4 JPA的ClassTransformer SPI接口378

11.5 使用LocalContainerEntityManager FactoryBean378

11.5.1 相应的配置信息378

11.5.2 使用JVM代理启动参数实施织入器382

11.5.3 在测试环境下实施织入器382

11.5.4 作为Web应用部署时实施织入器383

11.5.5 处理多个持久化单元385

11.6 使用原生的JPA386

11.7 事务处理387

11.8 小结388

第12章 整合其他ORM框架389

12.1 Spring整合ORM技术390

12.2 在Spring中使用Hibernate391

12.2.1 配置SessionFactory391

12.2.2 使用HibernateTemplate394

12.2.3 处理LOB类型数据396

12.2.4 添加Hibernate事件监听器398

12.2.5 使用原生Hibernate API399

12.2.6 使用JPA注解的Hibernate399

12.2.7 事务处理401

12.2.8 延迟加载的问题401

12.3 在Spring中使用iBatis402

12.3.1 配置SqlMapClient403

12.3.2 使用SqlMapClientTemplate404

12.3.3 处理LOB类型数据405

12.4 混合使用多种持久化技术407

12.4.1 透析Spring中混合持久化技术的使用407

12.4.2 一个使用混合持久化技术的实例408

12.5 DAO层设计410

12.5.1 DAO基类的设计410

12.5.2 查询接口方法的设计412

12.6 小结414

第4篇 业务层应用416

第13章 任务调度和异步执行器416

13.1 任务调度概述417

13.2 Quartz快速进阶417

13.2.1 Quartz基础结构418

13.2.2 使用SimpleTrigger420

13.2.3 使用CronTrigger422

13.2.4 使用Calendar425

13.2.5 任务调度信息存储427

13.3 在Spring中使用Quartz430

13.3.1 创建JobDetail430

13.3.2 创建Trigger432

13.3.3 创建Scheduler434

13.4 Spring中使用JDK Timer435

13.4.1 Timer和TimerTask436

13.4.2 Spring对JDK Timer的支持438

13.5 Spring对JDK 5.0Executor的支持439

13.5.1 了解JDK 5.0的Executor440

13.5.2 Spring对Executor所提供的抽象442

13.6 实际应用中的任务调度443

13.6.1 如何产生任务444

13.6.2 任务调度对应用程序集群的影响446

13.6.3 Web应用程序中调度器的启动和关闭问题447

13.7 小结449

第14章 JavaMail发送邮件450

14.1 JavaMail快速进阶451

14.1.1 JavaMail概述451

14.1.2 JavaMail的关键对象452

14.1.3 使用JavaMail发送邮件456

14.1.4 处理SSL加密传输协议邮件458

14.2 Spring的邮件支持459

14.2.1 邮件发送高级抽象层459

14.2.2 Spring对JavaMail的支持461

14.3 发送各种形式的邮件464

14.3.1 发送纯文本邮件465

14.3.2 发送HTML类型的邮件466

14.3.3 发送带内嵌文件的邮件467

14.3.4 发送带附件的邮件468

14.3.5 发送纯文本和HTML双版本的邮件469

14.4 在实际应用中发送邮件471

14.4.1 使用邮件模板472

14.4.2 异步发送邮件474

14.5 小结475

第15章 在Spring中使用JMS477

15.1 JMS快速进阶478

15.1.1 JMS的两种消息类型479

15.1.2 JMS受管理的对象479

15.1.3 JMS的一些重要接口480

15.1.4 JMS消息的结构481

15.1.5 消息收发的机制483

15.1.6 发送消息484

15.1.7 接收消息485

15.2 JMS提供者487

15.2.1 JMS提供者概述487

15.2.2 使用ActiveMQ488

15.3 Spring对JMS的支持489

15.3.1 JMS模板类490

15.3.2 JMS异常映射491

15.4 使用回调接口发送/接收消息491

15.4.1 使用send()发送消息491

15.4.2 使用receive()接收消息494

15.4.3 使用execute()方法495

15.5 使用消息转换器发送/接收消息497

15.5.1 消息转换器497

15.5.2 发送POJO消息498

15.5.3 接收POJO消息500

15.6 消息过滤及异步消息接收500

15.6.1 对消息进行过滤接收501

15.6.2 消息监听器容器501

15.6.3 异步消息接收503

15.6.4 异步消息接收适配器504

15.7 JMS事务管理506

15.7.1 本地事务506

15.7.2 JTA事务507

15.7.3 消息重复接收问题508

15.8 小结509

第16章 在Spring中开发Web Service511

16.1 Web Service简介512

16.1.1 Web Service相关概念512

16.1.2 SOAP——简单对象传输协议513

16.1.3 WSDL——Web Service描述语言513

16.1.4 UDDI——统一描述、发现和集成514

16.2 XFire简介514

16.2.1 XFire特性515

16.2.2 XFire体系及重要API515

16.2.3 XFire类库说明517

16.3 将POJOBean导出为WebService518

16.3.1 使用导出器导出Web Service518

16.3.2 配置web.xml519

16.3.3 使用JSR 181注解导出Web Service521

16.4 各种客户端调用方式522

16.4.1 使用服务端的窄接口类522

16.4.2 使用WSDL文件构造客户端程序524

16.4.3 根据WSDL生成客户端代码525

16.5 Web Service的测试526

16.5.1 基于SOAP报文的纯服务端测试527

16.5.2 在JVM模式通过客户端进行测试529

16.6 Web Service安全530

16.6.1 认识WS-Security530

16.6.2 XFire应用WS-Security的总体方案531

16.7 使用WS-Security532

16.7.1 准备工作532

16.7.2 使用用户名/密码进行身份认证534

16.7.3 对SOAP报文进行数字签名539

16.7.4 对SOAP报文体进行加密542

16.7.5 组合安全策略546

16.8 小结550

第17章 使用Acegi实施应用系统安全552

17.1 认识Acegi553

17.1.1 Acegi概述553

17.1.2 Acegi体系结构554

17.1.3 重要组件类介绍556

17.1.4 用户认证过程558

17.1.5 安全对象访问控制559

17.1.6 Acegi版本升级的一些重大变化560

17.2 将Acegi集成到Web应用程序中561

17.2.1 代理Acegi的过滤器562

17.2.2 使用代理过滤器链对处理HTTP请求563

17.3 身份认证管理565

17.3.1 基于内存存储用户信息的身份认证565

17.3.2 基于数据库存储用户信息的认证570

17.3.3 密码加密问题572

17.3.4 成功登录系统的后置处理574

17.3.5 在多个请求之间共享SecurityContext575

17.3.6 退出系统的后置处理576

17.3.7 实施Remember-Me认证577

17.4 安全对象访问控制581

17.4.1 匿名用户权限信息582

17.4.2 URL资源访问控制584

17.4.3 异常转换过滤器587

17.4.4 业务类方法访问控制588

17.5 其他590

17.5.1 Acegi标签库590

17.5.2 Session并发控制591

17.5.3 HTTPS安全通道593

17.6 小结597

第18章 动态语言支持599

18.1 动态语言介绍600

18.1.1 动态语言的特性及适用场合600

18.1.2 Ruby快速入门601

18.1.3 Groovy快速入门606

18.1.4 BeanShell快速入门608

18.2 在Spring中使用动态语言611

18.2.1 Spring对动态语言的支持611

18.2.2 基于JRuby的Bean612

18.2.3 基于Groovy的Bean614

18.2.4 基于BeanShell的Bean614

18.3 其他支持功能615

18.3.1 动态刷新615

18.3.2 内联脚本616

18.4 小结617

第5篇 展现层应用620

第19章 Spring MVC之一620

19.1 Spring MVC概述621

19.1.1 体系结构621

19.1.2 认识并配置DispatcherServlet622

19.1.3 一个包含以上步骤的实例628

19.2 将请求映射到处理器631

19.2.1 HandlerExecutionChain处理器链631

19.2.2 处理器映射HandlerMapping633

19.2.3 处理器的拦截器635

19.2.4 多个处理器映射器636

19.3 各种类型的控制器637

19.3.1 参数映射控制器639

19.3.2 文件名映射控制器639

19.3.3 简单类型控制器640

19.3.4 命令控制器641

19.3.5 表单控制器643

19.3.6 中文乱码问题652

19.3.7 向导控制器653

19.3.8 多动作控制器659

19.3.9 一次性控制器661

19.4 使用Spring文件上传功能662

19.4.1 配置multipart请求解析器662

19.4.2 编写控制器和文件上传表单页面663

19.5 本地化解析665

19.5.1 使用Cookie本地化解析器666

19.5.2 使用Session本地化解析器667

19.5.3 使用本地化更改拦截器668

19.6 使用主题669

19.6.1 主题资源及样式文件的组织669

19.6.2 主题样式的引用671

19.6.3 主题资源和主题解析器672

19.7 异常处理673

19.8 小结673

第20章 Spring MVC之二675

20.1 视图和视图解析器676

20.1.1 认识视图676

20.1.2 认识视图解析器677

20.1.3 使用视图解析器678

20.2 Spring MVC表单标签682

20.2.1 form标签683

20.2.2 输入组件标签684

20.2.3 单选框和复选框组件标签684

20.2.4 下拉框组件标签688

20.2.5 错误标签690

20.3 使用模板视图690

20.3.1 FreeMarker概述690

20.3.2 常见的FreeMarker特殊标记692

20.3.3 编写渲染模型数据的模型693

20.3.4 配置FreeMarker环境和视图694

20.3.5 使用Spring宏695

20.3.6 使用Velocity模板698

20.4 使用Tiles进行页面布局699

20.4.1 编写一个Tiles模板699

20.4.2 使用Tiles视图702

20.5 产出非HTML的输出703

20.5.1 使用PDF文档进行输出703

20.5.2 使用Excel进行输出706

20.6 小结709

第21章 集成其他Web框架710

21.1 集成Struts 2711

21.1.1 Struts 2概述711

21.1.2 集成Struts 2的步骤712

21.1.3 注册用户实例714

21.2 集成Tapestry718

21.2.1 Tapestry为集成Spring提供的类718

21.2.2 Tapestry集成Spring的具体配置步骤720

21.3 集成JSF722

21.3.1 一个简单的JSF程序722

21.3.2 使用JSF-Spring集成Spring724

21.4 小结725

第6篇 其他728

第22章 Spring应用的测试728

22.1 单元测试和集成测试729

22.1.1 单元测试729

22.1.2 集成测试729

22.2 JUnit测试框架730

22.2.1 认识JUnit框架730

22.2.2 测试固件(Fixture)731

22.2.3 测试用例(TestCase)732

22.2.4 测试套件(TestSuite)732

22.2.5 测试运行器733

22.3 进行单元测试734

22.3.1 如何创建模拟类734

22.3.2 对UserServiceImpl进行单元测试734

22.3.3 Spring提供的模拟类738

22.4 在Spring中进行集成测试743

22.4.1 传统集成测试的不足之处743

22.4.2 Spring提供的测试帮助类745

22.4.3 一般集成测试747

22.4.4 方便地恢复测试数据库现场751

22.4.5 注解驱动的集成测试754

22.5 批量执行测试用例756

22.6 小结758

第23章 Spring工具类盘点760

23.1 文件资源操作761

23.1.1 加载文件资源761

23.1.2 文件操作763

23.2 Web相关工具类765

23.2.1 操作Servlet API的工具类766

23.2.2 Spring所提供的过滤器和监听器767

23.3 特殊字符转义770

23.3.1 HTML特殊字符转义770

23.3.2 JavaScript特殊字符转义772

23.3.3 SQL特殊字符转义774

23.4 杂项774

23.4.1 方法入参检测工具类775

23.4.2 操作DOM的工具类776

23.5 小结777

附录A 各种数据库连接配置及驱动778

附录B IDE开发环境设置780

热门推荐