java设计模式--项目框架与设计模式.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java设计模式--项目框架与设计模式

项目框架与设计模式 第十五章 回顾 什么要同步? 怎么同步? 什么是死锁? 本章目标 项目框架 设计模式(单态模式、DAO模式、工厂模式) 通信示意图 服务器端 启动服务器,服务器端建立ServerSocket,并启动监听线程,等待客户端连接。 监听线程接收到客户端连接后,启动接收线程。在线程里对接收到的数据进行相应的处理。举例:服务器接收到私聊包之后,转发给相应的客户端。 客户端 建立Socket连接到服务器,发送登陆包进行验证,验证通过之后进入聊天界面并启动接收线程。 接收线程负责接收服务器发送或者转发的数据包。如接收到在线用户包,则刷新在线用户列表;如接收到私聊、群聊、公告包则显示出来。 注:客户端不连接数据库,所有对服务器数据的修改都是通过发数据包到服务器,由服务器端来完成。 主要技术难点 通信 多线程 在线用户刷新 数据的转发(Socket和用户id的对应关系) 数据保存方式的切换 参数的传递 单态模式 Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 单态模式的实现 public class Singleton { //私有的构造,保证只有自己能调用 private Singleton(){}   //在自己内部定义自己一个实例 //注意这是private 只供内部调用 private static Singleton instance = new Singleton();   //这里提供了一个供外部访问本class的静态方法,可以直接访问 public static Singleton getInstance() { return instance;    } } 单态模式的应用场景 资源访问的统一入口类(计数器、外部资源的访问) 控制实例的个数,便于垃圾回收 ValueObject(值对象) 数据封装 属性的setter,getter方法 数据传递 DAO模式 数据访问对象(Data Access Object) 模式 (CRUD) Create,Retrieve, Update ,Delete DAO模式 使用数据访问对象(DAO)模式来抽象和封装所有对数据源的访问。DAO管理着与数据源的连接以便检索和存储数据。 DAO实现了用来操作数据源的访问机制。数据源可以时RDBMS,文件系统等等。依赖于DAO的业务组件为其客户端使用DAO提供更简单的接口。DAO完全向客户端隐藏了数据源实现细节。由于当低层数据源实现变化时,DAO向客户端提供的接口不会变化,所有该模式允许DAO调整到不同的存储模式,而不会影响其客户端或者业务组件。重要的是,DAO充当组件和数据源之间的适配器。 DAO模式类图 DAO模式的参与者和职责 BusinessObject(业务对象) 代表数据客户端。正是该对象需要访问数据源以获取和存储数据。 DataAccessObject(数据访问对象) 是该模式的主要对象。DataAccessObject抽取该BusinessObject的低层数据访问实现,以保证对数据源的透明访问。BusinessObject也可以把数据加载和存储操作委托给DataAccessObject DataSource(数据源) 代表数据源实现。数据源可以是各RDBMS数据库,OODBMS,XML文件等等。 valueObject(值对象) 代表用做数据携带着的值对象。DataAccessObject可以使用值对象来把数据返回给客户端。 DataAccessObject也许会接受来自于客户端的数据,其中这些用于更新数据源的数据存放于值对象中来传递。 工厂模式(Factory) 提供创建对象的方法,利用工厂模式可是做到针对接口(interface)编程。 工厂模式实现 根据传入的参数生成不同的实现类,实现类以统一的类型返回。 举例: public Sample createSimple(int which){ if (which==1) return new SampleA(); else if(which==2){ return new SampleB(); else return null; } 工厂模式类图 DAO模式+工厂模式类图 回顾 项目框架 设计模式(单态模式、DAO模式、工厂模式) * 服务器 客户端 Socket

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档