《J2EE整合详解与典型案例:一本书搞定Struts+Spring+Hibernate》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:思志学等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:712105504X
  • 页数:708 页
图书介绍:本书是笔者在多年项目开发过程中的经验总结,它通过丰富的实例由浅入深、循序渐进地介绍了J2EE的体系结构和如何利用开源框架Struts、Spring和Hibernate进行J2EE程序的开发,从而帮助软件开发人员快速掌握J2EE的设计思想,并能将其应用于实战中。通过本书,读者可以了解到J2EE的基本思想,熟练掌握如何进行J2EE程序的开发。全书共分15章。第1章简要介绍了J2EE的来源、整体框架及其核心技术。第2章对MVC模式的设计思想、规范及它的优缺点进行了讲解。第3章至第9章对JDK,Tomcat,Eclipse,Log4j,Ant,JUnit和CVS进行了介绍,目的是使读者能快速地建立J2EE的开发环境,迅速掌握在开发过程中经常要使用到的一些开源工具的使用方法。第10章至第12章主要介绍如何使用Spring、Struts和Hibernate来进行J2EE程序的开发,并对它们之间的整合方式进行讲解,第13章至第15章主要通过网上调查系统、内容管理系统和在线考试系统这3个实例,从可行性分析开始,按照软件开发的过程,深入地讲解软件开发的步骤,使读者达到实战的要求。本书既有理论又讲解了实践

第1章 J2EE快速入门 1

1.1 J2EE概述 2

1.1.1 J2EE的来源 2

1.1.2 J2EE整体框架 3

1.1.3 从J2EE到JavaEE 3

1.2 J2EE组件 5

1.2.1 客户端组件 5

1.2.2 Web组件 5

1.2.3 业务逻辑组件 5

1.3 J2EE容器 5

1.3.1 容器服务 6

1.3.2 容器类型 6

1.4 J2EE核心技术 6

1.4.1 Servlet 7

1.4.2 JSP(Java服务页面) 8

1.4.3 EJB(企业JavaBean) 9

1.4.4 JDBC(Java数据库连接) 9

1.4.5 JTA/JTS(Java事务) 10

1.4.6 JNDI(Java命名和目录服务) 11

1.4.7 JavaMail(Java邮件服务) 11

1.4.8 RMI(远程方法调用) 11

1.4.9 JMS(Java消息服务) 12

1.4.10 JMX(Java分布式管理) 12

1.4.11 JACC(Java容器授权合同) 12

1.4.12 JCA(Java连接器体系) 12

1.5 小结 13

第2章 使用MVC更好地实现J2EE 14

2.1 MVC模式概述 15

2.1.1 MVC模式的设计思想 15

2.1.2 MVC模式的处理过程 16

2.2 Model规范概述 17

2.2.1 Model1简介 17

2.2.2 Model2简介 17

2.3 使用MVC的优劣 18

2.3.1 使用MVC模式的优点 18

2.3.2 使用MVC模式的劣势 18

2.4 小结 19

第3章 建立Java的开发平台 20

3.1 建立Java的开发环境 21

3.1.1 下载JDK 21

3.1.2 安装JDK 23

3.1.3 设定Path,CLASSPATH和JAVA_HOME 25

3.2 验证JDK是否安装成功 26

3.3 建立J2EE的开发环境 26

3.3.1 下载SDK 26

3.3.2 安装SDK 29

3.3.3 设定Path,CLASSPATH和J2EE_HOME 31

3.4 小结 32

第4章 Tomcat使用指南 33

4.1 Tomcat简介 34

4.1.1 Tomcat的目录结构 34

4.1.2 Tomcat的配置参数 34

4.2 建立Tomcat的开发环境 37

4.2.1 下载Tomcat 37

4.2.2 设定TOMCAT_HOME 38

4.3 验证Tomcat是否安装成功 38

4.4 创建和发布Web应用程序 41

4.4.1 创建和发布JSP应用程序 41

4.4.2 创建和发布Servlet应用程序 44

4.5 小结 46

第5章 Eclipse使用指南 47

5.1 Eclipse简介 48

5.1.1 Eclipse的历史 48

5.1.2 Eclipse的运行机制 48

5.2 建立Eclipse的开发环境 48

5.2.1 下载Eclipse 48

5.2.2 配置Eclipse 49

5.3 整合Eclipse和Tomcat 50

5.3.1 下载Eclipse的Tomcat插件 50

5.3.2 为Eclipse配置Tomcat插件 50

5.4 使用Eclipse建立Web开发项目 52

5.5 Eclipse的常用快捷键 56

5.5.1 有关格式化的快捷键 56

5.5.2 有关调试的快捷键 56

5.5.3 有关重构的快捷键 57

5.6 小结 57

第6章 Log4j使用指南 58

6.1 Log4j介绍 59

6.1.1 Log4j历史 59

6.1.2 Log4j组成 59

6.2 建立Log4j的开发环境 60

6.2.1 下载Log4j 60

6.2.2 配置Log4j 61

6.3 Log4j的使用方法 61

6.3.1 配置Log4j 61

6.3.2 配置根Logger 62

6.3.3 指定日志输出位置 63

6.3.4 指定日志输出格式 64

6.3.5 指定日志输出优先级 65

6.3.6 在代码中使用Log4j 65

6.4 改进Log4j 65

6.5 小结 67

第7章 Ant使用指南 68

7.1 Ant介绍 69

7.1.1 Ant简介 69

7.1.2 为什么要使用Ant 69

7.2 建立Ant的开发环境 71

7.2.1 下载Ant 71

7.2.2 配置Ant 72

7.3 Ant的使用方法 73

7.3.1 Ant能完成的工作 73

7.3.2 配置文件build.xml 73

7.3.3 编译源代码 75

7.3.4 创建JAR文件 76

7.4 小结 76

第8章 JUnit使用指南 77

8.1 JUnit介绍 78

8.1.1 JUnit简介 78

8.1.2 为什么要使用JUnit 78

8.2 建立JUnit的开发环境 79

8.2.1 下载JUnit 79

8.2.2 配置JUnit 79

8.3 JUnit的使用方法 81

8.3.1 继承TestCase 81

8.3.2 编写测试方法 83

8.3.3 编写断言 84

8.4 JUnit的新特性 89

8.4.1 改变测试方法的命名方式 89

8.4.2 不再继承TestCase 89

8.4.3 改变初始化和销毁方式 90

8.4.4 改变异常处理的方式 91

8.5 小结 93

第9章 CVS使用指南 94

9.1 CVS介绍 95

9.1.1 CVS简介 95

9.1.2 为什么要使用CVS 95

9.2 建立CVS的开发环境 95

9.2.1 下载CVS 95

9.2.2 配置CVS 97

9.3 CVS的使用方法 99

9.3.1 添加CVS资源库 100

9.3.2 提交和更新代码 104

9.4 小结 106

第10章 使用Spring快速实现Web开发 107

10.1 Spring介绍 108

10.1.1 Spring简介 108

10.1.2 下载Spring 109

10.1.3 配置Spring 111

10.2 Spring核心思想 111

10.2.1 反向控制(IoC) 111

10.2.2 依赖注入(DI) 115

10.3 利用Spring在JSP页面输出“HelloWorld”的示例 117

10.3.1 建立myHelloWorld工程 117

10.3.2 编写JSP页面helloWorld.jsp 120

10.3.3 编写控制器HelloWorldController.java 121

10.3.4 建立Spring的配置文档dispatcherServlet-servlet.xml 121

10.3.5 配置web.xml 122

10.3.6 启动Tomcat运行程序 123

10.4 Spring的视图(View) 124

10.4.1 视图简介 124

10.4.2 视图解析 128

10.5 Spring的控制器(Controller) 132

10.5.1 Controller接口 132

10.5.2 命令控制器(BaseCommandController) 135

10.5.3 表单控制器(SimpleFormController) 142

10.5.4 多动作控制器(MultiActionController) 145

10.6 Spring的视图映射机制 157

10.6.1 分发器(DispatcherServlet) 157

10.6.2 视图映射 172

10.7 Spring的模型(Model) 173

10.7.1 模型简介 173

10.7.2 模型封装 175

10.8 小结 176

第11章 使用Struts快速实现Web开发 177

11.1 Struts介绍 178

11.1.1 Struts简介 178

11.1.2 Struts和Spring比较 178

11.1.3 下载Struts 179

11.1.4 配置Struts 180

11.2 Struts的核心 183

11.2.1 ActionServlet(分发器) 184

11.2.2 Action(控制器) 202

11.2.3 Action Mapping(映射) 206

11.2.4 ActionForm(表单控制器) 210

11.2.5 ActionErrors(错误处理) 215

11.2.6 DispatchAction(多动作控制器) 216

11.3 利用Struts实现用户登录的示例 222

11.3.1 编写实现登录的页面login.jsp 222

11.3.2 编写存储登录用户信息的类User.java 222

11.3.3 编写控制器LoginAction.java 223

11.3.4 配置Struts文档struts-config.xml 224

11.3.5 配置web.xml 224

11.3.6 启动Tomcat运行示例 225

11.4 整合Spring和Struts 226

11.4.1 Spring和Struts的整合方式 226

11.4.2 编写实现登录的页面regedit.jsp 238

11.4.3 编写存储登录用户信息的类User.java 239

11.4.4 编写控制器RegeditAction.java 239

11.5 小结 243

第12章 使用Hibernate快速实现持久层处理 244

12.1 Hibernate介绍 245

12.1.1 Hibernate简介 245

12.1.2 下载Hibernate 245

12.1.3 配置Hibernate 248

12.2 Hibernate的核心 252

12.2.1 Configuration(配置Connection) 252

12.2.2 SessionFactory(Connection工厂) 269

12.2.3 Session(提供Connection) 271

12.3 使用Hibernate操作数据库的示例 276

12.3.1 创建数据库表 276

12.3.2 编写表对应的JavaBean 279

12.3.3 编写JavaBean对应的xml 279

12.3.4 编写Hibernate的配置文件 282

12.3.5 编写并验证测试程序 284

12.4 Hibernate的配置文件 286

12.4.1 Hibernate的两种配置方式 286

12.4.2 配置数据库连接池 287

12.4.3 使用JNDI 288

12.5 使用Hibernate的工具快速生成映射文件和POJO 289

12.5.1 使用MiddleGen根据数据库产生映射文件 289

12.5.2 使用hbm2java根据映射文件产生POJO 297

12.6 整合Struts,Spring和Hibernate实现用户管理 299

12.6.1 Struts,Spring和Hibernate的整合方式 300

12.6.2 编写用户注册画面regedit.jsp 303

12.6.3 编写用户登录画面login.jsp 303

12.6.4 编写注册控制器RegeditAction.java 304

12.6.5 编写登录控制器LoginAction.java 304

12.6.6 建立数据库表 305

12.6.7 生成映射文件User.hbm.xml 305

12.6.8 生成POJO 306

12.6.9 编写注册的业务逻辑接口Regedit.java 308

12.6.10 编写注册的业务逻辑类RegeditImpl.java 309

12.6.11 编写登录的业务逻辑接口Login.java 310

12.6.12 编写登录的业务逻辑类LoginImpl.java 311

12.6.13 编写用户接口UserDAO.java 312

12.6.14 编写用户实现类UserDAOImpl.java 314

12.6.15 编写Struts的配置文件struts-config.xml 316

12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 317

12.6.17 编写web.xml 318

12.6.18 验证示例 319

12.7 小结 321

第13章 网上调查系统 322

13.1 系统概述 323

13.2 需求分析 324

13.2.1 系统用例图 324

13.2.2 需求规格说明书 324

13.3 系统设计 329

13.3.1 设计视图层 329

13.3.2 设计持久层 348

13.3.3 设计业务逻辑层 359

13.3.4 设计控制层 360

13.4 架构设计和环境搭配 361

13.4.1 网上调查系统采用的架构 361

13.4.2 在Eclipse下建立项目mySurvey 361

13.4.3 编写本项目的Ant build文件 366

13.4.4 配置本项目的web.xml文件 367

13.5 编写网上调查系统的JSP页面 368

13.5.1 用户注册页面regedit.jsp 368

13.5.2 用户登录页面login.jsp 369

13.5.3 设定调查题目的页面surveyName.jsp 370

13.5.4 设定调查项目的页面surveyOption.jsp 372

13.5.5 设定调查子项目的页面surveyChildOption.jsp 373

13.5.6 填写调查的页面survey.jsp 375

13.5.7 查看调查结果的页面surveyOK.jsp 376

13.6 根据数据库表生成XML和POJO 377

13.6.1 生成对应的XML 378

13.6.2 生成POJO 392

13.7 编写网上调查系统的DAO 400

13.7.1 用户DAO接口UserDAO.java 400

13.7.2 调查题目DAO接口SurveyDAO.java 401

13.7.3 调查项目DAO接口SurveyOptionDAO.java 401

13.7.4 调查子项目DAO接口SurveyChildDAO.java 401

13.7.5 调查结果DAO接口SurveyChildCountDAO.java 402

13.7.6 用户DAO实现类UserDAOImpl.java 402

13.7.7 调查题目DAO实现类SurveyDAOImpl.java 403

13.7.8 调查项目DAO实现类SurveyOptionDAOImpl.java 404

13.7.9 调查子项目DAO实现类SurveyChildDAOImpl.java 405

13.7.10 调查结果DAO实现类SurveyChildCountDAOImpl.java 406

13.8 编写网上调查系统的业务逻辑类 407

13.8.1 注册接口Regedit.java 407

13.8.2 登录接口Login.java 407

13.8.3 设定调查题目接口SetSurvey.java 407

13.8.4 设定调查项目接口SetSurveyOption.java 408

13.8.5 设定调查子项目接口SetSurveyChild.java 408

13.8.6 统计调查结果接口SetSurveyChildCount.java 409

13.8.7 注册实现类RegeditImpl.java 409

13.8.8 登录实现类LoginImpl.java 410

13.8.9 设定调查题目实现类SetSurveyImpl.java 411

13.8.10 设定调查项目实现类SetSurveyOptionImpl.java 412

13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 413

13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 413

13.9 编写网上调查系统的控制器类 414

13.9.1 登录控制器类LoginAction.java 414

13.9.2 注册控制器类RegeditAction.java 416

13.9.3 设定调查题目控制器类SurveyAction.java 417

13.9.4 设定调查项目控制器类SetSurveyAction.java 418

13.10 编写配置文件dispatcherServlet-servlet.xml 427

13.11 运行验证程序 433

13.12 小结 437

第14章 内容管理系统 438

14.1 系统概述 439

14.2 需求分析 440

14.2.1 系统用例图 440

14.2.2 需求规格说明书 440

14.3 系统设计 444

14.3.1 设计视图层 444

14.3.2 设计持久层 451

14.3.3 设计业务逻辑层 459

14.3.4 设计控制层 459

14.4 架构设计和环境搭配 460

14.4.1 内容管理系统采用的架构 460

14.4.2 在Eclipse下建立项目myEdition 460

14.4.3 编写本项目的Ant build文件 464

14.4.4 配置本项目的web.xml文件 465

14.5 编写内容管理系统的JSP页面 465

14.5.1 用户注册页面regedit.jsp 466

14.5.2 用户登录页面login.jsp 466

14.5.3 设定内容类别的页面type.jsp 467

14.5.4 发布内容页面edit.jsp 468

14.5.5 浏览内容页面index.jsp 470

14.6 根据数据库表生成XML和POJO 471

14.6.1 生成对应的XML 471

14.6.2 生成POJO 482

14.7 编写内容管理系统的DAO 487

14.7.1 用户DAO接口UserDAO.java 487

14.7.2 内容类别DAO接口ContentTypeDAO.java 488

14.7.3 内容DAO接口ContentDAO.java 488

14.7.4 用户DAO实现类UserDAOImpl.java 489

14.7.5 内容类别DAO实现类ContentTypeDAOImpl.java 489

14.7.6 内容DAO实现类ContentDAOImpl.java 490

14.8 编写内容管理系统的业务逻辑类 491

14.8.1 注册接口Regedit.java 491

14.8.2 登录接口Login.java 492

14.8.3 设定内容类别的接口SetContentType.java 492

14.8.4 发布接口Edit.java 492

14.8.5 注册实现类RegeditImpl.java 493

14.8.6 登录实现类LoginImpl.java 494

14.8.7 设定内容类别的实现类SetContentTypeImpl.java 494

14.8.8 发布实现类EditImpl.java 495

14.9 编写内容管理系统的控制器类 496

14.9.1 登录控制器类LoginAction.java 496

14.9.2 注册控制器类RegeditAction.java 498

14.9.3 设定内容类别的控制器类ContentTypeAction.java 498

14.9.4 发布控制器类EditAction.java 499

14.9.5 内容控制器类ContentAction.java 501

14.9.6 浏览内容的控制器类IndexAction.java 501

14.10 编写Struts的配置文件struts-config.xml 503

14.11 编写Spring和Hibernate的配置文件spring-config.xml 504

14.12 解决Struts的中文乱码问题 507

14.13 运行验证程序 509

14.14 小结 512

第15章 在线考试系统 513

15.1 系统概述 514

15.2 需求分析 515

15.2.1 系统用例图 515

15.2.2 需求规格说明书 515

15.3 系统设计 520

15.3.1 设计视图层 520

15.3.2 设计持久层 531

15.3.3 设计业务逻辑层 540

15.3.4 设计控制层 541

15.4 架构设计和环境搭配 541

15.4.1 在线考试系统采用的架构 542

15.4.2 在Eclipse下建立项目myExam 542

15.4.3 编写本项目的Ant build文件 545

15.4.4 配置本项目的web.xml文件 546

15.5 编写在线考试系统的JSP页面 548

15.5.1 用户注册页面regedit.jsp 548

15.5.2 用户登录页面login.jsp 549

15.5.3 设定试题种类的页面shitiType.jsp 549

15.5.4 设定试题基本信息的页面shiti.jsp 550

15.5.5 设定试题项目的页面shitiOption.jsp 552

15.5.6 组织试卷的页面examInfo.jsp 554

15.5.7 参加考试的页面exam.jsp 555

15.5.8 考试成绩的页面examChengji.jsp 557

15.6 根据数据库表生成XML和POJO 558

15.6.1 生成对应的XML 558

15.6.2 生成POJO 571

15.7 编写在线考试系统的DAO 580

15.7.1 用户DAO接口UserDAO.java 580

15.7.2 试题种类DAO接口ShitiTypeDAO.java 581

15.7.3 试题题目DAO接口ShitiDAO.java 581

15.7.4 试题项目DAO接口ShitiOptionDAO.java 582

15.7.5 试卷DAO接口ExamDAO.java 582

15.7.6 用户DAO实现类UserDAOImpl.java 582

15.7.7 试题种类DAO实现类ShitiTypeDAOImpl.java 583

15.7.8 试题题目DAO实现类ShitiDAOImpl.java 584

15.7.9 试题项目DAO实现类ShitiOptionDAOImpl.java 585

15.7.10 试卷DAO实现类ExamDAOImpl.java 586

15.8 编写在线考试系统的业务逻辑类 587

15.8.1 注册接口Regedit.java 587

15.8.2 登录接口Login.java 588

15.8.3 设定试题种类接口SetShitiType.java 588

15.8.4 设定试题题目接口SetShiti.java 588

15.8.5 设定试题项目接口SetShitiOption.java 589

15.8.6 设定试卷接口SetExam.java 589

15.8.7 注册实现类RegeditImpl.java 590

15.8.8 登录实现类LoginImpl.java 591

15.8.9 设定试题种类实现类SetShitiTypeImpl.java 591

15.8.10 设定试题题目实现类SetShitiImpl.java 592

15.8.11 设定试题项目实现类SetShitiOptionImpl.java 593

15.8.12 设定试卷实现类SetExamImpl.java 594

15.9 编写在线考试系统的控制器类 595

15.9.1 登录控制器类LoginAction.java 595

15.9.2 注册控制器类RegeditAction.java 597

15.9.3 设定试题种类控制器类ShitiTypeAction.java 598

15.9.4 设定试题题目控制器类ShitiAction.java 598

15.9.5 设定试题项目控制器类ShitiOptionAction.java 600

15.9.6 试卷控制器类ExamAction.java 602

15.10 编写配置文件dispatcherServlet-servlet.xml 606

15.11 解决Spring的中文乱码问题 613

15.12 运行验证程序 615

15.13 小结 620

第16章 信息发布系统 621

16.1 系统概述 622

16.2 需求分析 622

16.2.1 系统功能模块划分 622

16.2.2 系统流程分析 623

16.2.3 系统设计 623

16.3 建立项目 624

16.3.1 在MyEclipse下建立项目 624

16.3.2 编写Ant文件 628

16.3.3 配置Web.xml文件 629

16.4 建立数据库表 630

16.4.1 存放用户信息的数据库表 631

16.4.2 存放信息的数据库表 632

16.4.3 存放信息类别的数据库表 634

16.4.4 存放用户权限的数据库表 636

16.4.5 建立表之间的关系 637

16.5 设计信息发布系统 640

16.5.1 生成对应的Hibernate映射文件 640

16.5.2 生成持久化POJO文件 650

16.5.3 设计值对象类VO对象 658

16.5.4 信息发布系统在持久层的整体UML图 662

16.5.5 初步设计原型静态页面 662

16.6 显示层设计 669

16.6.1 显示信息的页面show.jsp 669

16.6.2 发布信息页面release.jsp 671

16.6.3 用户注册页面regedit.jsp 672

16.6.4 登录页面login.jsp 673

16.6.5 错误处理的页面error.jsp 673

16.7 编写值对象VO和DAO层 674

16.7.1 用户类 675

16.7.2 用户权限类 676

16.7.3 信息类 676

16.7.4 信息类别类 678

16.7.5 开发用户DAO接口 678

16.7.6 开发信息DAO接口 678

16.7.7 信息类别DAO接口 679

16.7.8 实现用户DAO接口 679

16.7.9 实现信息DAO接口 680

16.7.10 实现信息类别DAO接口 681

16.8 开发业务逻辑层 682

16.8.1 开发登录接口 682

16.8.2 开发注册用户接口 683

16.8.3 开发发布接口 683

16.8.4 开发登录实现类 683

16.8.5 开发注册实现类 684

16.8.6 开发发布实现类 685

16.9 开发控制器层 686

16.9.1 开发用户登录控制器类 687

16.9.2 开发用户注册控制器类 688

16.9.3 开发信息发布控制器类 689

16.9.4 开发显示信息控制器类 691

16.10 编写辅助工具类 692

16.11 编写Spring配置文件 699

16.12 测试本项目程序 703

16.13 小结 708