书籍详情

JAVA敏捷开发:使用Spring、Hibernate和Eclipse

JAVA敏捷开发:使用Spring、Hibernate和Eclipse

作者:(美)赫姆瑞贾尼

出版社:人民邮电

出版时间:2007-01-01

ISBN:9787115154286

定价:¥39.00

购买这本书可以去
内容简介
  本书介绍了一种将极限编程(XP)、敏捷模型驱动、重构等方法相结合的敏捷软件开发过程和软件开发需要的3种重要的技术。全书紧密地结合一个实际范例程序的开发,展示了敏捷开发的完整生命周期。除此之外,本书还引入了很多先进的技术和工具,便于读者进一步的学习和使用。本书中介绍的技术和方法对进行高效的、敏捷的Java企业级应用程序开发有极大的帮助。.本书深入浅出,适合于广泛的软件开发的相关群体,无论是具备了一定Java基础知识的学习者、具有一定经验的开发者、高水平的软件架构师,还是软件项目技术负责人或项目经理,都可以从本书中受益。本书讲述了能够大大简化Java企业级开发的强大技术和有效方法。..本书中所介绍的3种主要技术——Spring框架、Hibernate和Eclipse极大地降低了Java企业开发的复杂性,可以将Java原始对象(POJO)部署在轻量级的容器中而非使用笨重的EJB容器中的远程对象。书中所使用的方法——极限编程(XP),敏捷模型驱动开发(AMDD)和重构通过减少软件项目中繁重的前期需求和设计力D快了项目的进度。对这些方法的介绍贯穿本书的始终,但只讲述足以敷用的细节和实例,以免偏离本书的主题。从最开始的形成概念到结合多种过程和技术最终得到产品,本书通过构建一个样例程序,逐章递进展示了软件开发完整的生命周期。通过使用本书中介绍的技术和方法,读者能够以敏捷的方式进行高效的Java企业级应用程序的开发。.
作者简介
  本书提供作译者介绍Anil Hemrajani从1995年底开始,作为开发者、创业者、作者和培训师一直致力于Java技术的研究。他是Isavix公司(现在的Inscope Solutions)的创始人,该公司是一个很成功的IT服务公司;他也是isavix.net(现在的DeveloperHub.com)的创始人,这是一个获奖的在线开发者社区,现注册用户超过10万人。他有超过20年服务于信息技术社区的经历,其间与很多财富100强企业或小企业合作过,他在业界知名的杂志上发表过大量文章,在很多会议中发表过演讲,被Sun Microsystems公司授予“Java社区发...
目录
第一部分 概述
第1章 Java敏捷开发介绍 3
1.1 本章内容 4
1.2 本书中使用的技术 4
1.2.1 运行时技术 6
1.2.2 开发工具 7
1.3 本书使用的软件开发方法 10
1.4 小结 12
1.5 推荐资源 12
第2章 范例程序:一个在线的时间报表系统 13
2.1 本章内容 14
2.2 业务需求 15
2.3 软件开发方法 16
2.3.1 XP和AMDD概述 16
2.3.2 探索阶段 18
2.3.3 计划阶段 18
2.3.4 产品的迭代开发阶段(渐进式构建软件) 19
2.3.5 项目的范围 20
2.3.6 系统维护 20
2.4 将XP和AMDD应用到范例程序中 20
2.4.1 领域建模 20
2.4.2 用户界面原形 21
2.4.3 故事板 24
2.4.4 用户故事 24
2.4.5 发布(和迭代)计划 26
2.4.6 术语表 27
2.4.7 白板上的框架 28
2.5 关于Wiki软件 29
2.6 小结 29
2.7 推荐资源 29
第二部分 构建范例程序
第3章 基于XP和AMDD的架构和设计模型 33
3.1 本章内容 34
3.2 设计方法和工件的选择 35
3.3 灵活的架构图 36
3.4 从用户故事到设计 37
3.5 使用CRC卡对类进行分析 37
3.6 程序流程图(自创工件) 39
3.6.1 一种补充技术 39
3.6.2 使用CRUD列对程序流程图进行扩展 39
3.7 UML类图 39
3.8 UML包图 41
3.9 文件目录结构 42
3.10 范例文件名 43
3.11 端到端的开发步骤 43
3.12 验收测试 43
3.12.1 登录 44
3.12.2 时间报表清单 44
3.12.3 输入工时 44
3.13 其他要考虑的问题 44
3.14 小结 45
3.15 推荐资源 46
第4章 环境安装:JDK,Ant和JUnit 47
4.1 本章内容 48
4.2 Java平台标准版开发包(JDK) 48
4.3 目录结构 48
4.4 Ant 49
4.4.1 一个简单的Ant构建文件 50
4.4.2 一个全面的Ant构建文件 51
4.5 JUnit 55
4.5.1 独立的JUnit运行器 55
4.5.2 在Eclipse SDK中使用JUnit 56
4.6 SimpleTest程序:把工具整合在一起使用 56
4.6.1 SimpleTest.java 56
4.6.2 JUnit的断言方法 57
4.6.3 运行SimpleTest(一个单独的JUnit的测试用例) 57
4.6.4 在一个批处理中执行JUnit测试 59
4.7 测试先行的设计和重构 59
4.8 小结 61
4.9 推荐资源 61
第5章 使用Hibernate使对象持久化 63
5.1 本章内容 64
5.2 对象—关系映射(ORM)简介 64
5.2.1 关系和基数 65
5.2.2 对象标识 66
5.2.3 级联 66
5.2.4 映射 67
5.2.5 内存数据与持久化对象 67
5.3 设计范例数据库 67
5.3.1 非规范化 68
5.3.2 命名习惯 68
5.3.3 数据库设计的声明 69
5.3.4 DDL脚本 69
5.4 HSQLDB和Hibernate在整个架构中的位置 70
5.5 HSQLDB 70
5.5.1 HSQLDB服务器与Ant任务 71
5.5.2 HSQLDB数据库管理器和SqlTool 72
5.5.3 HSQLDB的持久模式与内存模式 72
5.5.4 将HSQLDB打包到可部署的存档文件 72
5.6 使用Hibernate 73
5.6.1 不再需要DAO或DTO了 73
5.6.2 支持的数据库 74
5.6.3 Hibernate和EJB 3.x 74
5.6.4 Hibernate配置的简单测试 74
5.6.5 安装Hibernate 78
5.6.6 Hibernate基础 80
5.6.7 用Hibernate开发TimesheetManager.java 83
5.6.8 Employee.*和DepartmentManager.java 86
5.6.9 Classpath中需要的文件 86
5.6.10 使用Ant运行测试用例 87
5.6.11 删除记录 87
5.6.12 条件查询 88
5.6.13 异常处理 88
5.7 其他Hibernate特性 89
5.7.1 关联 89
5.7.2 锁定对象(并发控制) 90
5.7.3 更多知识 91
5.8 小结 92
5.9 推荐资源 92
第6章 Spring框架概述 95
6.1 本章内容 96
6.2 什么是Spring 97
6.3 Spring开发包结构 98
6.4 Spring的部署包结构 98
6.5 Spring模块概述 99
6.5.1 Spring核心 99
6.5.2 Spring上下文 100
6.5.3 Spring AOP 100
6.5.4 Spring DAO 101
6.5.5 Spring ORM 101
6.6 Spring框架在哪些地方适合我们的程序结构 102
6.7 使用Spring的优点 103
6.8 Spring基础概念 104
6.8.1 依赖注入模式(和IoC容器) 104
6.8.2 两种注入方式 105
6.8.3 Beans,BeanFactory和Application Context 105
6.8.4 属性编辑器 107
6.9 Spring子项目 107
6.10 小结 108
6.11 推荐资源 108
第7章 Spring Web MVC框架 111
7.1 本章内容 112
7.2 Spring Web MVC框架的优点 112
7.3 Spring Web MVC概念 113
7.3.1 Spring MVC Java基础概念 114
7.3.2 Spring MVC配置概念 116
7.4 Time Expression中的Spring配置 117
7.4.1 安装Servlet容器(Apache Tomcat) 117
7.4.2 安装Spring框架 118
7.4.3 运行我们的SpringTest 120
7.4.4 配置Spring MVC 120
7.5 使用Spring开发Time Expression用户界面 121
7.5.1 报表页面 121
7.5.2 工时输入页面 122
7.5.3 Java文件 122
7.6 级联样式表(CSS) 123
7.7 Timesheet列表页面:无表单控制器示例 124
7.7.1 逐步配置 124
7.7.2 逐步编程 125
7.8 工时输入页面:表单控制器示例 129
7.8.1 逐步配置 129
7.8.2 逐步编码 131
7.8.3 绑定自定义的Command对象 134
7.8.4 DateUtil.java 135
7.8.5 JSP标签库 135
7.9 没有控制器的视图 136
7.10 Spring拦截器 136
7.11 运行示例 138
7.12 Spring框架2.0中的新标签库 140
7.13 Spring Web Flow和Portlet API 141
7.13.1 Spring Web Flow 141
7.13.2 Spring Portlet API 141
7.14 小结 141
7.15 推荐资源 142
第8章 Eclipse风潮 143
8.1 本章内容 144
8.2 Eclipse基金会 145
8.3 Eclipse平台和项目 146
8.4 Eclipse SDK概念 148
8.4.1 工作空间 148
8.4.2 工作台、透视图、编辑器和视图 149
8.4.3 项目 151
8.4.4 插件 151
8.4.5 向导 151
8.5 安装Eclipse 152
8.6 向Time Expression中装载Eclipse 154
8.7 Java开发工具(JDT)的特性 160
8.8 安装Eclipse Web工具平台(WTP)插件 167
8.9 使用Eclipse开发Time Expression 168
8.9.1 预绑定的JDT插件 169
8.9.2 数据插件(支持HSQLDB) 170
8.9.3 服务器插件(支持Tomcat) 172
8.9.4 Hibernate插件 173
8.9.5 Spring IDE插件 174
8.9.6 其他值得关注的WTP插件 176
8.10 Eclipse有相当丰富的插件 176
8.10.1 eclipse.org项目 176
8.10.2 插件路径 176
8.10.3 MyEclipseIDE.com 177
8.10.4 google.com 177
8.11 Eclipse对组的支持 177
8.12 Eclipse帮助系统 179
8.13 技巧和窍门 182
8.13.1 快捷键 182
8.13.2 首选项 183
8.13.3 书签 184
8.13.4 运行外部工具和Web浏览器 184
8.13.5 本地历史记录 185
8.13.6 重新设置透视图 185
8.13.7 拷贝元素 185
8.13.8 清理项目 185
8.13.9 转换分隔符 185
8.13.10 Eclipse/JVM启动参数 185
8.13.11 浏览第三方的源码 186
8.13.12 Eclipse隐藏文件 186
8.14 卸载Eclipse 187
8.15 一个对IntelliJ和NetBeans不公平的比较 187
8.15.1 IntelliJ 5.0 187
8.15.2 NetBeans 5.0 188
8.15.3 启动时间 189
8.16 小结 190
8.17 推荐资源 190
第三部分 高级特性
第9章 日志、调试、监控和性能分析 195
9.1 本章内容 196
9.2 日志介绍 197
9.3 Jakarta Commons日志工具(Log4j和JDK日志工具) 197
9.3.1 JCL如何工作 198
9.3.2 使用JCL开发 198
9.3.3 日志消息级别 199
9.3.4 TimesheetListController中的范例日志 200
9.3.5 关于格式 201
9.3.6 在Spring和Hibernate中使用日志 201
9.4 使用Eclipse调试Java应用程序 201
9.5 使用Firefox调试Web用户界面 205
9.5.1 JavaScript调试器 206
9.5.2 Web开发工具 206
9.5.3 其他的Firefox功能扩展 206
9.5.4 JavaScript控制台 207
9.6 调试TimesheetManagerTest(从浏览器到数据库) 207
9.7 JMX管理和监控 209
9.8 Java性能分析器 210
9.9 调试技巧 210
9.10 小结 212
9.11 推荐资源 212
第10章 超越基础 215
10.1 本章内容 216
10.2 新增的Java特性 216
10.2.1 静态引用 217
10.2.2 泛型 217
10.2.3 加强的for循环 217
10.2.4 自动封箱 218
10.2.5 枚举 218
10.2.6 Varargs 218
10.2.7 其他特性 219
10.3 Ant任务 219
10.3.1 CVS 220
10.3.2 Exec 220
10.3.3 Get 220
10.3.4 Sleep 220
10.3.5 FTP 220
10.3.6 Mail 221
10.3.7 丰富的任务 221
10.4 JUnit 221
10.4.1 自定义测试组 222
10.4.2 测试固定代码 222
10.5 Hibernate 223
10.5.1 内部SQL查询 223
10.5.2 拦截器 223
10.6 Spring框架 224
10.6.1 调度任务 224
10.6.2 Spring邮件支持 226
10.6.3 JMX支持 227
10.6.4 更多的内容 228
10.7 Spring与Hibernate的集成 229
10.7.1 在Spring中配置事务管理 230
10.7.2 更简洁的Java代码 232
10.7.3 对集成代码进行单元测试 233
10.7.4 基于接口的方式 233
10.8 JSP标签库 235
10.8.1 Displaytag 235
10.8.2 编写自定义标签库 235
10.9 重构 236
10.9.1 范例程序中重构的例子 237
10.9.2 尽可能地重构,别忘了备份 238
10.9.3 在线重构目录列表(refactoring.com和agiledata.org) 238
10.9.4 关于Eclipse中的重构 238
10.10 其他事项 238
10.10.1 事务管理 239
10.10.2 应用安全 240
10.10.3 异常处理 241
10.11 集群 243
10.12 多线程 244
10.13 关于Java GUI(厚客户端)应用程序 244
10.14 配置管理(CM)环境 245
10.15 异步JavaScript与XML(AJaX) 246
10.16 Java文档和注释 246
10.17 将整个系统打包到WAR文件中 247
10.18 小结 247
10.19 推荐资源 248
第11章 下一阶段 249
11.1 本章内容 250
11.2 完成Time Expression程序 250
11.3 基于XP和AMDD的软件开发 250
11.4 Java平台 251
11.5 Ant 251
11.6 JUnit 251
11.7 Hibernate 252
11.8 Spring框架 252
11.9 Eclipse SDK 253
11.10 日志、调试、监控和性能分析 253
11.11 获得帮助 254
11.11.1 在线讨论论坛 254
11.11.2 Javadoc和源代码 254
11.12 关于代码质量工具 255
11.13 小结 255
11.14 推荐资源 255
第12章 分别寄语 257
12.1 我的近期计划 258
12.2 未来,敏捷方法,Java技术 258
12.3 干杯 259
第四部分 附录
附录A 本书代码下载 263
A.1 第三方库文件的共享目录 263
A.2 范例程序目录(rapidjava/timex/) 264
A.2.1 Ant文件 264
A.2.2 HSQLDB数据库文件 265
A.2.3 配置Java源 265
A.3 重构后的范例程序目录(rapidjava/timex2/) 266
A.4 Spring-Hibernate集成演示目录(rapidjava/springhibernate/) 266
附录B 对范例程序的重构 269
B.1 SignInController.java: JMX监控 269
B.2 TimesheetListController.java: JMX监控 270
B.3 管理者类:Spring-Hibernate集成 270
B.4 timesheetlist.jsp:转而包括文件和Displaytag 271
B.5 enterhours.jsp:转而包括文件和Timex标签库 272
B.6 *测试类和TimexTestCase 272
B.7 DateUtil.java:新方法 272
B.8 timex.css:新样式 273
B.9 timexhsqldb.xml:错误数据问题的修改 273
附录C Java代码规范 275
附录D Web应用安全 277
附录E 范例程序开发过程一览表 279
E.1 项目初期 279
E.2 项目探索阶段 279
E.3 计划 280
E.4 在迭代中进行渐进式的软件构建过程 280
附录F 敏捷建模的价值、实践和原则一览表 281
附录G 极限编程(XP)一览表 283
附录H 一些不错的工具 285
H.1 跨平台工具 285
H.2 基于Windows的工具 286
H.3 基于Mac OS X的工具 287
H.4 基于Linux的工具(KDE) 287
附录I 可视化模式研究 289
I.1 问题 289
I.2 过去 289
I.3 程序开发的未来:敏捷开发方式 290
I.4 我的观点 292
I.4.1 BRUF和BDUF 292
I.4.2 术语 292
I.5 加入社区 293

猜您喜欢

读书导航