首    页 建模架构 设计模式 培训咨询 jdon框架 论坛

书籍摘要


本书目录

目录

第一章:高性能聊天系统

1.1.        系统需求
1.2           架构设计
1.2.1          JAVA事件模型
1.2.2          架构设计图
1.2.3          协议设计
1.2.4          多线程
1.2.5          线程池
1.2.6          非堵塞I/O
1.3           Socket核心设计和实现
1.3.1          TCPReactor模式
1.3.2          UDP实现
1.3.3          客户端实现
1.4           Socket接口设计和实现
1.4.1   队列和对象类型
1.4.2   访问者模式定义
1.4.3   访问者模式实现
1.4.4  
协议封装
1.4.5  
重整Refactoring
1.5  
应用接口设计和实现
1.5.1   Connection API
 
1.5.2   ConnectionFactory API
1.5.3   TcpConnection API
 
1.5.4   UdpConnection API
1.6  
应用层设计和实现
1.6.1  
客户端聊天测试
1.6.2  
服务器聊天测试
1.7  
性能测试

1.8   小结  

第二章:简单的用户注册系统

2.1需求分析

2.2系统设计
2.2.1   Jsp/Servlet
J2EE
2.2.2  
结构设计图
2.2.3   Jsp/JavaBeans
技术要点
2.2.4   JDBC
和连接池
2.2.5  
数据库设计

2.3   类的详细设计和实现

2.3.1   Façade模式
2.3.2   JDBC
通用操作类
2.3.3   Email
发送通用类
2.3.4  
用户资料管理
2.3.5  
密码数据操作类
2.3.6  
登陆验证功能
2.4
界面编程实现
2.4.1   
登陆验证页面
2.4.2   
注册页面
2.5
调试、发布和运行
2.5.1  
单元测试
2.5.2  
快速配置开发环境
2.5.3   Tomcat
配置和调试

2.5.4   Tomcat连接池使用

2.6 Hibernate使用
2.7
小结

第三章 Jive论坛系统

3.1  Jive功能需求
3.2  Jive
与设计模式
3.2.1  
设计模式
3.2.2   ForumFactory
与工厂模式
3.2.3  
统一入口与单态模式

3.2.4   访问控制与代理模式
3.2.5  
批量分页查询与迭代模式
3.2.6  
过滤器与装饰模式
3.2.7  
主题监测与观察者模式

3.3  Jive安全管理机制

3.3.1   安全验证机制

3.3.2   用户资料管理

3.4  Jive的缓存机制
3.4.1  
缓存原理和实现
3.4.2  
缓存使用
3.4.3  
小结

3.5  Jive的其他组件技术
3.5.1   Jive
的树形结构
3.5.2   XML
JDOM
3.5.3  
全文检索和Lucene
3.5.4   Jive
的中文问题
3.6  Jive
图形处理
3.6.1  
图形上传处理
3.6.2  
服务器端图形处理

3.7  Jive安装调试运行
3.8
 小结

第四章:网站内容管理系统

4.1 需求分析

4.2 架构设计

4.2.1  系统架构图

4.2.2  MVC模式和Struts

4.2.3  DBO模式和Castor

4.2.4  Cache设计

4.3详细设计和实现

4.3.1  基本对象设计

4.3.2  数据模型的实现

4.3.3  抽象工厂(Abstract Factory)模式

4.3.4  生成器(Builder)模式

4.4 表现层的实现

4.4.1  Struts相关设置

4.4.2  创建PageForm

4.4.3  创建PageAction

4.4.4  创建Page.jsp页面
4.4.5 
自定义标签库
4.4.6 
创建SavePageAction
4.4.7  Tiles
模板
4.4.8 
创建cmsMenu.jsp
4.4.9 
创建index.jsp
4.4.10 
小技巧
4.5
项目重整Refactoring
4.6
调试、发布和运行
4.6.1  
配置和运行
4.6.2   Log
调试信息的配置
4.7
小结

第五章:订阅信息系统

5.1 需求分析

5.2 架构设计

5.2.1  CachePool

5.2.2  EJB框架体系
5.2.3 
架构图
5.2.4 
接口框架设计
5.3 EJB
详细设计和实现

5.3.1  业务对象建模

5.3.2  开发环境配置

5.3.3  CMP图形开发
5.3.4 
实体Bean
5.3.5  Facade Session Bean

5.3.6  Transfer Object 模式

5.4 WEBEJB接口框架

5.4.1  框架的设计

5.4.2  框架的实现

5.4.3  框架的使用

5.5 表现层的设计和实现

5.5.1 创建ActionForm

5.5.2 创建Action

5.5.3 创建Jsp页面
5.6
调试 配置和运行
5.6.1  JBoss
MySQL的配置
5.6.2  JNDI
配置
5.6.3 
部署和发布
5.6.4 
调试和测试
5.7
小结

第六章 用户安全管理系统

6.1 需求分析

6.2 架构设计
6.2.1 
角色
6.2.2  J2EE
JAAS
6.2.3 
单点登陆
6.2.4 
邮件发送组件

6.3 详细设计和实现
6.3.1 
业务对象建模
6.3.2 
数据库设计
6.3.3 
实体Bean实现
6.3.4  Session Bean
实现
6.3.5  EJB
容器安全配置

6.4 JMS邮件发送组件
6.4.1 
消息发送器
6.4.2  MDB

6.5 WEB层的实现

6.5.1  用户资料管理
6.5.2  WEB
容器安全配置
6.6
调试 配置和运行
6.6.1  JAAS
配置
6.6.2 
邮件服务的配置
6.6.3  
部署和发布

6.7 小结

第七章 EJB方法调用框架

7.1 框架概况
7.1.1 
远程调用技术背景
7.1.2 
框架结构

7.2 框架设计

7.2.1  代理(Proxy)模式

7.2.2  动态代理
7.2.3 
反射(Reflection)和方法
7.2.4  Http
协议和对象序列化
7.2.5 
框架设计图
7.2.6  HttpSession
和缓存机制
7.2.7 
基于Http的安全机制

7.3 类的详细设计和实现

7.3.1  基本业务对象

7.3.2  动态代理工厂  

7.3.3  肥客户端/服务器架构下实现

7.3.4  Web层代理Sevlet Proxy
7.3.5 
浏览器/服务器架构下实现
7.3.6 
核心代理Business Proxy实现

7.4 框架的使用和调试

7.4.1  配置

7.4.2  浏览器/服务器架构下的应用 

7.4.3  肥客户端/服务器架构下的应用
7.5
小结

第八章 网上商店系统

8.1 系统需求和设计
8.1.1  
基本业务对象
8.1.2 
数据表设计

8.2  数据操作通用框架
8.2.1 
框架的提炼和设计
8.2.2 
增删改查框架实现

8.3 商品类别管理功能的实现
8.3.1 
创建Session Bean
8.3.2  EJB
配置
8.3.3 
创建Category相关类实现
8.3.4  Web
配置
8.3.5 
创建Category.sp

8.4 商品管理功能的实现

8.4.1  创建ProductManager   

8.4.2  EJB配置

8.4.3  创建Product相关类实现
8.4.4  Web
配置
8.4.5 
创建Product.jsp
8.4.6 
商品图片上传功能

8.5 商品批量查询和多页显示
8.5.1  DAO
模式
8.5.2  Struts
框架下设计和实现
8.5.3 
页导航条实现
8.6
购物车功能的实现
8.6.1 
有状态Session Bean
8.6.2  WEB
功能实现
8.7
小结     

 

 

 

本书提要

本书介绍了多个Java系统从设计到开发直至完成的全过程,帮助开发人员解决Java实战中常见的主要问题。本书主要特点是:试图从可复用的面向对象的设计高度提出问题的通用解决方案,通过多个实例的设计和应用,展示了设计模式和框架是如何提升系统的可重用性、可扩展性和可伸缩性。本书对于企业J2EE应用系统的架构设计有一定参考作用。

本书适合大学计算机专业的学生、研究生、软件设计师以及软件开发人员学习参考。

本书前言节选

Java是复杂的,Java包含的东西太多,它已经不再是一个简单的语言,代表着一种新的设计和编程体系;Java虽然是由Sun公司发明,但是它的发展已经脱离了某个公司的完全控制,Java是由整个Java社区推动发展,Java和开源力量的结合为用户提供更先进的、更廉价的、更多重的选择。

Java至少从下面几个方面提供了最新的理念实现:

首先是多层结构,Java在企业服务器端主要应用体现在J2EE技术上,J2EE是一种多层结构的框架技术。
传统的C/S系统结构只有两层,将业务逻辑要么紧紧封装在数据库端,要么耦合在客户端,这样带来的缺陷就是很多业务功能无法复用,维护扩展起来困难,经常因为修改一个小问题导致整个系统错误百出,所谓牵一而动百,这种脆弱结构显然无法满足不断变化的客户需求。

世界上再也没有一个技术象软件这样能够帮助人们快速应付变化的环境,因此,动态扩展性和可伸缩性对于软件是多么重要。

为了提高软件系统的扩展性和可维护性,J2EE将整个系统划分成多个层次,如负责界面显示的表现层,负责数据库操作的持久层以及各种框架技术组成的中间层,这样整个系统就可谓泾渭分明,修改界面或数据表所造成的影响只在一个层面中,不会对其它层面形成影响和冲击。

多层结构同时带来了另外一个好处:最大化的可重用性,由于中间层脱离了具体界面联系,也和数据库具体操作实现了解耦,那么它的功能代码可以重用在多个项目开发中,大大节省了开发成本,提高了开发效率。

一个软件系统可以看成由两个部分组成:“新”和“旧”。所谓“新”就是针对具体应用的新设计和新代码;而所谓“旧”,就是重用了以前类似功能的软件组件或软件设计。

在这两个组成因素中,如果可重用的组件或设计越多,那么所需要的新设计和新代码就会越少,因此,可重用性对于软件设计和开发是极其重要。

通常情况下,可重用的往往不仅是软件功能,更多可能是软件设计,后者体现在设计模式和框架等概念上。

J2EE多层结构还带来了项目开发和管理的革新。J2EE从技术手段实施上保证了大型项目管理目标的真正实现,过去有不少中大型项目,由于没有可操作的实施手段,多人协作管理只剩余一个空话,再有能力的项目经理也不可能做好。

J2EE使得大型项目开发变得类似一个自动化工厂,J2EE框架技术本身就类似那套自动化生产流水线,程序员只要做好流水线的某个环节工作就可以,最后生产的产品通过ejb-jar.xml等文件配置组装后就可以运行了,有的人觉得J2EE开发环节太多,配置太多,而这些恰恰是它为应付大型项目所做的准备。

Java带来的新理念不只是上面这些,它最重要的贡献是改变了开发设计人员的系统分析和设计思维,分派和包装可能这个新思维的核心。

坚持完全面向对象的J2EE对于大型系统的思维方式是一分再分,将大项目拆成小项目、组件等,再细分到小类,将逻辑或者数据都进行封装,分派,粒度越细,整个系统越加稳固,这就象一个大厦是由很多楼层(组件)组成,楼层又是由砖头或水泥浇铸,而砖头和水泥都是由沙粒组成,当你把大厦细分到沙粒,无疑你可以用这些沙粒组合建筑全世界各种大厦或房屋了。同样,当你将一个大项目细分到一定粒度,你系统的可伸缩性、可扩展性、可维护性、可重用性要大大增强。当然带来的缺点和盖房屋一样,不可能一个人来完成这些,需要有很多人协同完成(可能这不能算缺点吧)。

总之,Java带给我们的是一个令人激动的新世界,因为其博大精深的丰富内容使得它的使用也变得复杂,目前,Java世界最大的努力就是简单化,本书的编写和出版也应该说是这种努力的表现吧。

本书从实战角度介绍了多个Java系统的设计、开发全过程,从这些实例中,试图总结出解决类似问题的通用规律,提出了一些可重用的模式或框架,帮助开发人员解决Java实战中常见的问题。

以笔者本人经验来说,学习Java可以先从Jsp入手,如果你有其它编程脚本经验如PHP或ASP则更佳,通过阅读第二章“简单的用户注册系统”可以帮助你从纯粹的脚本编程过渡到Jsp/JavaBeans的开发模式。

当你逐步感觉到分层结构的优点后,也许需要在开发思维上进行一些面向对象化概念的培训,设计模式则是一道不可逾越的鸿沟,GoF的23种设计模式你至少要知晓几种,第三章的“Jive论坛系统”可以帮助你学会如何使用设计模式。

模式是一种有一定高度的抽象概念,但是要注意可别“走火入魔”,必要的时候,把自己往“下”拉一拉,深入到Web底层原理机制中研究一番,现在Web Services、RMI、RPC等概念很热门,Robert C. Martin却说“我宁可使用Socket”,第一章的“高性能聊天系统”是基于Java非堵塞Socket设计线程级实时系统,研究多线程等概念可以帮助你牢固掌握Jsp/Servlet的熟练使用。

有了之前的“上下”折腾,总算可以练成了一个Web开发熟手,但是想成为Web开发高手,还需要再看看第四章的“网站内容管理系统”,这一章帮助你进一步深入掌握J2EE的Web技术,在这一章中将从层的概念来设计和开发应用系统,同时帮助你学习应用MVC模式的开源产品Struts。

第五章开始,将进入J2EE学习的精彩和核心部分EJB,EJB概念和原理非常复杂,但是使用比较简单,可以通过学习EJB设计模式,将EJB作为普通的JavaBeans操练实战,然后开始研究EJB性能提升和使用陷阱等问题,这样,可以逐步理解EJB各种复杂的概念和原理。

用户注册登陆是开发一个新系统首先必须解决的功能,因此如何建立一个统一的用户注册登陆系统是很多开发者关心的问题,第六章讨论了使用J2EE的JAAS实现用户注册登陆的主要步骤。

如何针对自己的应用领域设计出一种框架,将复杂的机制隐藏其中,从而在不丧失可拓展性、可重用性的基础上进一步简化开发步骤,岂不是一个两全其美的办法?第七掌的“EJB方法调用框架”介绍了这样一种框架的产生、设计和实现的全过程,EJB方法调用框架不仅提供了在瘦客户端/服务器结构下EJB服务的调用方式,而且提供了远程肥客户端和EJB服务之间交互式调用的框架。

数据的增删改功能实现往往要经过表现层、中间层和数据持久层等多个阶段,能不能在EJB和Struts体系下建立一种数据增删改查的通用操作框架,这样在开发大型数据库信息系统时,就可以轻松完成数百个数据对象的开发工作,第八章的“网上商店系统”在这方面作出了一定的尝试。

本书的软件系统基本都是建立在开源软件基础上,J2EE服务器采用的是Tomcat和JBoss,在书中或多或少介绍了这些开源系统的主要使用方法和注意点,相信对于文档相对缺乏的开源软件使用有一定的帮助作用。

 

 

java中文 java语言 java 虚拟机 Java高手 Java指导 Java培训书籍 Java开发指南 软件质量 伸缩 scalable 架构设计 架构指南 Achetecture 经验指导 软件研究 软件学术 软件权威 IT书籍 软件书籍 推荐书籍 热销书籍 排行榜书籍 C# .NET Java主流技术 Java流行技

 

 




更多标签...



Jdon框架演示

JiveJdon
源码下载

VIP收费区

历史热点讨论排行榜




google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘






手机阅读 add to google add to yahoo
联系我们 | 关于我们 | RSS订阅 | 广告联系 | 网站地图 | 设为首页
Copyright (C) 2002-2009 Jdon.com, All Rights Reserved 版权所有 上海解道计算机技术有限公司
沪ICP备05018152号 如有意见请与我们联系 Powered by JdonFramework