`
zhoushuping
  • 浏览: 45469 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。     总结如下:     Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。     DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问 时,DataSource实际 ...
Java synchronized详解 第一篇: 使用synchronized 在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语 --synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,是模拟银行中的多个线程同时对同一 个储蓄账户进行存款、取款操作的。在程序中我们使用了一个简化版本的Account类,代表了一个银行账户的信息。在主程序中我们首先生成了 1000个线程,然后启动它们,每一个线程都对John的账户进行存100元,然后马上又取出100元。这样,对于Joh ...
最近,我的助理问我,一个职业人应该怎样规划自己的职场生涯呢?我告诉他,人的职场生涯分了四个阶段,每个阶段都要稳扎稳打,不可错乱,就可以稳步走向成功了。他听后,说受益匪浅,于是我就决定写下来,给更多的人看到。第一个阶段,叫做“只做不说”。这个阶段,别人说,你照着做,没你说话的地方,所以叫做“只做不说”。第二个阶段,叫做“自做自说”。这个阶段,你自己可以完成工作,自己考虑,自己定目标,自己做,做完之后,自己说出来,汇报工作。第三个阶段,叫做“只说不做”,这个阶段,你可以指导别人工作,你动嘴,别人动手。第四个阶段,叫做“不做不说”,这个阶段,手下人被培养出来了,你可以不用动嘴,或者很少动嘴,他们就能够 ...
文来自Totango的联合创始人兼CEO盖伊?尼尔帕兹(Guy Nirpaz),他在本文中列出了优秀的开发者和差的(或还需努力的)开发者之间的区别。 如果你认为使用“优秀”和“差”来区分开发者不妥的话,也可以将这些看作是初级开发者和资深开发者之间的区别。但无论如何,多看看其他的优秀开发者(或资深开发者)是如何做的,对于自身技能、工作方式的提升有很大的帮助。 文章内容如下: 优秀的开发者是一个艺术家,一个享受创作过程的工匠。差的开发者只将自己当作负责产生代码的码农。 优秀的开发者了解客户的问题。差的开发者只了解手头的技术问题。优秀的开发者会不断努力去理解“为什么”,然后去实现,同时 ...
(摘自:http://blog.csdn.net/sophia_sy/archive/2007/01/17/1485750.aspx) 面向对象设计(OOD)的第一块基石,就是"开-闭原则(Open-Closed principle,简称OCP),它的核心含意是:一个好的设计应该能够容纳新的功能需求的增加,但是增加的方 ...
  原文出处:http://space.itpub.net/6517/viewspace-609654 9HA3\m{+v0 1.Spring架构图  Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。Spring框架的功能可以用在任何J2EE服务器中,大多数功能也适用于不受管理的环境。Spring的核心要点是:支持不绑定到特定J2EE服务的可重用业务和数据访问对象。这样的对象可以在不同J2EE环境(Web或EJB)、独立应用程序、测试环境之间重用。
概述     软件设计是把需求转化为软件系统的最重要的环节,系统设计的优劣在根本上决定了软件系统的质量。     在此,主要阐述软件系统设计的5个核心内容:体系结构设计、用户界面设计、数据库设计、模块设计、数据 ...
I、关系数据库设计范式介绍 1.1 第一范式(1NF)无重复的列       所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如 ...
一、断点续传的原理解释 其实断点续传的原理很简单,就是在 Http 的请求上和一般的下载有所不同而已。 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为 wwww.sjtu.edu.cn,文件名为 down.zip。 GET /down.zip HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms- excel, application/msword, application/vnd.ms-powerpoint, */* Accept-Lang ...
交互视图描述了实现系统行为角色之间的消息交换序列。分类角色是对交互中充当特殊角色的对象的描述。交互视图提供了系统中行为在全局的描述,显示了多个角色间的控制流程。交互视图用侧重点不同的两种图来显示:顺序图和协作图。 消息指角色间的单向通信,从发送者到接收者的携带信息的控制流。消息可能带有角色间传递值的参数。 顺序图和协作图均显示了交互,但它们强调了不同的方面。顺序图显示了时间顺序,但角色间的关系是隐式的。协作图表现了角色之间的关系,并将消息关联至关系,但时间顺序由于用顺序号表达,并不十分明显。每一种图应根据主要的关注焦点而使用。 a.顺序图 顺序图表示了随时间安排的一系列消息。每个分类角色 ...
UML状态图描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的时间做出反应的。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。 建模实时系 ...
我前面一篇文章讲述过使用Apache+tomcat进行session复制的一个配置,但是实际中session复制需要消耗大量的资源,由于项目实际需要,此次选择的配置方式为Session Sticky(会话粘滞),这种方式将同一用户的请求转发到特定的Tomcat服务器上,避免了集群中Session的复制,缺点是用户只跟一台服务器通信,如果此服务器down掉,那就会造成系统无法访问。 软件配置:Apache2.2+tomcat5.5+xp 这次直接采用的model为mod_proxy_ajp.so,在2.2中已经集成。 首先安装Apache,然后修改配置文件http.conf,将以下三个model注 ...
Scrum是应用最广泛的敏捷开发方法。同时,它的失败率却非常高,其创始人之一Ken Schwaber估计75%尝试Scrum的组织无法获取他们预期的效果 (http://www.agilecollab.com/interview-with-ken-schwaber)。对此,通常的解释是“对Scrum框架的错误应用,和对其原则的错误把握。”Ken Scheaber 在“Scrum Guide”一文中对这两方面都提供了权威的阐述。本文的目的是在此基础上,提供更加明确的操作性的指导和检查工具。 第一部分:Scrum 的框架 Scrum并不是一个特定产品开发的流程或技术,而是一个容纳其它流程和技术的 ...
在单一的服务器上执行WEB应用程序有一些重大的问题,当网站成功建成并开始接受大量请求时,单一服务器终究无法满足需要处理的负荷量,所以就有点显得有点力不从心了。另外一个常见的问题是会产生单点故障,如果该服务器坏掉,那么网站就立刻无法运作了。不论是因为要有较佳的扩充性还是容错能力,我们都会想在一台以上的服务器计算机上执行WEB应用程序。所以,这时候我们就需要用到集群这一门技术了。 在进入集群系统架构探讨之前,先定义一些专门术语: 1. 集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计 ...
在开发大规模网站程序时,一般会让开发人员尽量采用Cookie而非Session来存 储一些状态相关的数据,例如用户登录信息等等。原因是不推荐做Session复制,而多个应用服务器之间为了共享Session所采取的做法无非就是采用 多播技术的Session复制,另外一种则是将Session持久化到数据库。 第二种做法性能很差,第一种做法在应用服务器节点非常多的时候复制的代价很高,实现tomcat集群中比较关键的问题还是session共享的问题。 一般而言对http session有如下的处理方案: 1、在服务器端不保存Session,完全无状态      对于不需要保持用户状态的Web应用, ...
Global site tag (gtag.js) - Google Analytics