![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
架构设计
文章平均质量分 65
郗晓勇
这个用户不懒,但是依然什么也没有留下。
展开
-
23种设计模式
目录创建型1. Factory Method(工厂方法)2. Abstract Factory(抽象工厂)3. Builder(建造者)4. Prototype(原型)5. Singleton(单例)原创 2010-11-15 17:38:00 · 4510 阅读 · 11 评论 -
协作图
目录一、概要... 1二、协作图中的事物及解释... 1三、协作图中的关系及解释... 1四、消息标签... 2五、协作图与顺序图的区别和联系... 2六、我的协作图... 2协作图是一种交互图,强调的是发送和接收消息的对象之间的组织结构,使用协作图来说明系统的动态情况。协作图主要描述协作对象间的交互和链接,显示对象、对象间的链接以及对象间如何发送消息。协作图可以表示类操作的实现。事物名称解释图参原创 2010-11-14 10:21:00 · 2028 阅读 · 2 评论 -
Spring IOC原理解析
首先恭喜守宏同学找到了自己心仪的工作,入职的事情终于尘埃落定,也算是一个新的开始吧。和守宏聊天的时候也说了很多有关工作的事情,畅想了以后美好的未来,也想到了今后的种种困难。不说别的就是单单在北京住房这一项就够任何一个职场上的人忙上好几年的。英国天气无常,所以英国人寒暄的时候常常谈论天气;北京人居无定所,所以在北京上班的朋友们大可以在寒暄的时候谈论租房;)。“哎,你在哪租的房子?”“我在西二旗那边,原创 2013-05-20 00:56:50 · 4551 阅读 · 10 评论 -
面向服务的体系结构(SOA)——(2)ESB介绍及职责
企业服务总线(Enterprise Service Bus)是SOA的基础设施,之所以这么说是因为要达到SOA的目标(增强灵活性)就必须有调用服务的方法,ESB的存在有效的保证了消费者能够调用供应者提供的服务。网上有很多对ESB不同的理解,其实这取决于实现ESB方式。对于ESB来说具体的实现方式不是固定的,但是核心思想(主要的作用)是一致的。下面将从如下几个方面阐述笔者对ESB的理解数据格式转换E原创 2013-07-01 21:37:42 · 3954 阅读 · 4 评论 -
面向服务的体系结构(SOA)——(3)关于BPM
什么是BPM很多情况下企业当中所提供的服务不是由一个分布式业务流程就可以完成的,整个服务的提供需要多个分布式流程有机的组合,于是BPM就应运而生了。要将现有的服务通过配置、编排(关于配置与编排的区别后面将说明)以满足具体的业务流程的目的就不得不借助于工作流的相关内容。毕竟各个服务之间的配合是为了提供一项合理的业务流程,这样的话就必须要设计流程,说白了就是各个服务谁先谁后的问题。从字面上理解BPM所原创 2013-07-29 14:51:02 · 3046 阅读 · 7 评论 -
面向服务的体系结构(SOA)——(5)关于MEP(Message Exchange Patterns)
SOA中的MEP和JavaEE中的JMS类似,当然了就应该是类似的,因为都是关于消息方面的。一个是对系统架构当中消息的解决思路,一个是针对Java平台中的消息的具体解决办法(严格说不是具体的,只是提供了接口而已)或者说和上面分析BPM与Jpbm一样,前者是后者的特例,所以后者有的特征前者大部分都有。就像JMS规范中描述的那样消息无非也就是请求与应答,这里有两种基本的模式其实很简单啦。第一种就是请求原创 2013-07-31 23:43:48 · 2653 阅读 · 7 评论 -
面向服务的体系结构(SOA)——(4)对于服务的理解
在接触SOA之前对“服务”这个词没有太多的感触,无非就是为别人做事情么。当然在SOA中这个词也脱离不了这层基本的涵义,但是具体到实际的架构中对这个词的理解就更加深刻了。本文就以“服务”为中心说说笔者对这个词的理解,尤其是它在SOA这个环境下的理解。由浅入深咱们先从现实说起,通常我们日常所说的“服务”这个词既可以是动词,也可以是名词例如:“为人民服务”“服务行业”。在国内对“服务”这个词理解有些误差原创 2013-07-31 23:36:50 · 3331 阅读 · 5 评论 -
系统性能调优(6)----寻找性能瓶颈心得
最近优化了一项系统的性能,总结心得如下,希望对大家有用。先说大致的业务以及优化的成果(这不是炫耀,但是此处应该有掌声。哎,自娱自乐是种病,都怪我放弃了治疗)。同时处理N个用户,每个用户需要根据不同的条件进行相应的操作,这里的操作可能是更新其他表,可能是插入其他表得根据用户的状态进行判断。当然了这里的N不是全部的用户,是根据联合查询得来的一个List。需要说明的是这个查询语句已经被前人优化的非常好了原创 2013-12-30 18:54:11 · 7334 阅读 · 63 评论 -
JSF教程(2)——ManageBean中的Scope
上一篇文件中介绍了JSF的HelloWorld,其中在ManagedBean中我们比较敏感的信息是关于Scope的注解,在Struts中配置一个Action的时候也是需要配置Scope的,他们有些相似,只不过此Scope非彼Scope。如果读者对Struts比较了解那么对于Scope肯定有自己的理解,其实Scope(范围)就是在形容这个被描述的物体所存在的范围。Java官方的Tutorial中是这样描述的。原创 2014-03-31 23:41:59 · 10409 阅读 · 4 评论 -
cas
cas?原创 2014-06-30 23:52:04 · 1506 阅读 · 3 评论 -
技术选型注意事项
最近一个朋友比较烦恼,原因是他们的系统换数据库了,如果仅仅是换个数据库倒是没啥大不了,撑死了改个数据库的驱动,改改连接字符串就得了,这都是分分钟的事。但是悲哀的是表结构也得到了较大的调整,“累觉不爱”来形容这为朋友对换数据库这件事的感受再恰当不过了。而笔者对这件事有几点体会。错误发现的越早浪费的时间越少其实如果后面Dao实现用的是Hibernate或者是JPA那么在开发阶段换数据库就不再是什么麻烦原创 2014-06-19 07:53:08 · 2924 阅读 · 15 评论 -
有状态会话bean
在会话bean综述中,描述了无状态和有状态bean的区别在于客户端和服务器之间交互形式不同。对于无状态会话bean,交互的开始和结束都在同一个方法中。有时客户端需要发出多个服务请求(需要调用多个方法),而每个请求需要访问或者考虑前面的请求结果。有状态会话bean的出现就是为了处理这种情况,通过向客户端提供一个专用的服务(某一个可以保留前面状态的bean),当客户端获得bean的引用时启动该服务,并原创 2014-11-04 22:27:07 · 3613 阅读 · 6 评论 -
企业级开发的思考
以前自己一直认为企业级开发是神圣的,是不容质疑的。尽管有时候自己也认可“多大屁股穿多大裤衩”的道理,但是那种重量级的开发模式在自己心目中占据的位置一直是不容侵犯的。直到最近公司打算要做个东西的时候才发现企业级真的很重,重到90%以上的情况用不到。之前考虑过EJB和Spring,自己一直认为只有EJB才是亲生的,至于Spring只不过算是一个长得很壮的野草而已。但是最近工作中遇到的问题改变了我以往的原创 2015-03-31 22:05:17 · 1639 阅读 · 4 评论 -
深入学习Tomcat——servlet容器
上一篇文章里分析了一个简单的Web容器的实现过程,今天笔者来分析一个servlet容器是如何实现的。相信通过这两篇博客读者就可以理解为什么说Tomcat是一个容器了,既是Web容器又是servlet容器。所谓Web容器仅仅是可以处理静态资源(html)但是servlet就不一样了,由于在servlet里面我们可以按照servlet的规范编写我们的逻辑所以就出现了变化无穷的网页。所谓的Web2.0正原创 2012-10-31 23:37:29 · 1816 阅读 · 0 评论 -
云计算的由来——开发过程和交付方式
之前说了那些云计算的奠基人在技术方面的突破,以及他们取得的成就。除此之外他们还面临着另一方面的压力,那就是资金方面的压力。随着用户的越来越多,自然而然投入也越来越大。想盈利无非“开源、节流”两个方面。“开源”方面是互联网的优势,用户量呈指数增长,这倒不是他们面临的主要问题。但是“节流”就不是那么容易了,如何用最少的钱满足现大规模的访问量是他们不得不考虑的问题。除了运营那部分不得不花的钱之外,其他地原创 2015-06-30 23:25:29 · 2675 阅读 · 0 评论 -
顺序图
目录一、概要... 1二、顺序图中的事物及解释... 1三、顺序图与用例图和类图的关系... 2四、我的顺序图... 31. 顺序图用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的事件。2. 顺序图展示对象之间的交互,这些交互是指在场景或用例的事件流中发生的。 顺序图属于动态建模。3. 顺序图的重点在消息序列上,也就是说,描述消息是如何在对象间原创 2010-11-13 09:31:00 · 1963 阅读 · 2 评论 -
状态图
目录状态图概要... 1状态图... 1状态图用于... 1状态图的组成... 1状态... 1转移... 1状态图中的事物及解释... 2状态的可选活动表... 2我的状态图... 3说明对象在它的生命期中响应事件所经历的状态序列,以及它们对那些事件的响应。揭示Actor、类、子系统和组件的复杂特性。为实时系统建模。 对象的状态是指在这个对象的生命期中的一个条件或状况,在此期间对象将满足某些条件原创 2010-11-19 15:19:00 · 1813 阅读 · 2 评论 -
类图
目录一、类图概要... 1二、类图中的事物及解释... 1类... 1接口... 1抽象类... 1模版类... 2三、类图中的关系及解释... 2关联关系... 2聚合关系... 2组合关系... 2泛化关系... 3实现关系... 3依赖关系... 3四、我的类图... 4一、类图概要1. 类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态建模方法2.原创 2010-11-12 09:07:00 · 1812 阅读 · 2 评论 -
用例图会不会
l 简介 n 用例图比较官方定义是这么说的: 用例图就是由主角、用例以及它们之间的关系构成的图。该图说明了用例模型中的关系。 n 可以从两个方面来理解用例图的重要性: u对客户来说用例图原创 2011-03-05 22:55:00 · 6196 阅读 · 15 评论 -
部署图
目录 部署图概要...1 部署图中的事物及解释...2 部署图中的关系及解释...2 我的部署图...3 关于部署图与构件图...3 相关例子...原创 2010-12-01 10:47:00 · 2647 阅读 · 4 评论 -
构件图
构件图 目录 构件图概要...1 构件图中的事物及解释...1 构件图中的关系及解释...1 我的构件图...1 构件图用于静态建模原创 2010-11-29 21:50:00 · 2150 阅读 · 3 评论 -
活动图
目录活动图概要... 1活动图事物... 2活动图关系... 2我的活动图... 3描述系统的动态行为。包含活动状态(ActionState),活动状态是指业务用例的一个执行步骤或一个操作,不是普通对象的状态。活动图适合描述在没有外部事件触发的情况下的原创 2010-11-26 15:02:00 · 2521 阅读 · 3 评论 -
用例图
目录一、概要... 1二、 用例图中的事物及解释... 1三、我的用例图... 21. 用例图是被称为参与者的外部用户所能观察到的系统功能的模型图。 (《UML参考手册》)2. 用例图列出系统中的用例和系统外的参与者,并显示哪个参与者参与了哪个用例的执行原创 2010-11-10 11:27:00 · 2551 阅读 · 4 评论 -
UML画图
UML图画告一段落了,没有画的图也全部都补上了。补图同时也是补“纠结”——学习中不可缺少的部分!画图那纠结的日子貌似是过去了,但是我们有收获,这种纠结非常有意义!况且第一遍的纠结是为了第二遍、第三遍的舒坦做铺垫的。只有通过这个纠结的过程,才能更好的、深刻的理解学习的内容。而那种轻原创 2010-12-02 08:18:00 · 2194 阅读 · 8 评论 -
再看设计模式
设计模式的代码敲了一遍了,原本想着再深入的学习一下的,但是又要忙着专业课的考试,不得不把设计模式先放一放。前一阶段的学习只能叫浅学习,忙完期末考试后准备进行设计模式的深学习(《关于编程的浅学习与深学习》)。 说说现在对设计模式的理解,欢迎拍砖。原创 2010-12-15 21:21:00 · 1903 阅读 · 11 评论 -
设计模式初探
《大话设计模式》这本书看完了。恩!仅仅是看完了,原谅我的“冒进”吧。这本书写的实在是太有意思了,有一种看故事书的感觉。一旦看上了就忍不住要继续往下看,犹如滔滔江水一发不可收拾啊……说说感受先l 出来混的迟早是要还的看了这本书才知道,为什么我们的学习计划安原创 2010-11-12 11:51:00 · 2096 阅读 · 6 评论 -
对三层和MVC的认识过程
三层架构就是MVC!起初老师总说三层MVC,MVC三层架构……所以开始的时候脑子就一个概念:三层就是MVC,MVC就是三层架构。而且想想也合理啊,都是“三”。MVC是三个字母,三层架构也是“三”,理所应当的就对应上了。然后就这么一直“错”了很长时间。三层架构绝不是MVC!!后来学习了J2EE之后发现老师说的好像不对,MVC和三层架构不是一个东西。三层架构是界面层(U原创 2011-11-30 23:55:11 · 7955 阅读 · 25 评论 -
LN项目重构之职责链模式
LN项目截止到昨天为止算是彻底的完工了,功能实现方面没有问题,但是这个一星期出来的“早产儿”还是有很多其他问题,比如代码的重复量过高、各个类之间耦合太大。整个系统中虽然用到了分层的思想,但是基本上BLL层的代码是一致的,也就是说如果需求改动(比如增加审核的部门,或者原先的部门审核顺序进行调整)则需要改动整个的BLL层。现在整个系统的架构如下图所示:整体上的架构没什么问题原创 2011-11-30 23:06:17 · 3657 阅读 · 5 评论 -
《三层架构之抽象工厂加反射》纠错
每当别人问我关于三层的知识的时候我总是推荐自己的《三层架构之抽象工厂加反射》这篇博客。这篇博客是自己当时学习三层的时候写的一个简单的登录例子。这个例子通过登录这个用例简单的介绍了三层,然后过度的三层+简单工厂再过渡到三层+抽象工厂。不管说从方法命名或者代码风格上来说自己都不敢说是最好的,但是体现三层我感觉还是绰绰有余的。然而最近在给别人讲述三层时候被他人指出这篇博客的代码有些许错误,虽然别人指出的原创 2012-01-14 01:11:25 · 5591 阅读 · 28 评论 -
单例模式在DRP中的应用
此次DRP项目主要对企业的物流和资金流进行全面的管理和控制,从而缩短企业的供应链,为企业节省成本,为管理层提供全面的信息流。本系统主要包括如下模块,代理商及其库存管理、分销费管理、结账管理、付款结算管理、统计报表管理、基础数据管理和系统管理。整个系统采用分层的思想,通过调用访问数据库类(Dbutil)访问数据库。考虑到如果多次实例化用户管理类(UserManager)可能导致对表的操作混乱原创 2011-12-29 23:51:17 · 3755 阅读 · 23 评论 -
servlet过滤器
在Web应用中可以使用过滤器对所有的访问和请求进行统一的处理、IP访问限制以及用户发送请求的字符编码转换等,在进行具体的业务逻辑处理之前,首先要经过过滤器的同意处理,然后才开始进入真正的逻辑处理阶段。过滤器的基本原理过滤器的功能就是在服务器和酷虎中间增加了一个中间层,可以对两者之间的交互进行统一的处理,每一个从客户端提交的请求都需要通过过滤器的处理然后再进行其他操作。在实际开发过程中,过滤器可以用原创 2012-05-31 11:32:36 · 6429 阅读 · 6 评论 -
Struts1和Struts2核心控制器的执行原理
Struts11、初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web、xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(struts-config、xml)的配置信息,为struts中不同的模块初始化相应的对象。2、发送请求:用户提交表单或通过URL向WEB服务器提交请求,请求的数据用HTTP协议传给web服务器。3、form填充:s原创 2013-01-31 23:29:52 · 6865 阅读 · 3 评论 -
云计算名词解析
IaaS、PaaS、SaaS作为云计算三种服务模式,下面会着重介绍他们的定义、作用、功能、对应产品以及他们之间的关系等。 一、定义:SaaS:SoftwareasaService,软件即服务;这层作用是将应用作为服务提供给客户。PaaS:PlatformasaService,平台即服务;这层作用是将一个开发平台作为服务提供给用户。IaaS:InfrastructureasaService,基础设施转载 2015-06-30 23:26:15 · 1999 阅读 · 1 评论