具体描述
本书采用工程案例的形式,将日常Java EE项目开发所涉及的技术要点进行了解析,系统介绍了Apache的安装、Tomcat的安装、虚拟主机的配置、开发工具的搭配使用、验证码的使用、过滤器的使用、密码的加密与解密、JavaMail邮件发送、Web在线编辑器的使用、文件上传、数据库连接池、Ajax与Servlet的身份认证、Struts框架的应用、JSF框架的应用、Spring框架的应用、Hibernate框架的应用、Ajax框架Dojo的使用、文件格式自动转换在线预览等Web项目开发过程中的关键技术;深入分析了文章管理系统、文件在线收发管理系统、图片网站、美容行业门户网站、基于Web的通用在线题库管理系统、FTP文件搜索系统、物流管理系统等实际工程项目的设计和开发过程。
本书以大量的实际项目设计经验和技巧,带领您畅游Java EE Web开发世界。所设计的案例思路清晰、结构合理,来自实际工程项目,涵盖了一般Web项目技术要点。"
作者简介
李俊青 Web程序开发工程师、高校教师、自由撰稿人、全国计算机水平资格考试考评员。主要从事Web应用开发研究,具有近10年Web程序开发经历,开发过各类网站及Web应用程序上百个;8年高校从教经历,曾多次主讲网页设计、软件工程、Web程序设计、Java、JSP、J2EE、Ajax等课程。在国内外学术期刊上发表了20多篇论文,主持并参与完成研究课题20多项。
目录信息
1.1 服务器及开发环境配置 1
1.1.1 Tomcat服务器安装 1
1.1.2 Apache+Tomcat整合 4
1.1.3 开发工具的使用 10
1.2 XHTML网站开发案例 17
1.2.1 静态网站开发流程简介 17
1.2.2 Web标准 20
1.2.3 赛车主题网制作 22
第2章 Java EE Web开发技术要点案例 26
2.1 验证码的使用 26
2.1.1 验证码原理及生成方法 26
2.1.2 JSP验证码 28
2.1.3 Servlet验证码 31
2.2 数据库连接 34
2.2.1 JavaBean/JDBC 34
2.2.2 数据库连接池 40
2.3 密码的加密与解密 46
2.3.1 密码加密基础 46
2.3.2 密码的MD5加密 48
2.4 过滤器的使用 55
2.4.1 过滤器概述 55
2.4.2 Filter用户权限控制 59
2.4.3 解决中文乱码问题 61
2.5 用户登录(身份认证) 64
2.5.1 Servlet身份验证 64
2.5.2 Ajax/Servlet身份验证 76
2.6 邮件收发 88
2.6.1 JavaMail API下载与安装 89
2.6.2 JavaMail API邮件发送 89
2.7 Web在线编辑器的使用 97
2.7.1 Web在线编辑器简介 97
2.7.2 CKeditor在线编辑器的配置与使用 97
2.8 在Web应用中实现文件上传 100
2.8.1 JspSmartUpload组件简介 100
2.8.2 利用JspSmartUpload组件上传 107
2.9 Java EE开发框架 110
2.9.1 Struts 111
2.9.2 JSF 119
2.9.3 Spring 131
2.9.4 Hibernate 136
2.10 Ajax框架 144
第3章 文章管理系统 148
3.1 系统分析和设计 148
3.1.1 文章管理系统简要需求 148
3.1.2 系统体系设计 149
3.2 数据库设计 150
3.2.1 E-R图 150
3.2.2 数据库表结构 151
3.3 系统主要功能实现 152
3.3.1 文章管理主调度Ajax程序 153
3.3.2 文章管理主Servlet程序 169
3.4 小结 177
第4章 文件收发在线管理系统 178
4.1 系统分析和设计 178
4.1.1 文件收发管理系统需求 178
4.1.2 系统体系设计 179
4.2 数据库设计 179
4.2.1 E-R图 179
4.2.2 数据库表结构 180
4.3 系统主要功能实现 183
4.3.1 系统主体结构 183
4.3.2 发文 187
4.3.3 文档在线自动格式转换为Flash预览 196
4.4 小结 200
第5章 图片网站 201
5.1 系统分析和设计 201
5.1.1 系统分析 201
5.1.2 系统设计 201
5.2 数据库设计 204
5.2.1 数据库需求分析 204
5.2.2 数据库逻辑设计 204
5.2.3 数据库脚本文件 208
5.2.4 数据库的链接 210
5.3 站点模块具体设计 212
5.3.1 前台浏览模块 212
5.3.2 后台管理模块 223
5.4 缩略图的生成 234
5.5 小结 241
第6章 交友网站 242
6.1 系统分析与设计 242
6.1.1 功能说明 242
6.1.2 系统体系设计 243
6.2 数据库设计 244
6.3 系统主要功能实现 248
6.3.1 JavaBean 248
6.3.2 JSP页面 253
6.3.3 登录模块 271
6.3.4 配置文件 279
6.4 小结 280
第7章 美容行业门户网站 281
7.1 系统分析和设计 281
7.1.1 系统分析 281
7.1.2 系统设计 282
7.2 数据库设计 286
7.2.1 数据库需求分析 286
7.2.2 数据库逻辑设计 286
7.2.3 数据库脚本文件 297
7.2.4 数据库的链接 304
7.3 站点模块具体设计 306
7.3.1 前台操作模块 306
7.3.2 后台管理模块 315
7.4 小结 325
第8章 物流服务管理系统 326
8.1 系统分析和设计 326
8.1.1 用例模型 326
8.1.2 领域模型 329
8.1.3 系统活动图 330
8.2 数据库设计 331
8.3 系统主要功能实现 333
8.3.1 JSP页面 335
8.3.2 ActionForm 336
8.3.3 Action的实现 339
8.3.4 业务处理类 346
8.3.5 域模型 351
8.3.6 映射文件 351
8.3.7 Hibernate的配置文件及DAO的实现 353
8.4 小结 355
第9章 基于Web的通用在线题库管理系统 356
9.1 系统体系结构分析和设计 356
9.1.1 背景 356
9.1.2 题库系统体系结构设计 357
9.2 系统分析和设计 357
9.2.1 系统设计原则 357
9.2.2 系统工作流程分析 359
9.2.3 总体模块及关键问题分析 360
9.2.4 CI设计 362
9.3 数据库设计 364
9.3.1 E-R图 364
9.3.2 表设计 365
9.4 系统主要功能实现 370
9.4.1 系统实现应遵循的原则 370
9.4.2 共用信息处理 371
9.4.3 系统管理模块 374
9.4.4 题目管理模块 376
9.5 系统测试及结果分析 378
9.6 小结 380
第10章 FTP文件搜索服务系统 381
10.1 系统分析和设计 381
10.1.1 背景 381
10.1.2 系统体系结构设计 381
10.2 数据库设计 383
10.3 系统主要功能实现 383
10.3.1 爬虫程序模块 384
10.3.2 FTP索引Web模块 396
10.4 小结 412
参考文献 414
· · · · · · (收起)
读后感
我从事软件开发行业也有7年了,参与设计百个以上的大型系统设计与开发,这本书对实战经验的总结精辟让我很佩服。这本书在我的团队中做为知识库,重要参考学习资料,提高我团队在解决问题、找资料的效率,在此感谢编著。 转自卓越读者alan的评论,链接地址: http://www.amazon...
我从事软件开发行业也有7年了,参与设计百个以上的大型系统设计与开发,这本书对实战经验的总结精辟让我很佩服。这本书在我的团队中做为知识库,重要参考学习资料,提高我团队在解决问题、找资料的效率,在此感谢编著。 转自卓越读者alan的评论,链接地址: http://www.amazon...
我从事软件开发行业也有7年了,参与设计百个以上的大型系统设计与开发,这本书对实战经验的总结精辟让我很佩服。这本书在我的团队中做为知识库,重要参考学习资料,提高我团队在解决问题、找资料的效率,在此感谢编著。 转自卓越读者alan的评论,链接地址: http://www.amazon...
我从事软件开发行业也有7年了,参与设计百个以上的大型系统设计与开发,这本书对实战经验的总结精辟让我很佩服。这本书在我的团队中做为知识库,重要参考学习资料,提高我团队在解决问题、找资料的效率,在此感谢编著。 转自卓越读者alan的评论,链接地址: http://www.amazon...
我从事软件开发行业也有7年了,参与设计百个以上的大型系统设计与开发,这本书对实战经验的总结精辟让我很佩服。这本书在我的团队中做为知识库,重要参考学习资料,提高我团队在解决问题、找资料的效率,在此感谢编著。 转自卓越读者alan的评论,链接地址: http://www.amazon...
用户评价
这本书的扉页上印着《Java EE WEB开发与项目实战》,我抱着学习最新的Web开发技术的心态购入了它。然而,翻阅之后,我发现书中对于Spring Boot的介绍,似乎还停留在比较基础的阶段。虽然提到了MVC模式,也展示了一些简单的Controller和Service层代码,但对于如何构建一个真正可扩展、高可用的Spring Boot应用,缺乏深入的讲解。例如,在处理高并发场景下的优化策略,书中仅仅是一笔带过,并没有给出具体的实践指导,也没有提及诸如线程池配置、异步编程等关键技术。此外,对于Spring Cloud微服务架构的介绍也显得较为浅显,仅仅停留在服务注册与发现的层面,对于服务间的通信、配置管理、熔断降级等核心概念,几乎没有涉及。我原本期望能在这本书中找到关于如何设计和实现复杂微服务系统的宝贵经验,但显然这本书的侧重点与我的需求有所偏差。对于那些已经具备一定Spring Boot基础,并希望深入理解微服务生态的开发者来说,这本书可能无法满足他们进阶的需求。它更适合初学者建立初步的认识,但要真正独立构建复杂的Web应用,还需要补充更多的实践和学习。
拿到《Java EE WEB开发与项目实战》这本书,我主要想了解如何在实际项目中应用Docker和Kubernetes等容器化技术来部署和管理Java Web应用。我一直关注DevOps在现代软件开发中的重要性,并认为容器化是实现自动化部署和弹性伸缩的关键。然而,这本书在容器化部署方面的内容,几乎是空白。它更侧重于Java EE框架本身的代码实现,而对于如何将应用程序打包成Docker镜像、如何编写Kubernetes的Deployment和Service配置文件、如何实现CI/CD流水线集成等关键环节,都没有任何介绍。我期望看到的是一个完整的流程,从代码开发到最终的容器化部署,能够无缝衔接。书中虽然有提到一些项目的打包和部署,但那更多的是传统的部署方式,与我期望的现代化、自动化部署流程相去甚远。对于希望学习如何构建云原生应用的开发者而言,这本书在这方面提供的价值非常有限。
我当初选择《Java EE WEB开发与项目实战》这本书,主要是被“项目实战”这几个字吸引。我一直认为,理论知识再扎实,也比不上实际项目经验的积累。这本书在“实战”这部分,确实提供了一些代码示例,但这些示例项目,感觉过于简化,更像是为了演示某个单一技术点而存在的“玩具”。例如,书中关于用户管理的模块,虽然实现了增删改查,但对于权限管理、角色分配、数据校验的健壮性设计,以及如何处理大量的用户数据,都没有深入探讨。我期待的项目实战,应该是能够反映真实开发场景中遇到的各种挑战,比如接口的安全性如何保障,数据的实时同步如何实现,以及如何在多人协作的环境下进行版本控制和代码合并。这本书在这方面给我的帮助很有限,我无法从中获得在真实项目中处理复杂业务逻辑、优化性能、提升稳定性的直接经验。更像是一份技术清单的罗列,而不是一次完整的项目开发历程的记录。
当我拿起《Java EE WEB开发与项目实战》这本书时,我期望从中学习到如何构建健壮、安全且高性能的Java EE Web应用。然而,阅读过程中,我发现书中在安全性方面的论述,相对比较笼统。例如,对于CSRF、XSS等常见的Web安全漏洞,书中仅提及了预防的必要性,但并没有详细介绍具体的攻击原理以及如何使用Spring Security等框架进行有效的防护。对于身份认证和授权的实现,虽然有代码示例,但其复杂性和安全性考虑,与工业级的应用存在较大差距。我尤其关注的是关于API网关、OAuth2.0等现代认证授权机制的实践,但这些内容在这本书中几乎没有提及。此外,在性能优化方面,书中给出的建议也比较基础,缺乏针对数据库查询优化、缓存策略、并发控制等方面的深入分析。我希望这本书能提供更具操作性的指导,帮助我构建能够应对高流量和复杂场景的Web应用,而不仅仅是停留在概念层面。
我购买《Java EE WEB开发与项目实战》时,对书中关于数据库交互的内容抱有很大期待。我一直认为,扎实的数据库功底是Web开发的基础。这本书确实用了一部分篇幅来介绍JPA和Hibernate,并展示了一些ORM操作的代码。然而,在实际使用过程中,我发现书中对于复杂SQL语句的编写、索引优化、事务管理以及性能调优的讲解,相对薄弱。很多时候,ORM框架能够简化代码,但当遇到复杂的查询需求或者需要精细控制SQL执行效率时,ORM框架的“黑盒”特性反而成为一种障碍。书中对于如何分析SQL执行计划、识别慢查询、以及如何通过数据库层面进行优化,几乎没有涉及。我曾希望通过这本书学习如何设计更优的数据库表结构,如何编写更高效的SQL,以及如何利用数据库特性来提升Web应用的整体性能。可惜的是,这本书在这方面的深度远远不足,更多的是停留在API的使用层面,而非底层原理和实战技巧的传授。