微信扫一扫,移动浏览光盘
简介
书籍
计算机书籍
《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》是笔者在多年项目开发过程中的经验总结,它通过丰富的实例由浅入深、循序渐进地介绍了目前采用java进行web开发的各种框架的使用方法,从而帮助软件设计人员快速掌握这些web开发技术的使用,并能将其应用到实战中。
《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》在编排上力求让读者能够快速掌握java web的设计方法。首先对javaee的来源、整体框架和核心技术,以及mvc模式的设计思想、规范及优缺点进行了讲解;然后对java web环境的建立、数据库的搭建、一些基本技术(比如javascript、jsp、servlet、jdbc)进行了讲解;接着对ajax、struts 2、spring 3、hibernate 3进行了讲解;又对log4j、dom4j、junit和 jfreechart等工具的使用方法进行了介绍。《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》的目的就是使读者快速学会工具的使用。最后,笔者按照软件的开发过程,采用面向对象的设计思想,通过不同的技术整合来进行一些项目实战。
《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》适用于初、中、高级软件设计人员阅读,同时也可用做高校相关专业和社会培训班的教材。
目录
《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》
第0章 java web开发总览
在阅读《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》之前,请各位读者务必先阅读本章的内容。本章主要描述项目开发的流程、如何进行架构设计、如何设计包结构等内容,这些内容是《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》编写的基础。通过对本章节的阅读,读者可以了解《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》各章节安排的基本指导思想,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》精选案例的设计思路。
第一部分
第1章 java web开发思想
随着it技术的发展和企业对信息化需求的日益增加,在软件开发技术方面逐渐分为了两个阵营:java和.net。因为java在安全性、跨平台性及分层次的架构方面有着不可比拟的优势,所以特别适合于大型企业级应用的开发,javaee就是java平台中专门为企业应用制定的标准框架。本章将从javaee的发展讲起,在读者了解了javaee的运行模式后,再逐个讲解javaee的核心技术,然后通过对mvc模式的讲解,使读者认识到mvc是如何实现javaee框架的,最后讲解java web开发所需的常用技术。
1.1 javaee简介 9
1.1.1 javaee的发展 9
1.1.2 javaee运行模式 10
1.2 javaee核心技术 11
1.2.1 jsp(java服务页面) 12
1.2.2 servlet 12
1.2.3 ejb(企业级javabean) 13
1.2.4 jdbc(java数据库连接) 14
1.2.5 jta(java事务) 15
1.2.6 javamail(java邮件服务) 16
1.2.7 jms(java消息服务) 17
1.2.8 rmi(远程方法调用) 18
1.2.9 jndi(java命名和目录服务) 18
1.2.10 xml(扩展标识语言) 19
.1.2.11 jmx(java分布式管理) 20
1.2.12 jacc(java容器授权合同) 20
1.2.13 jca(java连接器体系) 21
1.3 mvc模式原理 22
1.4 model规范 23
1.4.1 model 1规范 23
1.4.2 model 2规范 24
1.5 java web开发所需要的技术 24
1.5.1 ajax 25
1.5.2 mvc框架 27
1.5.3 持久层技术 28
1.6 java web开发学习路线图 29
1.7 小结 29
第2章 搭建java web开发和运行环境
要进行java web程序开发,就离不开编译java的环境jdk,也离不开运行jsp和servlet的容器,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》选择tomcat 7,此外还需要能够快速开发代码的辅助工具eclipse和myeclipse。有很多初学者会在环境的配置上困扰,因此在开发java web程序之前,有必要先介绍一下这些软件和工具的安装、配置和使用方法。
本章首先建立java开发环境,然后配置tomcat 7和myeclipse,通过本章开发环境的搭建,使读者能够在此基础上开发、创建和发布web应用程序。
2.1 搭建java开发环境 31
2.1.1 下载并安装jdk 31
2.1.2 设定环境变量 33
2.1.3 验证jdk环境是否配置成功 34
2.2 搭建java web运行环境 35
2.2.1 下载tomcat 7 35
2.2.2 设定tomcat_home 36
2.2.3 验证tomcat 7是否安装成功 37
2.2.4 在tomcat 7下创建和发布web应用 39
2.3 搭建java web开发环境 41
2.3.1 下载并安装eclipse 41
2.3.2 下载并安装myeclipse 43
2.3.3 整合myeclipse和tomcat 7 45
2.3.4 关于myeclipse的一些常用操作 47
2.4 使用myeclipse创建和发布web应用 49
2.4.1 编写能输出helloworld的jsp文件 52
2.4.2 运行jsp文件 53
2.5 小结 53
第3章 搭建数据库开发环境
虽然前面讲解了如何搭建java的开发环境,以及java web的运行环境,但这对于实际的java web开发来说还是不够,目前绝大多数的java web应用,都是建立在数据库基础上的,因此本章将讲解数据库环境的搭建。
本章首先对mysql数据库进行简单的介绍,然后重点讲解mysql数据库的安装和使用方法,最后还简单介绍了oracle数据库。
3.1 mysql概述 55
3.1.1 mysql简介 55
3.1.2 下载并安装mysql 55
3.1.3 配置mysql 59
3.1.4 下载并安装sqlyog 61
3.1.5 sqlyog访问服务器 63
3.1.6 下载并安装xampp 65
3.1.7 下载mysql的数据库驱动程序 67
3.2 使用mysql数据库 68
3.2.1 采用sqlyog创建数据库 68
3.2.2 采用sqlyog创建表格 69
3.2.3 采用xampp管理mysql数据库 70
3.2.4 创建数据库表 71
3.3 sql语法介绍 72
3.3.1 sql简介 73
3.3.2 sql基本语法 73
3.4 oracle简介 76
3.4.1 下载数据库服务器oracle 76
3.4.2 安装数据库服务器oracle 79
3.4.3 安装数据库服务器oracle客户端 79
3.5 小结 81
第二部分
第4章 javascript技术详解
javascript在页面控制方面起着不可代替的作用,但它在编程方面的一些不好的习惯也饱受诟病,但自从prototype推出以后,开发人员突然发现,原来javascript可以使用面向对象的方式编程,也可以促使开发人员养成良好的编程习惯。
本章首先对javascript的基础知识进行介绍,然后重点讲解javascript的函数、对象和事件处理机制,以及如何使用javascript来面向对象编程,最后着重讲解xmlhttprequest对象,从而使读者真正理解javascript的强大功能。
4.1 javascript语言基础 84
4.1.1 变量和数据类型 84
4.1.2 运算符和表达式 85
4.1.3 程序控制语句 88
4.2 自定义函数 90
4.2.1 函数的定义 90
4.2.2 函数的使用 90
4.3 系统内部函数 91
4.3.1 使用eval返回字符串的值 91
4.3.2 使用escape进行字符编码 93
4.3.3 使用unescape进行字符解码 93
4.3.4 使用parseint和parsefloat进行数值转换 94
4.3.5 使用typeof判断对象类型 95
4.3.6 使用isfinite判断一个变量是否有界 96
4.3.7 使用isnan判断一个变量是否是数值 97
4.4 系统内部对象 97
4.4.1 array对象 98
4.4.2 object对象 99
4.4.3 window对象 100
4.4.4 navigator对象 102
4.4.5 location对象 104
4.4.6 history对象 105
4.4.7 screen对象 107
4.5 xmlhttprequest概述 108
4.5.1 xmlhttprequest的生命周期 108
4.5.2 xmlhttprequest的方法和属性 113
4.5.3 建立xmlhttprequest对象池 114
4.5.4 使用iframe代替xmlhttprequest 117
4.6 小结 121
第5章 servlet技术详解
javascript、servlet、jsp和jdbc是进行java web开发必备的基本技术。上一章讲解了javascript的基础知识,本章重点讲解servlet的基础知识。本章首先对servlet进行简要的介绍,然后详细讲解servlet的生命周期,最后通过示例演示servlet的使用方法。
5.1 servlet技术简介 123
5.1.1 servlet的运行原理 123
5.1.2 myeclipse开发工具对servlet的支持 125
5.2 servlet的生命周期 128
5.2.1 加载servlet 128
5.2.3 处理请求 129
5.2.3 处理请求 129
5.2.4 服务结束 129
5.3 filter技术 129
5.3.1 filter技术原理 130
5.3.2 filter示例 130
5.4 servlet 3.0新特性 132
5.4.1 支持异步处理 132
5.4.2 支持注解 132
5.4.3 支持可插性(pluggability) 134
5.5 关于servlet 3.0实例 134
5.5.1 关于servlet 3.0环境的搭建 134
5.5.2 servlet 3.0示例 137
5.6 小结 139
第6章 jsp技术详解
javascript、servlet、jsp和jdbc是进行java web开发必备的基本技术。上一章讲解了servlet的基础知识,本章重点讲解jsp的基础知识。jsp是一种纯java平台技术,采用jsp开发的web应用是跨平台的,既可以在windows下运行,也可以在unix下运行。
6.1 jsp技术简介 141
6.1.1 jsp基本概念 141
6.1.2 myeclipse开发工具对jsp的支持 141
6.2 jsp的基本语法 142
6.2.1 基本语句 142
6.2.2 数据类型 144
6.3 jsp的内置对象 145
6.3.1 request对象 145
6.3.2 response对象 146
6.3.3 pagecontext对象 146
6.3.4 session对象 147
6.3.5 application对象 148
6.3.6 out对象 148
6.4 jsp技术应用 149
6.4.1 使用jsp操作cookie 149
6.4.2 利用缓存技术提高jsp性能 150
6.5 小结 151
第7章 jdbc技术详解
一般来讲,现在的java web开发已经很少直接使用jdbc进行数据库的相关操作了,一般都是自己对jdbc进行封装,或者直接使用开源的orm产品,但万变不离其宗,最终它们都离不开对jdbc的操作,因此了解jdbc的原理还是非常必要的。
本章首先介绍jdbc的基础知识,然后通过示例讲解如何使用jdbc操作数据库,最后讲解事务管理和数据库连接池的相关知识。
7.1 jdbc概述 153
7.1.1 jdbc相关概念 153
7.1.2 配置jdbc驱动程序 154
7.2 jdbc基础应用——数据库连接 156
7.2.1 jdbc数据连接示例 156
7.2.2 典型的jdbc数据连接的步骤 157
7.3 各种驱动程序实例 160
7.3.1 利用java到数据库协议方式连接数据库 160
7.3.2 利用java到本地api方式连接数据库 161
7.3.3 利用jdbc-odbc方式连接数据库 163
7.4 jdbc高级应用——事务处理 165
7.4.1 事务处理概述 166
7.4.2 如何应用事务处理 166
7.5 jdbc高级应用——数据库连接池 167
7.5.1 数据库连接池简介 167
7.5.2 数据库连接池原理 168
7.5.3 配置和使用服务器tomcat 7连接池 171
7.6 小结 172
第三部分
第8章 ajax技术详解
近两年来,ajax逐渐成为一个炙手可热的名词,其良好的用户体验,得到人们越来越多的推崇。它整合了xmlhttprequest、javascript、dom、css、xml等众多技术,使得原来笨拙的web界面变得交互性十足。
本章从ajax的来源讲起,介绍其工作原理、发展趋势和应用示例,然后分别介绍ajax的核心技术,最后介绍目前比较流行的ajax实现框架,并对它们进行比较。目的是让读者明白什么是ajax?如何应用ajax。
8.1 ajax概述 175
8.1.1 ajax的来源 175
8.1.2 ajax的工作原理 175
8.1.3 ajax的发展趋势 176
8.1.4 ajax的应用示例 177
8.2 ajax涉及的技术 177
8.2.1 xmlhttprequest技术 178
8.2.2 javascript(java脚本语言) 179
8.2.3 dom(文档对象模型) 180
8.2.4 css(层叠样式表单) 181
8.2.5 xml(可扩展标识语言) 182
8.3 ajax技术效果 182
8.3.1 传统实现方式 182
8.3.2 ajax实现方式 186
8.3.3 两种实现方式对比分析 189
8.4 关于ajax的经典框架——jquery 189
8.4.1 jquery框架的下载和配置 190
8.4.2 jquery框架的简单使用 190
8.5 关于jquery框架的经典运用 193
8.5.1 级联菜单 193
8.5.2 窗口的淡入/淡出 195
8.5.3 可编辑边框 197
8.6 ajax的主流框架 199
8.6.1 ext 199
8.6.2 prototype 201
8.6.3 dojo 202
8.6.4 dwr 203
8.6.5 gwt 203
8.6.6 buffalo 204
8.6.7 json-rpc 205
8.7 小结 205
第9章 struts 2技术详解
要学习java web开发技术,就绕不开开源框架struts 2,尽管现在spring 3比较流行,但struts 2仍然拥有大量的爱好者,特别是struts 2的发布,更是有了革命性的进步。本章首先对struts 2的基本情况和发展历史进行简要介绍,然后通过一个简单的示例让读者快速了解struts 2的使用方法,接下来着重讲解struts 2的特性,以加深认识。
9.1 struts 2介绍 207
9.2 struts 2的环境配置 207
9.2.1 下载struts 2 208
9.2.2 搭建struts 2的开发运行环境 209
9.3 struts 2入门示例 211
9.3.1 编写实现消息输出的helloworld.jsp页面 212
9.3.2 编写控制器helloworld.java 212
9.3.3 配置struts文档struts.xml和struts.properties 213
9.3.4 配置web.xml 214
9.3.5 测试运行该示例 215
9.4 struts 2的核心机制——过滤器 216
9.5 struts 2的核心机制——输入校验 219
9.5.1 输入校验简介 219
9.5.2 struts 2的输入校验——校验框架 222
9.5.3 struts 2的输入校验——复写validate方法 226
9.6 struts 2的核心机制——拦截器 227
9.6.1 struts 2的拦截机制 228
9.6.2 struts 2拦截器应用——对运行时间较长视图界面的处理 231
9.7 struts 2的核心机制——国际化 233
9.7.1 struts 2国际化简介 233
9.7.2 深入了解国际化——全局资源文件 236
9.7.3 深入了解国际化——类资源文件 238
9.7.4 深入了解国际化——包资源文件 240
9.8 struts 2的核心机制——标签库 242
9.9 struts 2的核心机制——配置文件 244
9.9.1 struts.properties 244
9.9.2 struts.xml 247
9.10 struts 2综合示例 248
9.10.1 档案管理系统的uml用例图 248
9.10.2 档案管理系统功能描述 249
9.10.3 描述系统的业务实体 254
9.10.4 组织系统的业务逻辑 255
9.10.5 档案存放位置实体的实现 256
9.10.6 档案基本信息实体的实现 258
9.10.7 档案借阅记录实体的实现 261
9.10.8 存放位置管理画面 266
9.10.9 档案管理画面 267
9.10.10 档案借阅记录管理画面 269
9.10.11 实现管理存放位置的功能 272
9.10.12 实现管理档案的功能 275
9.10.13 实现管理档案借阅记录的功能 281
9.10.14 实现struts 2的登录控制器类 286
9.10.15 编写配置文件 288
9.10.16 程序演示 292
9.11 小结 294
第10章 spring 3技术详解
如今在java web开发中,占据统治地位的无疑是spring 3框架了,它所具有的整合功能,使得它能很好地和其他框架结合使用,从而为java web开发人员进行企业级的应用开发提供了一个一站式的解决方案。
本章首先讲解spring 3的历史和整体框架;然后建立spring 3的开发环境,接着通过一个入门示例让读者建立起对spring 3开发的初步印象;最后讲解spring 3在事务处理、与其他框架整合方面的一些特性。
10.1 spring概述 296
10.1.1 spring简介 296
10.1.2 spring 3整体框架 296
10.2 spring 3环境配置 297
10.2.1 下载spring 3框架 297
10.2.2 搭建spring 3的开发运行环境 299
10.3 spring 3入门示例 302
10.3.1 编写jsp页面helloworld.jsp 302
10.3.2 编写控制器helloworld.java 302
10.3.3 配置spring文档applicationcontext.xml 304
10.3.4 配置web.xml 305
10.3.5 测试运行该示例 306
10.4 spring的核心机制 306
10.4.1 控制反转思想 306
10.4.2 分发器原理 310
10.5 spring 3多动作控制器 313
10.5.1 多动作控制器的原理 313
10.5.2 多动作控制器的示例 316
10.6 实现spring与struts 2集成 319
10.6.1 关于spring框架的插件 319
10.6.2 spring与struts 2框架集成 321
10.7 spring 3综合示例 324
10.7.1 权限管理系统功能概述 324
10.7.2 业务实体设计 326
10.7.3 自动生成数据库表结构 330
10.7.4 dao模型的实现 340
10.7.5 业务逻辑功能实现 344
10.7.6 编写权限管理系统的jsp页面 348
10.7.7 编写spring 3的配置文件config.xml 352
10.7.8 测试运行该示例 356
10.8 小结 359
第11章 hibernate 3技术详解
hibernate 3是目前最流行的开源持久层框架,它对jdbc进行了非常轻量级的封装,使得开发人员可以使用面向对象的思想来设计数据库。
本章首先对hibernate 3进行简要介绍,并讲解它的下载和配置,然后重点讲解hibernate 3的核心类,以及对jpa 2的支持、映射关系和缓存机制,最后通过示例讲解如何将struts 2、spring 3和hibernate 3进行整合。
11.1 hibernate概述 361
11.1.1 hibernate简介 361
11.1.2 hibernate 3整体框架 361
11.1.3 搭建hibernate 3的开发运行环境 362
11.2 hibernate 3入门示例 365
11.2.1 对hibernate 3框架支持——关系数据库到对象映射 365
11.2.2 hibernate 3框架中经常用到的工具类 369
11.3 hibernate 3的基础 372
11.3.1 hibernate 3框架核心类——configuration类 373
11.3.2 hibernate 3的主键生成机制 374
11.3.3 hibernate 3的两种配置方式 375
11.4 hibernate 3的配置文件 375
11.4.1 hibernate 3的两种配置方式 375
11.4.2 配置数据库连接池 376
11.4.3 从容器中获取数据库连接池 379
11.5 hibernate 3的关系映射 380
11.5.1 一对一映射 380
11.5.2 一对多和多对一映射 381
11.5.3 多对多映射 382
11.6 hibernate 3缓存机制 382
11.6.1 一级缓存 382
11.6.2 二级缓存 384
11.7 hibernate对jpa的支持 384
11.7.1 jpa简介 385
11.7.2 persistence.xml详细配置 390
11.8 myeclipse开发环境对jpa的支持 391
11.8.1 用myeclipse实现jpa框架环境 391
11.8.2 myeclipse对jpa框架支持——添加实体 393
11.8.3 myeclipse对jpa框架支持——单个类转成jpa实体 395
11.9 hibernate 3框架与其他框架的集成 398
11.9.1 spring 3+hibernate 3框架的集成 398
11.9.2 struts 2+spring 3+hibernate 3框架的集成 401
11.10 spring 3和hibernate 3整合示例 403
11.10.1 图书管理系统功能描述 403
11.10.2 spring 3和hibernate 3的整合方式 405
11.10.3 持久层功能的实现 408
11.10.4 实现对读者的管理功能 414
11.10.5 实现对图书的管理功能 416
11.10.6 实现维护借阅规则的功能 420
11.10.7 实现借阅和归还图书的功能 422
11.10.8 编写图书管理系统的jsp页面 427
11.10.9 编写配置文件config.xml 429
11.10.10 测试运行该示例 432
11.11 小结 434
第四部分
第12章 log4j使用指南
在log4j出现以前,在应用程序中添加日志记录最常用的做法就是在代码中添加打印语句,然后通过控制台或日志文件来观察变量的变化,或者跟踪代码运行的踪迹。现在,log4j是承担这个功能的最佳选择。
本章首先简要介绍log4j,以及为什么要使用log4j,然后讲解如何下载和配置log4j,重点讲解log4j的使用方法。
12.1 log4j简介 437
12.1.1 log4j概述 437
12.1.2 为什么要使用log4j 437
12.2 建立log4j的开发环境 438
12.2.1 下载log4j 438
12.2.2 配置log4j 439
12.3 log4j的使用方法 439
12.3.1 log4j的基本使用方法 439
12.3.2 日志的输出格式 440
12.3.3 日志的输出位置 441
12.3.4 日志的优先级 442
12.4 小结 442
第13章 junit使用指南
junit是由erich gamma和kent beck编写的一个回归测试框架,使用起来非常简单,目前绝大多数开源框架都使用junit进行单元测试。
本章首先对junit进行介绍并阐述为什么要使用junit,然后介绍junit的下载和安装、junit的使用方法,最后介绍junit的新特性。
13.1 为什么要进行单元测试 444
13.2 建立junit 4的开发环境 446
13.2.1 下载junit 4组件 446
13.2.2 搭建junit 4项目环境 447
13.2.3 junit 4组件入门示例 449
13.2.4 入门示例的升级版 451
13.3 junit的使用方法 453
13.3.1 junit 4的基本使用方法 453
13.3.2 在spring 3中使用junit 4 454
13.3.3 junit与ant整合 455
13.4 小结 456
第14章 jfreechart使用指南
在java web开发中经常会用到图表,比如柱状图、饼图、条形图等,使用jfreechart可以很方便地生成这些图表。本章首先对jfreechart进行介绍,然后介绍jfreechart的下载和安装,最后介绍jfreechart的使用方法。
14.1 jfreechart概述 458
14.2 搭建jfreechart的开发环境 458
14.2.1 下载jfreechart 458
14.2.2 搭建jfreechart项目环境 459
14.2.3 jfreechart组件入门示例 461
14.3 jfreechart的高级应用 464
14.3.1 jfreechart的核心类 465
14.3.2 java web项目实现饼形图形 465
14.4 小结 467
第15章 dom4j使用指南
在当前的java web开发中,xml文件的使用越来越频繁,如何创建和解析xml文件就变得非常重要了,而dom4j就是一个非常好用的读/写xml文件的工具。
本章首先对dom4j进行介绍,并阐述为什么要使用dom4j,然后介绍dom4j的下载和安装,最后介绍dom4j的使用方法。
15.1 dom4j简介 469
15.2 建立dom4j的开发环境 469
15.2.1 下载dom4j 469
15.2.2 搭建dom4j项目环境 470
15.2.3 dom4j组件入门示例 471
15.2.4 dom4j组件入门示例升级版 474
15.3 dom4j的使用方法 475
15.3.1 dom4j的基本使用方法 475
15.3.2 dom4j组件的高级应用——创建xml文件 477
15.4 小结 479
第五部分
第16章 注册管理系统(jsp+javabean)
在struts 2和spring 3这些框架出现之前,第一代的java web开发技术就是jsp+javabean。采用这种技术组合开发速度非常快,但经常会造成代码逻辑混乱,后期维护困难。虽然现在新开发的项目基本没有人再使用这种技术组合,但作为最基本的技术,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》将通过注册管理系统详细地讲解一下。
16.1 注册管理系统需求描述 482
16.1.1 注册功能 482
16.1.2 登录功能 482
16.1.3 查看注册用户列表功能 483
16.2 设计javabean 483
16.3 数据库设计 486
16.3.1 数据库表结构设计与建立 486
16.3.2 建立数据库连接辅助类 488
16.4 jsp页面实现 489
16.4.1 用户注册管理画面 489
16.4.2 登录画面 490
16.4.3 查看注册用户列表画面 490
16.5 程序演示 491
16.6 小结 492
第17章 新闻发布系统(jsp+servlet+dao)
每个企业都会用到新闻发布系统,对于企业内网来说,发布一些公司的新闻,以供内部员工了解公司的运营;对于企业外网来说,也可以让外部的客户了解企业的情况。
本章使用最基本的jsp+servlet+dao来实现一个简单的框架,实现和使用spring 3+jpa 2类似的功能,然后通过该框架实现新闻发布系统。
17.1 需求描述 494
17.2 功能预览 494
17.2.1 设定新闻类别功能 494
17.2.2 登录功能 495
17.2.3 登录成功后的选择功能 495
17.2.4 发布新闻功能 495
17.2.5 浏览新闻功能 496
17.3 采用jsp+servlet+dao+jdbc架构 496
17.3.1 设计视图层的架构 497
17.3.2 设计控制层的架构 497
17.3.3 设计模型层的架构 503
17.3.4 设计持久层的架构 504
17.4 系统设计 508
17.4.1 如何实现对数据库的操作 509
17.4.2 如何实现持久层的设计 509
17.4.3 如何实现新闻发布系统的业务逻辑 510
17.5 数据库设计 511
17.5.1 数据库表结构设计与建立 511
17.5.2 配置数据库连接 513
17.6 dao模型的实现 514
17.6.1 管理员dao的实现 514
17.6.2 新闻类别dao的实现 516
17.6.3 新闻dao的实现 518
17.7 编写新闻发布系统的业务逻辑类 521
17.7.1 管理管理员的业务逻辑实现 522
17.7.2 管理新闻类别的业务逻辑实现 524
17.7.3 管理新闻的业务逻辑实现 527
17.8 编写新闻发布系统的控制器类 530
17.8.1 管理员控制器类 531
17.8.2 新闻类别管理控制器类 532
17.8.3 发布浏览新闻控制器类 534
17.8.4 登录控制器类 537
17.9 前台页面的实现 538
17.9.1 新闻类别管理画面 538
17.9.2 发布新闻画面 540
17.9.3 登录画面 542
17.9.4 登录成功的画面 544
17.9.5 浏览新闻画面 545
17.10 编写配置文件newsrelease.xml 546
17.11 程序演示 547
17.12 小结 549
第18章 网上购物系统(ajax+struts 2+hibernate 3)
随着当当网、淘宝网的不断发展,越来越多的人开始在网上购物了。网上购物系统是如何实现的呢?本章就来讲解一下它的实现方式。ajax技术能够极大地提升用户的操作体验,因此本章采用ajax+struts 2+spring 3的方式实现网上购物系统,主要包括货物的维护与陈列、用户的浏览和购买,以及购物车的维护等基本功能。
18.1 系统概述 551
18.2 需求分析 551
18.2.1 购物者注册功能 552
18.2.2 对货物进行分类存放的功能 552
18.2.3 维护货物基本信息的功能 552
18.2.4 浏览购买货物的功能 553
18.2.5 管理购物车的功能 553
18.3 系统与架构设计 554
18.3.1 dwr和struts 2的整合方式 554
18.3.2 搭建开发环境 556
18.3.3 后台持久层设计 557
18.3.4 后台业务逻辑设计 558
18.4 构建数据库表结构 559
18.4.1 实现业务实体间的对应关系 559
18.4.2 配置数据连接文件 567
18.4.3 查看数据库表结构 568
18.5 后台持久层实现 568
18.5.1 购物者持久层实现 569
18.5.2 货物类别持久层实现 571
18.5.3 货物持久层实现 572
18.5.4 购物车持久层实现 574
18.6 后台业务逻辑的实现 576
18.6.1 管理购物者的功能实现 576
18.6.2 管理货物类别的功能实现 577
18.6.3 管理货物的功能实现 578
18.6.4 管理购物车的功能实现 580
18.7 编写网上购物系统的控制器类 581
18.7.1 货物类别管理控制器类 581
18.7.2 货物管理控制器类 583
18.7.3 购物车管理控制器类 585
18.7.4 登录验证的配置文件 588
18.8 前台jsp页面实现 591
18.8.1 采用dwr实现验证 591
18.8.2 货物类别管理画面 592
18.8.3 货物管理画面 593
18.8.4 浏览购买货物画面 595
18.8.5 修改购货记录画面 596
18.9 编写配置文件 598
18.10 程序演示 599
18.11 小结 601
第19章 用户管理系统(spring 3+hibernate 3)
所有的信息化系统都离不开对用户的管理,比如人事管理系统中需要对员工信息进行管理,学生管理系统中需要对学生信息进行管理,本章将采用spring 3+hibernate 3的整合来进行讲解。
本章的主要目的是使读者通过对spring 3+hibernate 3整合方法的学习,熟练地掌握这种组合方式,为后面的学习打下良好的基础。
19.1 需求的提出 603
19.2 需求分析 604
19.2.1 采用用例的方式分析需求 604
19.2.2 产生需求规格说明书 604
19.3 架构设计 608
19.3.1 用户管理系统采用的架构 608
19.3.2 在myeclipse下建立项目usermanagement 608
19.3.3 配置本项目的web.xml文件 610
19.4 系统设计 611
19.4.1 实体域模型设计 611
19.4.2 dao模型设计 612
19.4.3 过程域模型设计 612
19.4.4 控制模型设计 612
19.4.5 视图模型设计 613
19.5 数据库设计 613
19.5.1 根据实体模型设计数据库表结构 613
19.5.2 根据数据库表生成对应的xml文件 615
19.5.3 根据xml文件生成持久化类 617
19.6 编写用户管理系统的dao 625
19.6.1 用户dao接口userdao.java 625
19.6.2 部门dao接口departmentdao.java 626
19.6.3 地址dao接口addressdao.java 626
19.6.4 联系电话dao接口phonedao.java 627
19.6.5 用户dao实现类userdaoimpl.java 627
19.6.6 部门dao实现类departmentdaoimpl.java 628
19.6.7 地址dao实现类addressdaoimpl.java 629
19.6.8 联系电话dao实现类phonedaoimpl.java 630
19.7 编写用户管理系统的业务逻辑类 631
19.7.1 管理用户接口userservice.java 631
19.7.2 管理部门接口departmentservice.java 632
19.7.3 管理地址接口addressservice.java 632
19.7.4 管理联系电话接口phoneservice.java 633
19.7.5 管理用户实现类userserviceimpl.java 633
19.7.6 管理部门实现类departmentserviceimpl.java 635
19.7.7 管理地址实现类addressserviceimpl.java 636
19.7.8 管理联系电话实现类phoneserviceimpl.java 637
19.8 编写用户管理系统的控制器类 638
19.8.1 登录控制器类logincontroller.java 639
19.8.2 用户管理控制器类usercontroller.java 640
19.9 编写用户管理系统的jsp页面 645
19.9.1 用户管理画面usermanagement.jsp 646
19.9.2 用户登录画面login.jsp 648
19.10 编写配置文件config.xml 649
19.11 程序演示 653
19.12 小结 655
第20章 留言簿管理系统(jsf 2+struts 2+spring 3)
在博客出现以前,论坛和留言簿是网站用来和浏览者交流的主要方式,本章就来探讨一下留言簿的实现原理。本章采用jsf 2作为视图层的实现技术,采用struts 2的控制器技术,采用spring 3来整合struts 2和jpa 2。
20.1 系统概述 657
20.2 需求分析 657
20.2.1 uml用例图 657
20.2.2 采用原型法进行分析 657
20.3 系统与架构设计 659
20.3.1 jsf 2和struts 2的整合方式 659
20.3.2 在myeclipse下建立项目bbsmanagement 661
20.3.3 配置本项目的web.xml文件 661
20.3.4 持久层的设计 662
20.3.5 业务逻辑的设计 663
20.4 持久层设计与实现 664
20.4.1 数据模型设计 664
20.4.2 建立数据库表结构 670
20.4.3 留言内容的持久层实现 673
20.4.4 留言回复的持久层实现 674
20.5 前台jsp页面实现 675
20.5.1 发布留言内容管理画面 676
20.5.2 回复留言内容画面 677
20.5.3 浏览留言内容画面 678
20.5.4 使用jsf来实现画面 679
20.6 后台业务逻辑的实现 680
20.6.1 管理留言内容接口 680
20.6.2 管理留言回复接口 681
20.6.3 管理留言内容实现类 681
20.6.4 管理留言回复实现类 682
20.7 控制器类的实现 684
20.7.1 留言内容管理控制器类 684
20.7.2 留言回复管理控制器类 686
20.8 编写struts 2的配置文件struts.xml 688
20.9 编写spring 3的配置文件config.xml 689
20.10 程序演示 691
20.11 小结 693
第21章 网上考试系统(struts 2+spring 3+hibernate 3+jpa 2)
标准化的考试变得越来越流行,因为参加考试人员在网上答题,提交后计算机就会自动判卷,成绩马上出来,组织考试的人员再也不用打印试卷和判卷了,节省了很大的工作量,因此本章探讨一下网上考试系统的实现原理。
网上考试系统主要包括试题的维护、试卷的生成、参加考试,以及查看考试成绩等功能,本章按照标准的软件开发过程来进行,以使读者能够从头到尾了解整个网上考试系统的开发过程。
21.1 需求的提出 695
21.2 需求分析 695
21.2.1 组合试卷功能 696
21.2.2 维护试题题目功能 697
21.2.3 维护试题项目功能 698
21.2.4 参加考试自动评分功能 699
21.2.5 查看考试结果功能 700
21.3 架构选择 700
21.3.1 是否应该采用ajax或jsf 700
21.3.2 搭建和配置开发环境 701
21.3.3 网上考试系统的目录结构 702
21.4 系统设计 702
21.4.1 业务实体和持久层设计 702
21.4.2 业务逻辑和控制层设计 703
21.4.3 视图层设计 704
21.5 建立数据库表逻辑结构 705
21.5.1 业务实体的实现 705
21.5.2 配置生成数据库的相关文件 710
21.5.3 根据实体自动生成数据库表结构 711
21.6 dao模型实现 712
21.6.1 试卷基本信息dao 712
21.6.2 试题题目 713
21.6.3 试题项目 714
21.7 业务逻辑实现 716
21.7.1 添加试卷基本信息的业务逻辑 716
21.7.2 修改试卷基本信息的业务逻辑 719
21.7.3 删除试卷基本信息的业务逻辑 720
21.7.4 添加试题题目的业务逻辑 720
21.7.5 修改试题题目的业务逻辑 724
21.7.6 删除试题题目的业务逻辑 725
21.7.7 添加试题项目的业务逻辑 725
21.7.8 修改试题项目的业务逻辑 728
21.7.9 删除试题项目的业务逻辑 729
21.7.10 产生试卷的业务逻辑 729
21.7.11 自动评分的业务逻辑 730
21.8 编写网上考试系统的jsp页面 731
21.8.1 试卷基本信息管理画面 731
21.8.2 试题题目管理画面 733
21.8.3 试题项目管理画面 734
21.8.4 参加考试画面 736
21.8.5 查看考试成绩画面 737
21.9 编写struts 2的配置文件struts.xml 738
21.10 编写spring 3的配置文件config.xml 739
21.11 程序演示 741
21.12 小结 743
第0章 java web开发总览
在阅读《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》之前,请各位读者务必先阅读本章的内容。本章主要描述项目开发的流程、如何进行架构设计、如何设计包结构等内容,这些内容是《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》编写的基础。通过对本章节的阅读,读者可以了解《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》各章节安排的基本指导思想,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》精选案例的设计思路。
第一部分
第1章 java web开发思想
随着it技术的发展和企业对信息化需求的日益增加,在软件开发技术方面逐渐分为了两个阵营:java和.net。因为java在安全性、跨平台性及分层次的架构方面有着不可比拟的优势,所以特别适合于大型企业级应用的开发,javaee就是java平台中专门为企业应用制定的标准框架。本章将从javaee的发展讲起,在读者了解了javaee的运行模式后,再逐个讲解javaee的核心技术,然后通过对mvc模式的讲解,使读者认识到mvc是如何实现javaee框架的,最后讲解java web开发所需的常用技术。
1.1 javaee简介 9
1.1.1 javaee的发展 9
1.1.2 javaee运行模式 10
1.2 javaee核心技术 11
1.2.1 jsp(java服务页面) 12
1.2.2 servlet 12
1.2.3 ejb(企业级javabean) 13
1.2.4 jdbc(java数据库连接) 14
1.2.5 jta(java事务) 15
1.2.6 javamail(java邮件服务) 16
1.2.7 jms(java消息服务) 17
1.2.8 rmi(远程方法调用) 18
1.2.9 jndi(java命名和目录服务) 18
1.2.10 xml(扩展标识语言) 19
.1.2.11 jmx(java分布式管理) 20
1.2.12 jacc(java容器授权合同) 20
1.2.13 jca(java连接器体系) 21
1.3 mvc模式原理 22
1.4 model规范 23
1.4.1 model 1规范 23
1.4.2 model 2规范 24
1.5 java web开发所需要的技术 24
1.5.1 ajax 25
1.5.2 mvc框架 27
1.5.3 持久层技术 28
1.6 java web开发学习路线图 29
1.7 小结 29
第2章 搭建java web开发和运行环境
要进行java web程序开发,就离不开编译java的环境jdk,也离不开运行jsp和servlet的容器,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》选择tomcat 7,此外还需要能够快速开发代码的辅助工具eclipse和myeclipse。有很多初学者会在环境的配置上困扰,因此在开发java web程序之前,有必要先介绍一下这些软件和工具的安装、配置和使用方法。
本章首先建立java开发环境,然后配置tomcat 7和myeclipse,通过本章开发环境的搭建,使读者能够在此基础上开发、创建和发布web应用程序。
2.1 搭建java开发环境 31
2.1.1 下载并安装jdk 31
2.1.2 设定环境变量 33
2.1.3 验证jdk环境是否配置成功 34
2.2 搭建java web运行环境 35
2.2.1 下载tomcat 7 35
2.2.2 设定tomcat_home 36
2.2.3 验证tomcat 7是否安装成功 37
2.2.4 在tomcat 7下创建和发布web应用 39
2.3 搭建java web开发环境 41
2.3.1 下载并安装eclipse 41
2.3.2 下载并安装myeclipse 43
2.3.3 整合myeclipse和tomcat 7 45
2.3.4 关于myeclipse的一些常用操作 47
2.4 使用myeclipse创建和发布web应用 49
2.4.1 编写能输出helloworld的jsp文件 52
2.4.2 运行jsp文件 53
2.5 小结 53
第3章 搭建数据库开发环境
虽然前面讲解了如何搭建java的开发环境,以及java web的运行环境,但这对于实际的java web开发来说还是不够,目前绝大多数的java web应用,都是建立在数据库基础上的,因此本章将讲解数据库环境的搭建。
本章首先对mysql数据库进行简单的介绍,然后重点讲解mysql数据库的安装和使用方法,最后还简单介绍了oracle数据库。
3.1 mysql概述 55
3.1.1 mysql简介 55
3.1.2 下载并安装mysql 55
3.1.3 配置mysql 59
3.1.4 下载并安装sqlyog 61
3.1.5 sqlyog访问服务器 63
3.1.6 下载并安装xampp 65
3.1.7 下载mysql的数据库驱动程序 67
3.2 使用mysql数据库 68
3.2.1 采用sqlyog创建数据库 68
3.2.2 采用sqlyog创建表格 69
3.2.3 采用xampp管理mysql数据库 70
3.2.4 创建数据库表 71
3.3 sql语法介绍 72
3.3.1 sql简介 73
3.3.2 sql基本语法 73
3.4 oracle简介 76
3.4.1 下载数据库服务器oracle 76
3.4.2 安装数据库服务器oracle 79
3.4.3 安装数据库服务器oracle客户端 79
3.5 小结 81
第二部分
第4章 javascript技术详解
javascript在页面控制方面起着不可代替的作用,但它在编程方面的一些不好的习惯也饱受诟病,但自从prototype推出以后,开发人员突然发现,原来javascript可以使用面向对象的方式编程,也可以促使开发人员养成良好的编程习惯。
本章首先对javascript的基础知识进行介绍,然后重点讲解javascript的函数、对象和事件处理机制,以及如何使用javascript来面向对象编程,最后着重讲解xmlhttprequest对象,从而使读者真正理解javascript的强大功能。
4.1 javascript语言基础 84
4.1.1 变量和数据类型 84
4.1.2 运算符和表达式 85
4.1.3 程序控制语句 88
4.2 自定义函数 90
4.2.1 函数的定义 90
4.2.2 函数的使用 90
4.3 系统内部函数 91
4.3.1 使用eval返回字符串的值 91
4.3.2 使用escape进行字符编码 93
4.3.3 使用unescape进行字符解码 93
4.3.4 使用parseint和parsefloat进行数值转换 94
4.3.5 使用typeof判断对象类型 95
4.3.6 使用isfinite判断一个变量是否有界 96
4.3.7 使用isnan判断一个变量是否是数值 97
4.4 系统内部对象 97
4.4.1 array对象 98
4.4.2 object对象 99
4.4.3 window对象 100
4.4.4 navigator对象 102
4.4.5 location对象 104
4.4.6 history对象 105
4.4.7 screen对象 107
4.5 xmlhttprequest概述 108
4.5.1 xmlhttprequest的生命周期 108
4.5.2 xmlhttprequest的方法和属性 113
4.5.3 建立xmlhttprequest对象池 114
4.5.4 使用iframe代替xmlhttprequest 117
4.6 小结 121
第5章 servlet技术详解
javascript、servlet、jsp和jdbc是进行java web开发必备的基本技术。上一章讲解了javascript的基础知识,本章重点讲解servlet的基础知识。本章首先对servlet进行简要的介绍,然后详细讲解servlet的生命周期,最后通过示例演示servlet的使用方法。
5.1 servlet技术简介 123
5.1.1 servlet的运行原理 123
5.1.2 myeclipse开发工具对servlet的支持 125
5.2 servlet的生命周期 128
5.2.1 加载servlet 128
5.2.3 处理请求 129
5.2.3 处理请求 129
5.2.4 服务结束 129
5.3 filter技术 129
5.3.1 filter技术原理 130
5.3.2 filter示例 130
5.4 servlet 3.0新特性 132
5.4.1 支持异步处理 132
5.4.2 支持注解 132
5.4.3 支持可插性(pluggability) 134
5.5 关于servlet 3.0实例 134
5.5.1 关于servlet 3.0环境的搭建 134
5.5.2 servlet 3.0示例 137
5.6 小结 139
第6章 jsp技术详解
javascript、servlet、jsp和jdbc是进行java web开发必备的基本技术。上一章讲解了servlet的基础知识,本章重点讲解jsp的基础知识。jsp是一种纯java平台技术,采用jsp开发的web应用是跨平台的,既可以在windows下运行,也可以在unix下运行。
6.1 jsp技术简介 141
6.1.1 jsp基本概念 141
6.1.2 myeclipse开发工具对jsp的支持 141
6.2 jsp的基本语法 142
6.2.1 基本语句 142
6.2.2 数据类型 144
6.3 jsp的内置对象 145
6.3.1 request对象 145
6.3.2 response对象 146
6.3.3 pagecontext对象 146
6.3.4 session对象 147
6.3.5 application对象 148
6.3.6 out对象 148
6.4 jsp技术应用 149
6.4.1 使用jsp操作cookie 149
6.4.2 利用缓存技术提高jsp性能 150
6.5 小结 151
第7章 jdbc技术详解
一般来讲,现在的java web开发已经很少直接使用jdbc进行数据库的相关操作了,一般都是自己对jdbc进行封装,或者直接使用开源的orm产品,但万变不离其宗,最终它们都离不开对jdbc的操作,因此了解jdbc的原理还是非常必要的。
本章首先介绍jdbc的基础知识,然后通过示例讲解如何使用jdbc操作数据库,最后讲解事务管理和数据库连接池的相关知识。
7.1 jdbc概述 153
7.1.1 jdbc相关概念 153
7.1.2 配置jdbc驱动程序 154
7.2 jdbc基础应用——数据库连接 156
7.2.1 jdbc数据连接示例 156
7.2.2 典型的jdbc数据连接的步骤 157
7.3 各种驱动程序实例 160
7.3.1 利用java到数据库协议方式连接数据库 160
7.3.2 利用java到本地api方式连接数据库 161
7.3.3 利用jdbc-odbc方式连接数据库 163
7.4 jdbc高级应用——事务处理 165
7.4.1 事务处理概述 166
7.4.2 如何应用事务处理 166
7.5 jdbc高级应用——数据库连接池 167
7.5.1 数据库连接池简介 167
7.5.2 数据库连接池原理 168
7.5.3 配置和使用服务器tomcat 7连接池 171
7.6 小结 172
第三部分
第8章 ajax技术详解
近两年来,ajax逐渐成为一个炙手可热的名词,其良好的用户体验,得到人们越来越多的推崇。它整合了xmlhttprequest、javascript、dom、css、xml等众多技术,使得原来笨拙的web界面变得交互性十足。
本章从ajax的来源讲起,介绍其工作原理、发展趋势和应用示例,然后分别介绍ajax的核心技术,最后介绍目前比较流行的ajax实现框架,并对它们进行比较。目的是让读者明白什么是ajax?如何应用ajax。
8.1 ajax概述 175
8.1.1 ajax的来源 175
8.1.2 ajax的工作原理 175
8.1.3 ajax的发展趋势 176
8.1.4 ajax的应用示例 177
8.2 ajax涉及的技术 177
8.2.1 xmlhttprequest技术 178
8.2.2 javascript(java脚本语言) 179
8.2.3 dom(文档对象模型) 180
8.2.4 css(层叠样式表单) 181
8.2.5 xml(可扩展标识语言) 182
8.3 ajax技术效果 182
8.3.1 传统实现方式 182
8.3.2 ajax实现方式 186
8.3.3 两种实现方式对比分析 189
8.4 关于ajax的经典框架——jquery 189
8.4.1 jquery框架的下载和配置 190
8.4.2 jquery框架的简单使用 190
8.5 关于jquery框架的经典运用 193
8.5.1 级联菜单 193
8.5.2 窗口的淡入/淡出 195
8.5.3 可编辑边框 197
8.6 ajax的主流框架 199
8.6.1 ext 199
8.6.2 prototype 201
8.6.3 dojo 202
8.6.4 dwr 203
8.6.5 gwt 203
8.6.6 buffalo 204
8.6.7 json-rpc 205
8.7 小结 205
第9章 struts 2技术详解
要学习java web开发技术,就绕不开开源框架struts 2,尽管现在spring 3比较流行,但struts 2仍然拥有大量的爱好者,特别是struts 2的发布,更是有了革命性的进步。本章首先对struts 2的基本情况和发展历史进行简要介绍,然后通过一个简单的示例让读者快速了解struts 2的使用方法,接下来着重讲解struts 2的特性,以加深认识。
9.1 struts 2介绍 207
9.2 struts 2的环境配置 207
9.2.1 下载struts 2 208
9.2.2 搭建struts 2的开发运行环境 209
9.3 struts 2入门示例 211
9.3.1 编写实现消息输出的helloworld.jsp页面 212
9.3.2 编写控制器helloworld.java 212
9.3.3 配置struts文档struts.xml和struts.properties 213
9.3.4 配置web.xml 214
9.3.5 测试运行该示例 215
9.4 struts 2的核心机制——过滤器 216
9.5 struts 2的核心机制——输入校验 219
9.5.1 输入校验简介 219
9.5.2 struts 2的输入校验——校验框架 222
9.5.3 struts 2的输入校验——复写validate方法 226
9.6 struts 2的核心机制——拦截器 227
9.6.1 struts 2的拦截机制 228
9.6.2 struts 2拦截器应用——对运行时间较长视图界面的处理 231
9.7 struts 2的核心机制——国际化 233
9.7.1 struts 2国际化简介 233
9.7.2 深入了解国际化——全局资源文件 236
9.7.3 深入了解国际化——类资源文件 238
9.7.4 深入了解国际化——包资源文件 240
9.8 struts 2的核心机制——标签库 242
9.9 struts 2的核心机制——配置文件 244
9.9.1 struts.properties 244
9.9.2 struts.xml 247
9.10 struts 2综合示例 248
9.10.1 档案管理系统的uml用例图 248
9.10.2 档案管理系统功能描述 249
9.10.3 描述系统的业务实体 254
9.10.4 组织系统的业务逻辑 255
9.10.5 档案存放位置实体的实现 256
9.10.6 档案基本信息实体的实现 258
9.10.7 档案借阅记录实体的实现 261
9.10.8 存放位置管理画面 266
9.10.9 档案管理画面 267
9.10.10 档案借阅记录管理画面 269
9.10.11 实现管理存放位置的功能 272
9.10.12 实现管理档案的功能 275
9.10.13 实现管理档案借阅记录的功能 281
9.10.14 实现struts 2的登录控制器类 286
9.10.15 编写配置文件 288
9.10.16 程序演示 292
9.11 小结 294
第10章 spring 3技术详解
如今在java web开发中,占据统治地位的无疑是spring 3框架了,它所具有的整合功能,使得它能很好地和其他框架结合使用,从而为java web开发人员进行企业级的应用开发提供了一个一站式的解决方案。
本章首先讲解spring 3的历史和整体框架;然后建立spring 3的开发环境,接着通过一个入门示例让读者建立起对spring 3开发的初步印象;最后讲解spring 3在事务处理、与其他框架整合方面的一些特性。
10.1 spring概述 296
10.1.1 spring简介 296
10.1.2 spring 3整体框架 296
10.2 spring 3环境配置 297
10.2.1 下载spring 3框架 297
10.2.2 搭建spring 3的开发运行环境 299
10.3 spring 3入门示例 302
10.3.1 编写jsp页面helloworld.jsp 302
10.3.2 编写控制器helloworld.java 302
10.3.3 配置spring文档applicationcontext.xml 304
10.3.4 配置web.xml 305
10.3.5 测试运行该示例 306
10.4 spring的核心机制 306
10.4.1 控制反转思想 306
10.4.2 分发器原理 310
10.5 spring 3多动作控制器 313
10.5.1 多动作控制器的原理 313
10.5.2 多动作控制器的示例 316
10.6 实现spring与struts 2集成 319
10.6.1 关于spring框架的插件 319
10.6.2 spring与struts 2框架集成 321
10.7 spring 3综合示例 324
10.7.1 权限管理系统功能概述 324
10.7.2 业务实体设计 326
10.7.3 自动生成数据库表结构 330
10.7.4 dao模型的实现 340
10.7.5 业务逻辑功能实现 344
10.7.6 编写权限管理系统的jsp页面 348
10.7.7 编写spring 3的配置文件config.xml 352
10.7.8 测试运行该示例 356
10.8 小结 359
第11章 hibernate 3技术详解
hibernate 3是目前最流行的开源持久层框架,它对jdbc进行了非常轻量级的封装,使得开发人员可以使用面向对象的思想来设计数据库。
本章首先对hibernate 3进行简要介绍,并讲解它的下载和配置,然后重点讲解hibernate 3的核心类,以及对jpa 2的支持、映射关系和缓存机制,最后通过示例讲解如何将struts 2、spring 3和hibernate 3进行整合。
11.1 hibernate概述 361
11.1.1 hibernate简介 361
11.1.2 hibernate 3整体框架 361
11.1.3 搭建hibernate 3的开发运行环境 362
11.2 hibernate 3入门示例 365
11.2.1 对hibernate 3框架支持——关系数据库到对象映射 365
11.2.2 hibernate 3框架中经常用到的工具类 369
11.3 hibernate 3的基础 372
11.3.1 hibernate 3框架核心类——configuration类 373
11.3.2 hibernate 3的主键生成机制 374
11.3.3 hibernate 3的两种配置方式 375
11.4 hibernate 3的配置文件 375
11.4.1 hibernate 3的两种配置方式 375
11.4.2 配置数据库连接池 376
11.4.3 从容器中获取数据库连接池 379
11.5 hibernate 3的关系映射 380
11.5.1 一对一映射 380
11.5.2 一对多和多对一映射 381
11.5.3 多对多映射 382
11.6 hibernate 3缓存机制 382
11.6.1 一级缓存 382
11.6.2 二级缓存 384
11.7 hibernate对jpa的支持 384
11.7.1 jpa简介 385
11.7.2 persistence.xml详细配置 390
11.8 myeclipse开发环境对jpa的支持 391
11.8.1 用myeclipse实现jpa框架环境 391
11.8.2 myeclipse对jpa框架支持——添加实体 393
11.8.3 myeclipse对jpa框架支持——单个类转成jpa实体 395
11.9 hibernate 3框架与其他框架的集成 398
11.9.1 spring 3+hibernate 3框架的集成 398
11.9.2 struts 2+spring 3+hibernate 3框架的集成 401
11.10 spring 3和hibernate 3整合示例 403
11.10.1 图书管理系统功能描述 403
11.10.2 spring 3和hibernate 3的整合方式 405
11.10.3 持久层功能的实现 408
11.10.4 实现对读者的管理功能 414
11.10.5 实现对图书的管理功能 416
11.10.6 实现维护借阅规则的功能 420
11.10.7 实现借阅和归还图书的功能 422
11.10.8 编写图书管理系统的jsp页面 427
11.10.9 编写配置文件config.xml 429
11.10.10 测试运行该示例 432
11.11 小结 434
第四部分
第12章 log4j使用指南
在log4j出现以前,在应用程序中添加日志记录最常用的做法就是在代码中添加打印语句,然后通过控制台或日志文件来观察变量的变化,或者跟踪代码运行的踪迹。现在,log4j是承担这个功能的最佳选择。
本章首先简要介绍log4j,以及为什么要使用log4j,然后讲解如何下载和配置log4j,重点讲解log4j的使用方法。
12.1 log4j简介 437
12.1.1 log4j概述 437
12.1.2 为什么要使用log4j 437
12.2 建立log4j的开发环境 438
12.2.1 下载log4j 438
12.2.2 配置log4j 439
12.3 log4j的使用方法 439
12.3.1 log4j的基本使用方法 439
12.3.2 日志的输出格式 440
12.3.3 日志的输出位置 441
12.3.4 日志的优先级 442
12.4 小结 442
第13章 junit使用指南
junit是由erich gamma和kent beck编写的一个回归测试框架,使用起来非常简单,目前绝大多数开源框架都使用junit进行单元测试。
本章首先对junit进行介绍并阐述为什么要使用junit,然后介绍junit的下载和安装、junit的使用方法,最后介绍junit的新特性。
13.1 为什么要进行单元测试 444
13.2 建立junit 4的开发环境 446
13.2.1 下载junit 4组件 446
13.2.2 搭建junit 4项目环境 447
13.2.3 junit 4组件入门示例 449
13.2.4 入门示例的升级版 451
13.3 junit的使用方法 453
13.3.1 junit 4的基本使用方法 453
13.3.2 在spring 3中使用junit 4 454
13.3.3 junit与ant整合 455
13.4 小结 456
第14章 jfreechart使用指南
在java web开发中经常会用到图表,比如柱状图、饼图、条形图等,使用jfreechart可以很方便地生成这些图表。本章首先对jfreechart进行介绍,然后介绍jfreechart的下载和安装,最后介绍jfreechart的使用方法。
14.1 jfreechart概述 458
14.2 搭建jfreechart的开发环境 458
14.2.1 下载jfreechart 458
14.2.2 搭建jfreechart项目环境 459
14.2.3 jfreechart组件入门示例 461
14.3 jfreechart的高级应用 464
14.3.1 jfreechart的核心类 465
14.3.2 java web项目实现饼形图形 465
14.4 小结 467
第15章 dom4j使用指南
在当前的java web开发中,xml文件的使用越来越频繁,如何创建和解析xml文件就变得非常重要了,而dom4j就是一个非常好用的读/写xml文件的工具。
本章首先对dom4j进行介绍,并阐述为什么要使用dom4j,然后介绍dom4j的下载和安装,最后介绍dom4j的使用方法。
15.1 dom4j简介 469
15.2 建立dom4j的开发环境 469
15.2.1 下载dom4j 469
15.2.2 搭建dom4j项目环境 470
15.2.3 dom4j组件入门示例 471
15.2.4 dom4j组件入门示例升级版 474
15.3 dom4j的使用方法 475
15.3.1 dom4j的基本使用方法 475
15.3.2 dom4j组件的高级应用——创建xml文件 477
15.4 小结 479
第五部分
第16章 注册管理系统(jsp+javabean)
在struts 2和spring 3这些框架出现之前,第一代的java web开发技术就是jsp+javabean。采用这种技术组合开发速度非常快,但经常会造成代码逻辑混乱,后期维护困难。虽然现在新开发的项目基本没有人再使用这种技术组合,但作为最基本的技术,《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》将通过注册管理系统详细地讲解一下。
16.1 注册管理系统需求描述 482
16.1.1 注册功能 482
16.1.2 登录功能 482
16.1.3 查看注册用户列表功能 483
16.2 设计javabean 483
16.3 数据库设计 486
16.3.1 数据库表结构设计与建立 486
16.3.2 建立数据库连接辅助类 488
16.4 jsp页面实现 489
16.4.1 用户注册管理画面 489
16.4.2 登录画面 490
16.4.3 查看注册用户列表画面 490
16.5 程序演示 491
16.6 小结 492
第17章 新闻发布系统(jsp+servlet+dao)
每个企业都会用到新闻发布系统,对于企业内网来说,发布一些公司的新闻,以供内部员工了解公司的运营;对于企业外网来说,也可以让外部的客户了解企业的情况。
本章使用最基本的jsp+servlet+dao来实现一个简单的框架,实现和使用spring 3+jpa 2类似的功能,然后通过该框架实现新闻发布系统。
17.1 需求描述 494
17.2 功能预览 494
17.2.1 设定新闻类别功能 494
17.2.2 登录功能 495
17.2.3 登录成功后的选择功能 495
17.2.4 发布新闻功能 495
17.2.5 浏览新闻功能 496
17.3 采用jsp+servlet+dao+jdbc架构 496
17.3.1 设计视图层的架构 497
17.3.2 设计控制层的架构 497
17.3.3 设计模型层的架构 503
17.3.4 设计持久层的架构 504
17.4 系统设计 508
17.4.1 如何实现对数据库的操作 509
17.4.2 如何实现持久层的设计 509
17.4.3 如何实现新闻发布系统的业务逻辑 510
17.5 数据库设计 511
17.5.1 数据库表结构设计与建立 511
17.5.2 配置数据库连接 513
17.6 dao模型的实现 514
17.6.1 管理员dao的实现 514
17.6.2 新闻类别dao的实现 516
17.6.3 新闻dao的实现 518
17.7 编写新闻发布系统的业务逻辑类 521
17.7.1 管理管理员的业务逻辑实现 522
17.7.2 管理新闻类别的业务逻辑实现 524
17.7.3 管理新闻的业务逻辑实现 527
17.8 编写新闻发布系统的控制器类 530
17.8.1 管理员控制器类 531
17.8.2 新闻类别管理控制器类 532
17.8.3 发布浏览新闻控制器类 534
17.8.4 登录控制器类 537
17.9 前台页面的实现 538
17.9.1 新闻类别管理画面 538
17.9.2 发布新闻画面 540
17.9.3 登录画面 542
17.9.4 登录成功的画面 544
17.9.5 浏览新闻画面 545
17.10 编写配置文件newsrelease.xml 546
17.11 程序演示 547
17.12 小结 549
第18章 网上购物系统(ajax+struts 2+hibernate 3)
随着当当网、淘宝网的不断发展,越来越多的人开始在网上购物了。网上购物系统是如何实现的呢?本章就来讲解一下它的实现方式。ajax技术能够极大地提升用户的操作体验,因此本章采用ajax+struts 2+spring 3的方式实现网上购物系统,主要包括货物的维护与陈列、用户的浏览和购买,以及购物车的维护等基本功能。
18.1 系统概述 551
18.2 需求分析 551
18.2.1 购物者注册功能 552
18.2.2 对货物进行分类存放的功能 552
18.2.3 维护货物基本信息的功能 552
18.2.4 浏览购买货物的功能 553
18.2.5 管理购物车的功能 553
18.3 系统与架构设计 554
18.3.1 dwr和struts 2的整合方式 554
18.3.2 搭建开发环境 556
18.3.3 后台持久层设计 557
18.3.4 后台业务逻辑设计 558
18.4 构建数据库表结构 559
18.4.1 实现业务实体间的对应关系 559
18.4.2 配置数据连接文件 567
18.4.3 查看数据库表结构 568
18.5 后台持久层实现 568
18.5.1 购物者持久层实现 569
18.5.2 货物类别持久层实现 571
18.5.3 货物持久层实现 572
18.5.4 购物车持久层实现 574
18.6 后台业务逻辑的实现 576
18.6.1 管理购物者的功能实现 576
18.6.2 管理货物类别的功能实现 577
18.6.3 管理货物的功能实现 578
18.6.4 管理购物车的功能实现 580
18.7 编写网上购物系统的控制器类 581
18.7.1 货物类别管理控制器类 581
18.7.2 货物管理控制器类 583
18.7.3 购物车管理控制器类 585
18.7.4 登录验证的配置文件 588
18.8 前台jsp页面实现 591
18.8.1 采用dwr实现验证 591
18.8.2 货物类别管理画面 592
18.8.3 货物管理画面 593
18.8.4 浏览购买货物画面 595
18.8.5 修改购货记录画面 596
18.9 编写配置文件 598
18.10 程序演示 599
18.11 小结 601
第19章 用户管理系统(spring 3+hibernate 3)
所有的信息化系统都离不开对用户的管理,比如人事管理系统中需要对员工信息进行管理,学生管理系统中需要对学生信息进行管理,本章将采用spring 3+hibernate 3的整合来进行讲解。
本章的主要目的是使读者通过对spring 3+hibernate 3整合方法的学习,熟练地掌握这种组合方式,为后面的学习打下良好的基础。
19.1 需求的提出 603
19.2 需求分析 604
19.2.1 采用用例的方式分析需求 604
19.2.2 产生需求规格说明书 604
19.3 架构设计 608
19.3.1 用户管理系统采用的架构 608
19.3.2 在myeclipse下建立项目usermanagement 608
19.3.3 配置本项目的web.xml文件 610
19.4 系统设计 611
19.4.1 实体域模型设计 611
19.4.2 dao模型设计 612
19.4.3 过程域模型设计 612
19.4.4 控制模型设计 612
19.4.5 视图模型设计 613
19.5 数据库设计 613
19.5.1 根据实体模型设计数据库表结构 613
19.5.2 根据数据库表生成对应的xml文件 615
19.5.3 根据xml文件生成持久化类 617
19.6 编写用户管理系统的dao 625
19.6.1 用户dao接口userdao.java 625
19.6.2 部门dao接口departmentdao.java 626
19.6.3 地址dao接口addressdao.java 626
19.6.4 联系电话dao接口phonedao.java 627
19.6.5 用户dao实现类userdaoimpl.java 627
19.6.6 部门dao实现类departmentdaoimpl.java 628
19.6.7 地址dao实现类addressdaoimpl.java 629
19.6.8 联系电话dao实现类phonedaoimpl.java 630
19.7 编写用户管理系统的业务逻辑类 631
19.7.1 管理用户接口userservice.java 631
19.7.2 管理部门接口departmentservice.java 632
19.7.3 管理地址接口addressservice.java 632
19.7.4 管理联系电话接口phoneservice.java 633
19.7.5 管理用户实现类userserviceimpl.java 633
19.7.6 管理部门实现类departmentserviceimpl.java 635
19.7.7 管理地址实现类addressserviceimpl.java 636
19.7.8 管理联系电话实现类phoneserviceimpl.java 637
19.8 编写用户管理系统的控制器类 638
19.8.1 登录控制器类logincontroller.java 639
19.8.2 用户管理控制器类usercontroller.java 640
19.9 编写用户管理系统的jsp页面 645
19.9.1 用户管理画面usermanagement.jsp 646
19.9.2 用户登录画面login.jsp 648
19.10 编写配置文件config.xml 649
19.11 程序演示 653
19.12 小结 655
第20章 留言簿管理系统(jsf 2+struts 2+spring 3)
在博客出现以前,论坛和留言簿是网站用来和浏览者交流的主要方式,本章就来探讨一下留言簿的实现原理。本章采用jsf 2作为视图层的实现技术,采用struts 2的控制器技术,采用spring 3来整合struts 2和jpa 2。
20.1 系统概述 657
20.2 需求分析 657
20.2.1 uml用例图 657
20.2.2 采用原型法进行分析 657
20.3 系统与架构设计 659
20.3.1 jsf 2和struts 2的整合方式 659
20.3.2 在myeclipse下建立项目bbsmanagement 661
20.3.3 配置本项目的web.xml文件 661
20.3.4 持久层的设计 662
20.3.5 业务逻辑的设计 663
20.4 持久层设计与实现 664
20.4.1 数据模型设计 664
20.4.2 建立数据库表结构 670
20.4.3 留言内容的持久层实现 673
20.4.4 留言回复的持久层实现 674
20.5 前台jsp页面实现 675
20.5.1 发布留言内容管理画面 676
20.5.2 回复留言内容画面 677
20.5.3 浏览留言内容画面 678
20.5.4 使用jsf来实现画面 679
20.6 后台业务逻辑的实现 680
20.6.1 管理留言内容接口 680
20.6.2 管理留言回复接口 681
20.6.3 管理留言内容实现类 681
20.6.4 管理留言回复实现类 682
20.7 控制器类的实现 684
20.7.1 留言内容管理控制器类 684
20.7.2 留言回复管理控制器类 686
20.8 编写struts 2的配置文件struts.xml 688
20.9 编写spring 3的配置文件config.xml 689
20.10 程序演示 691
20.11 小结 693
第21章 网上考试系统(struts 2+spring 3+hibernate 3+jpa 2)
标准化的考试变得越来越流行,因为参加考试人员在网上答题,提交后计算机就会自动判卷,成绩马上出来,组织考试的人员再也不用打印试卷和判卷了,节省了很大的工作量,因此本章探讨一下网上考试系统的实现原理。
网上考试系统主要包括试题的维护、试卷的生成、参加考试,以及查看考试成绩等功能,本章按照标准的软件开发过程来进行,以使读者能够从头到尾了解整个网上考试系统的开发过程。
21.1 需求的提出 695
21.2 需求分析 695
21.2.1 组合试卷功能 696
21.2.2 维护试题题目功能 697
21.2.3 维护试题项目功能 698
21.2.4 参加考试自动评分功能 699
21.2.5 查看考试结果功能 700
21.3 架构选择 700
21.3.1 是否应该采用ajax或jsf 700
21.3.2 搭建和配置开发环境 701
21.3.3 网上考试系统的目录结构 702
21.4 系统设计 702
21.4.1 业务实体和持久层设计 702
21.4.2 业务逻辑和控制层设计 703
21.4.3 视图层设计 704
21.5 建立数据库表逻辑结构 705
21.5.1 业务实体的实现 705
21.5.2 配置生成数据库的相关文件 710
21.5.3 根据实体自动生成数据库表结构 711
21.6 dao模型实现 712
21.6.1 试卷基本信息dao 712
21.6.2 试题题目 713
21.6.3 试题项目 714
21.7 业务逻辑实现 716
21.7.1 添加试卷基本信息的业务逻辑 716
21.7.2 修改试卷基本信息的业务逻辑 719
21.7.3 删除试卷基本信息的业务逻辑 720
21.7.4 添加试题题目的业务逻辑 720
21.7.5 修改试题题目的业务逻辑 724
21.7.6 删除试题题目的业务逻辑 725
21.7.7 添加试题项目的业务逻辑 725
21.7.8 修改试题项目的业务逻辑 728
21.7.9 删除试题项目的业务逻辑 729
21.7.10 产生试卷的业务逻辑 729
21.7.11 自动评分的业务逻辑 730
21.8 编写网上考试系统的jsp页面 731
21.8.1 试卷基本信息管理画面 731
21.8.2 试题题目管理画面 733
21.8.3 试题项目管理画面 734
21.8.4 参加考试画面 736
21.8.5 查看考试成绩画面 737
21.9 编写struts 2的配置文件struts.xml 738
21.10 编写spring 3的配置文件config.xml 739
21.11 程序演示 741
21.12 小结 743
搞定J2EE核心技术与企业应用:Ajax, JSP, Struts2, Spring, Hibernate
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!