第1章 J2EE快速入门 15
1.1 J2EE概述 16
1.1.1 J2EE的来源 16
1.1.2 J2EE整体框架 16
1.1.3从J2EE到JavaEE 17
1.2 J2EE组件 18
1.2.1客户端组件 19
1.2.2 Web组件 19
1.2.3业务逻辑组件 19
1.3 J2EE容器 19
1.3.1容器服务 19
1.3.2容器类型 20
1.4 J2EE核心技术 20
1.4.1 Servlet 21
1.4.2 JSP(Java服务页面) 22
1.4.3 EJB(企业JavaBean) 23
1.4.4 JDBC(Java数据库连接) 23
1.4.5 JTA/JTS(Java事务) 24
1.4.6 JNDI(Java命名和目录服务) 24
1.4.7 JavaMail(Java邮件服务) 25
1.4.8 RMI(远程方法调用) 25
1.4.9 JMS(Java消息服务) 26
1.4.10 JMX(Java分布式管理) 26
1.4.11 JACC(Java容器授权合同) 26
1.4.12 JCA(Java连接器体系) 26
1.5小结 27
第2章 使用MVC更好地实现J2EE 28
2.1 MVC模式概述 29
2.1.1 MVC模式的设计思想 29
2.1.2 MVC模式的处理过程 30
2.2 Model规范概述 30
2.2.1 Mode11简介 31
2.2.2 Mode12简介 31
2.3使用MVC的优劣 32
2.3.1使用MVC模式的优势 32
2.3.2使用MVC模式的劣势 32
2.4小结 32
第3章 建立Java的开发平台 33
3.1建立Java的开发环境 34
3.1.1下载JDK 34
3.1.2安装JDK 34
3.1.3设定Path,CLASSPATH和JAVA_HOME 36
3.2验证JDK是否安装成功 37
3.3建立J2EE的开发环境 38
3.3.1下载SDK 38
3.3.2安装SDK 39
3.3.3设定Path,CLASSPATH和J2EE_HOME 42
3.4小结 42
第4章 Tomcat使用指南 43
4.1 Tomcat简介 44
4.1.1 Tomcat的目录结构 44
4.1.2 Tomcat的配置参数 44
4.2建立Tomcat的开发环境 47
4.2.1下载Tomcat 48
4.2.2设定TOMCAT_HOME 49
4.3验证Tomcat是否安装成功 49
4.4创建和发布Web应用程序 52
4.4.1创建和发布JSP应用程序 52
4.4.2创建和发布Servlet应用程序 55
4.5小结 57
第5章 Eclipse使用指南 58
5.1 Eclipse简介 59
5.1.1 Eclipse的历史 59
5.1.2 Eclipse的运行机制 59
5.2建立Eclipse的开发环境 59
5.2.1下载Eclipse 59
5.2.2配置Eclipse 60
5.3整合Eclipse和Tomcat 60
5.3.1下载Eclipse的Tomcat插件 61
5.3.2为Eclipse配置Tomcat插件 61
5.4使用Eclipse建立Web开发项目 62
5.5 Eclipse的常用快捷键 66
5.5.1有关格式化的快捷键 66
5.5.2有关调试的快捷键 67
5.5.3有关重构的快捷键 67
5.6小结 67
第6章 Log4j使用指南 68
6.1 Log4j介绍 69
6.1.1 Log4j历史 69
6.1.2 Log4j组成 69
6.2建立Log4j的开发环境 70
6.2.1下载Log4j 70
6.2.2配置Log4j 71
6.3 Log4j的使用方法 71
6.3.1配置Log4j 71
6.3.2配置根Logger 72
6.3.3指定日志输出位置 73
6.3.4指定日志输出格式 74
6.3.5指定日志输出优先级 75
6.3.6在代码中使用Log4j 75
6.4改进Log4j 75
6.5小结 77
第7章 Ant使用指南 78
7.1 Ant介绍 79
7.1.1 Ant简介 79
7.1.2为什么要使用Ant 79
7.2建立Ant的开发环境 80
7.2.1下载Ant 80
7.2.2配置Ant 80
7.3 Ant的使用方法 82
7.3.1 Ant能完成的工作 82
7.3.2配置文件build.xml 82
7.3.3编译源代码 84
7.3.4创建JAR文件 85
7.4小结 85
第8章 JUnit使用指南 86
8.1 JUnit介绍 87
8.1.1 JUnit简介 87
8.1.2为什么要使用JUnit 87
8.2建立JUnit的开发环境 88
8.2.1下载JUnit 88
8.2.2配置JUnit 88
8.3 JUnit的使用方法 90
8.3.1继承TestCase 90
8.3.2编写测试方法 93
8.3.3编写断言 93
8.4 JUnit的新特性 98
8.4.1改变测试方法的命名方式 98
8.4.2不再继承TestCase 99
8.4.3改变初始化和销毁方式 99
8.4.4改变异常处理的方式 101
8.5小结 103
第9章 CVS使用指南 104
9.1 CVS介绍 105
9.1.1 CVS简介 105
9.1.2为什么要使用CVS 105
9.2建立CVS的开发环境 105
9.2.1下载CVS 105
9.2.2配置CVS 105
9.3 CVS的使用方法 109
9.3.1添加CVS资源库 109
9.3.2提交和更新代码 112
9.4小结 114
第10章 使用Spring快速实现Web开发 115
10.1 Spring介绍 116
10.1.1 Spring简介 116
10.1.2下载Spring 117
10.1.3配置Spring 118
10.2 Spring核心思想 119
10.2.1反向控制(IoC) 119
10.2.2依赖注入(DI) 123
10.3利用Spring在JSP页面输出“HelloWorld”的示例 125
10.3.1建立myHelloWorld工程 125
10.3.2编写JSP页面helloWorld.jsp 129
10.3.3编写控制器HelloWorldController.java 129
10.3.4建立Spring的配置文档dispatcherServlet-servlet.xml 130
10.3.5配置web.xml 131
10.3.6启动Tomcat运行程序 132
10.4 Spring的视图(View) 132
10.4.1视图简介 132
10.4.2视图解析 136
10.5 Spring的控制器(Controller) 141
10.5.1 Controller接口 141
10.5.2命令控制器(BaseCommandController) 144
10.5.3表单控制器(SimpleFormController) 151
10.5.4多动作控制器(MultiActionController) 155
10.6 Spring的视图映射机制 168
10.6.1分发器(DispatcherServlet) 168
10.6.2视图映射 184
10.7 Spring的模型(Model) 186
10.7.1模型简介 186
10.7.2模型封装 188
10.8小结 189
第11章 使用Struts 2快速实现Web开发 190
11.1 Struts 2介绍 191
11.2 Struts 2的环境配置 191
11.2.1下载Struts 2 191
11.2.2搭建Struts 2的开发运行环境 192
11.3 Struts 2入门示例 195
11.3.1编写实现消息输出的HelloWorld.jsp页面 195
11.3.2编写控制器HelloWorld.java 196
11.3.3配置struts.xml和struts.properties文件 197
11.3.4配置web.xml 198
11.3.5测试运行该示例 199
11.4 Struts 2的核心机制 200
11.4.1 FilterDispatcher处理流程 200
11.4.2 Struts 2的输入校验 203
11.4.3 Struts 2的拦截机制 205
11.4.4 Struts 2的国际化 209
11.4.5 Struts 2的标签库 211
11.5 Struts 2的配置文件 212
11.5.1 struts.properties 212
11.5.2 struts.xml 214
11.6小结 215
第12章 使用Hibernate快速实现持久层处理 216
12.1 Hibernate介绍 217
12.1.1 Hibernate简介 217
12.1.2下载Hibernate 217
12.1.3配置Hibernate 219
12.2 Hibernate的核心 223
12.2.1 Configuration(配置Connection) 224
12.2.2 SessionFactory(Connection工厂) 241
12.2.3 Session(提供Connection) 243
12.3使用Hibernate操作数据库的示例 249
12.3.1创建数据库表 249
12.3.2编写表对应的JavaBean 251
12.3.3编写JavaBean对应的xml 251
12.3.4编写Hibernate的配置文件 253
12.3.5编写并验证测试程序 255
12.4 Hibernate的配置文件 257
12.4.1 Hibernate的两种配置方式 257
12.4.2配置数据库连接池 258
12.4.3使用JNDI 259
12.5使用Hibernate的工具快速生成映射文件和POJO 260
12.5.1使用MiddleGen根据数据库产生映射文件 260
12.5.2使用hbm2java根据映射文件产生POJO 268
12.6整合Struts,Spring和Hibernate实现用户管理 270
12.6.1 Struts,Spring和Hibernate的整合方式 270
12.6.2编写用户注册画面regedit.jsp 273
12.6.3编写用户登录画面login.jsp 273
12.6.4编写注册控制器RegeditAction.java 274
12.6.5编写登录控制器LoginAction.java 275
12.6.6建立数据库表 275
12.6.7编写映射文件User.hbm.xml 275
12.6.8编写POJO 276
12.6.9编写注册的业务逻辑接口Regedit.java 277
12.6.10编写注册的业务逻辑类RegeditImpl.java 278
12.6.11编写登录的业务逻辑接口Login.java 278
12.6.12编写登录的业务逻辑类LoginImpl.java 279
12.6.13编写用户接口UserDAO.java 280
12.6.14编写用户实现类UserDAOImpl.java 281
12.6.15 编写Struts的配置文件struts.xml 283
12.6.16编写配置文件applicationContext.xml 283
12.6.17编写web.xml 285
12.6.18验证示例 286
12.7小结 287
第13章 网上调查系统 288
13.1系统概述 289
13.2需求分析 290
13.2.1系统用例图 290
13.2.2需求规格说明书 290
13.3系统设计 295
13.3.1设计视图层 295
13.3.2设计持久层 313
13.3.3设计业务逻辑层 323
13.3.4设计控制层 324
13.4架构设计和环境搭配 324
13.4.1网上调查系统采用的架构 325
13.4.2在Eclipse下建立项目mySurvey 325
13.4.3编写本项目的Ant build文件 329
13.4.4配置本项目的web.xml文件 330
13.5编写网上调查系统的JSP页面 331
13.5.1用户注册页面regedit.jsp 331
13.5.2用户登录页面login.jsp 332
13.5.3设定调查题目的页面surveyName.jsp 333
13.5.4设定调查项目的页面surveyOption.jsp 334
13.5.5设定调查子项目的页面surveyChildOption.jsp 336
13.5.6填写调查的页面survey.jsp 338
13.5.7查看调查结果的页面surveyOK.jsp 339
13.6根据数据库表生成XML和POJO 340
13.6.1生成对应的XML 340
13.6.2生成POJO 354
13.7编写网上调查系统的DAO 362
13.7.1用户DAO接口UserDAO.java 362
13.7.2调查题目DAO接口SurveyDAO.java 363
13.7.3调查项目DAO接口SurveyOptionDAO.java 363
13.7.4调查子项目DAO接口SurveyChildDAO.java 363
13.7.5调查结果DAO接口SurveyChildCountDAO.java 364
13.7.6用户DAO实现类UserDAOImpl.java 364
13.7.7调查题目DAO实现类SurveyDAOImpl.java 365
13.7.8调查项目DAO实现类SurveyOptionDAOImpl.java 366
13.7.9调查子项目DAO实现类SurveyChildDAOImpl.java 367
13.7.10调查结果DAO实现类SurveyChildCountDAOImpl.java 368
13.8编写网上调查系统的业务逻辑类 369
13.8.1注册接口Regedit.java3 369
13.8.2登录接口Login.java 369
13.8.3设定调查题目接口SetSurvey.java 369
13.8.4设定调查项目接口SetSurveyOption.java 370
13.8.5设定调查子项目接口SetSurveyChild.java 370
13.8.6统计调查结果接口SetSurveyChildCount.java 371
13.8.7注册实现类RegeditImpl .java 371
13.8.8登录实现类LoginImpl.java 372
13.8.9设定调查题目实现类SetSurveyImpl.java 373
13.8.10设定调查项目实现类SetSurveyOptionImpl.java 374
13.8.11设定调查子项目实现类SetSurveyChildImpl.java 375
13.8.12统计调查结果实现类SetSurveyChildCountImpl.java 376
13.9编写网上调查系统的控制器类 376
13.9.1登录控制器类LoginAction.java 377
13.9.2注册控制器类RegeditAction.java 378
13.9.3设定调查题目控制器类SurveyAction.java 379
13.9.4设定调查项目控制器类SetSurveyAction.java 380
13.10编写配置文件dispatcherServlet-servlet.xml 389
13.11运行验证程序 395
13.12小结 399
第14章 内容管理系统 400
14.1系统概述 401
14.2需求分析 402
14.2.1系统用例图 402
14.2.2需求规格说明书 402
14.3系统设计 406
14.3.1设计视图层 406
14.3.2设计持久层 412
14.3.3设计业务逻辑层 419
14.3.4设计控制层 419
14.4架构设计和环境搭配 420
14.4.1内容管理系统采用的架构 420
14.4.2在Eclipse下建立项目myEdition 420
14.4.3编写本项目的Ant build文件 424
14.4.4配置本项目的web.xml文件 425
14.5编写内容管理系统的JSP页面 426
14.5.1用户注册页面regedit.jsp 426
14.5.2用户登录页面login.jsp 427
14.5.3设定内容类别的页面type.jsp 428
14.5.4发布内容页面edit.jsp 430
14.5.5浏览内容页面index.jsp 432
14.6根据数据库表生成XML和POJO 433
14.6.1生成对应的XML 433
14.6.2生成POJO 444
14.7编写内容管理系统的DAO 450
14.7.1用户DAO接口UserDAO.java 450
14.7.2内容类别DAO接口ContentTypeDAO.java 450
14.7.3内容DAO接口ContentDAO.java 450
14.7.4用户DAO实现类UserDAOImpl.java 451
14.7.5内容类别DAO实现类ContentTypeDAOImpl.java 452
14.7.6内容DAO实现类ContentDAOImpl.java 453
14.8编写内容管理系统的业务逻辑类 454
14.8.1注册接口Regedit.java 454
14.8.2登录接口Login.java 455
14.8.3设定内容类别的接口SetContentType.java 455
14.8.4发布接口Edit.java 455
14.8.5注册实现类RegeditImpl.java 456
14.8.6登录实现类LoginImpl.java 457
14.8.7设定内容类别的实现类SetContentTypeImpl.java 457
14.8.8发布实现类EditImpl.java 458
14.9编写内容管理系统的控制器类 460
14.9.1登录控制器类LoginAction.java 460
14.9.2注册控制器类RegeditAction.java 461
14.9.3设定内容类别的控制器类ContentTypeAction.java 462
14.9.4发布控制器类EditAction.java 463
14.9.5内容控制器类ContentAction.java 465
14.9.6浏览内容的控制器类IndexAction.java 466
14.10编写Struts的配置文件struts.xml 467
14.11编写Spring和Hibernate的配置文件applicationContext.xml 468
14.12解决Struts的中文乱码问题 469
14.13运行验证程序 469
14.14小结 472
第15章 在线考试系统 473
15.1系统概述 474
15.2需求分析 475
15.2.1系统用例图 475
15.2.2需求规格说明书 475
15.3系统设计 480
15.3.1设计视图层 480
15.3.2设计持久层 490
15.3.3设计业务逻辑层 500
15.3.4设计控制层 501
15.4架构设计和环境搭配 501
15.4.1在线考试系统采用的架构 502
15.4.2在Eclipse下建立项目myExam 502
15.4.3编写本项目的Ant build文件 505
15.4.4配置本项目的web.xml文件 506
15.5编写在线考试系统的JSP页面 507
15.5.1用户注册页面regedit.jsp 507
15.5.2用户登录页面login.jsp 508
15.5.3设定试题种类的页面shitiType.jsp 509
15.5.4设定试题基本信息的页面shiti.jsp 510
15.5.5设定试题项目的页面shitiOption.jsp 512
15.5.6组织试卷的页面examInfo.jsp 513
15.5.7参加考试的页面exam.jsp 515
15.5.8考试成绩的页面examChengji.jsp 516
15.6根据数据库表生成XML和POJO 517
15.6.1生成对应的XML 517
15.6.2生成POJO 530
15.7编写在线考试系统的DAO 539
15.7.1用户DAO接口UserDAO.java 539
15.7.2试题种类DAO接口ShitiTypeDAO.java 539
15.7.3试题题目DAO接口ShitiDAO.java 540
15.7.4试题项目DAO接口ShitiOptionDAO.java 540
15.7.5试卷DAO接口ExamDAO.java 540
15.7.6用户DAO实现类UserDAOImpl.java 541
15.7.7试题种类DAO实现类ShitiTypeDAOImpl.java 542
15.7.8试题题目DAO实现类ShitiDAOImpl.java 543
15.7.9试题项目DAO实现类ShitiOptionDAOImpl.java 544
15.7.10试卷DAO实现类ExamDAOImpl.java 545
15.8编写在线考试系统的业务逻辑类 546
15.8.1注册接口Regedit.java 546
15.8.2登录接口Login.java 546
15.8.3设定试题种类接口SetShitiType.java 546
15.8.4设定试题题目接口SetShiti.java 547
15.8.5设定试题项目接口SetShitiOption.java 547
15.8.6设定试卷接口SetExam.java 548
15.8.7注册实现类RegeditImpl.java 548
15.8.8登录实现类LoginImpl.java 549
15.8.9设定试题种类实现类SetShitiTypeImpl.java 550
15.8.10设定试题题目实现类SetShitiImpl.java 551
15.8.11设定试题项目实现类SetShitiOptionImpl.java 552
15.8.12设定试卷实现类SetExamImpl.java 553
15.9编写在线考试系统的控制器类 554
15.9.1登录控制器类LoginAction.java 554
15.9.2注册控制器类RegeditAction.java 555
15.9.3设定试题种类控制器类ShitiTypeAction.java 556
15.9.4设定试题题目控制器类ShitiAction.java 557
15.9.5设定试题项目控制器类ShitiOptionAction.java 559
15.9.6试卷控制器类ExamAction.java 561
15.10编写配置文件dispatcherServlet-servlet.xml 565
15.11解决Spring的中文乱码问题 571
15.12运行验证程序 573
15.13小结 577
第16章 信息发布系统 578
16.1系统概述 579
16.2需求分析 579
16.2.1系统功能模块划分 579
16.2.2系统流程分析 579
16.2.3系统设计 580
16.3建立项目 581
16.3.1在MyEclipse下建立项目 581
16.3.2编写Ant文件 584
16.3.3配置Web.xml文件 585
16.4建立数据库表 585
16.4.1存放用户信息的数据库表 586
16.4.2存放信息的数据库表 587
16.4.3存放信息类别的数据库表 589
16.4.4存放用户权限的数据库表 590
16.4.5建立表之间的关系 592
16.5设计信息发布系统 594
16.5.1生成对应的Hibernate映射文件 594
16.5.2生成持久化POJO文件 604
16.5.3设计值对象类VO对象 612
16.5.4信息发布系统在持久层的整体UML图 616
16.5.5初步设计原型静态页面 616
16.6显示层设计 623
16.6.1显示信息的页面show.jsp 623
16.6.2发布信息页面release.jsp 624
16.6.3用户注册页面regedit.jsp 625
16.6.4登录页面login.jsp 626
16.6.5错误处理的页面error.jsp 627
16.7编写值对象VO和DAO层 628
16.7.1用户类 628
16.7.2用户权限类 629
16.7.3信息类 629
16.7.4信息类别类 631
16.7.5开发用户DAO接口 631
16.7.6开发信息DAO接口 632
16.7.7信息类别DAO接口 632
16.7.8实现用户DAO接口 633
16.7.9实现信息DAO接口 633
16.7.10实现信息类别DAO接口 635
16.8开发业务逻辑层 635
16.8.1开发登录接口 636
16.8.2开发注册用户接口 636
16.8.3开发发布接口 636
16.8.4开发登录实现类 637
16.8.5开发注册实现类 637
16.8.6开发发布实现类 638
16.9开发控制器层 640
16.9.1开发用户登录控制器类 640
16.9.2开发用户注册控制器类 641
16.9.3开发信息发布控制器类 642
16.9.4开发显示信息控制器类 644
16.10编写辅助工具类 646
16.11编写Spring配置文件 652
16.12测试本项目程序 656
16.13小结 660