学习java有几年了,一直都是用模式一,模式二开发,但是在项目组很多人同时开发的时候,显得有点力不从心!从3月份我就开始学习Struts2,并且运用strus2开发了实际的项目,现在我就把我的struts2学习和理解记下来,便于和大家进行经验交流和以后的复习!大家都知道struts现在是分两个版本,一个是struts1别一个就是所学的struts2。struts1出现的很早,运用它的市专场很大,但是随着web技术的发展,struts1里的一些缺点也暴露出来
系统 2019-08-29 23:05:09 2050
此次开发在***会议项目之后进行的优化。主要内容:1、对在这次开发中发现的问题进行解决。2、对流程引擎进行重构。3、扩展部分流程引擎的功能。4、进行结构调整。5、单元测试。测试驱动。调整总体结构目前结构主要的问题在于,流程内核、应用服务器的服务,业务逻辑都一个动态库中,代码杂糅在一起,不利于后面的维护,重用,以及开发。现在要做的事情是把它分成三层:1、FlowEngineCore流程内核层主要的功能是建立一个流程模型,包括:1)解析脚本,生成流程。2)实现
系统 2019-08-29 22:53:25 2050
AJAX技术所提倡的无刷新回调,在原来的技术中需要写大量的JavaScript代码或使用一些AJAX框架,使得开发效率和可维护性大大降低。其实ASP.NET2.0中,已经提供了这样的接口,这就是ICallbackEventHandler。关于ICallbackEventHandler网上已经有很多文章介绍了,这篇实为画蛇添足。ICallbackEventHandler存在于System.Web.UI中,我们先做一个非常简单的例子来试用一下。第一步,在VS2
系统 2019-08-29 22:38:57 2050
框架(Framework)是可重用的,半完成的应用程序,可以用来产生专门的定制程序。您只要细心地研究真实的应用程序,就会发现程序大致上由两类性质不同的组件组成,一类与程序要处理的具体事务密切相关,我们不妨把它们叫做业务组件;另一类是应用服务。比如说:一个税务征管系统和一个图书管理系统会在处理它们的业务方面存在很大的差异,这些直接处理业务的组件由于业务性质的不同不大可能在不同的系统中重用,而另一些组件如决定程序流向的控制、输入的校验、错误处理及标签库等这些只
系统 2019-08-29 22:18:52 2050
有人已经发过了,我掐头去尾精简了一下这种效果跟图和布局有很大关系,并不难。先看布局:
系统 2019-08-29 22:18:02 2050
1.缘起:假设我们要开发一个多人跳棋游戏。在跳棋游戏中,当一个人走一步棋之后,控制权就轮到下一家,如此轮询,一圈之后控制权又回到自己,然后再继续轮圈下去。我们可以使用数组或列表等数据结构来解决这种转圈圈的问题,但是始终都不够直观。我设计了Circle来对“圈”这种数据结构进行抽象,我们在类似跳棋这样的游戏中可以非常方便地直接使用它。Circle的形象示意图如下:2.适用场合:需要类似“圈”这样的数据结构支持的场合。3.设计思想与实现Circle也是一个非常
系统 2019-08-29 22:15:04 2050
第五次重构我们引入了数据库的设计,用户信息要从数据库中读取,问候语库存储在数据库中,并支持添加与更新。数据库的引入使自动化测试变得困难了,因为数据状态总是变化着的,而这种变化使得测试过程不能复现,这是我们不愿看到的。因此,我们在设计时将业务与数据库访问分离,形成了UserDao与GreetingRuleDao。此时,我们的设计应当遵从“依赖反转”原则,即将UserDao与GreetingRuleDao设计成接口,并编写它们的实现UserDaoImpl与Gr
系统 2019-08-29 21:59:03 2050
在搭建一个局域网的时候,IP地址规划的意义重大。如果你的网络永远不会被扩展和定制,那么你可以随意的规划IP地址,只要能保证路由是通的就可以了。然而如果将来有一天你需要对已有的网络进行拓展,那么就需要精心安排地址了。原则就是:尽量使逻辑上同类的地址规划成连续的地址,并且起始地址最好是2的次幂。这样做的原因在于可以方便的划分子网。考虑下面的拓扑:有一天,需要在该局域网增加一台加密网关,所有到达外部网络2的流量都要被加密,而且需要把加密流量路由指向加密网关(流量
系统 2019-08-12 09:30:33 2050
上一篇讲解了钩子程序的攻防实战,并实现了一套对框架页的监控方案,将防护作用到所有子页面。到目前为止,我们防护的深度已经差不多,但广度还有所欠缺。例如,我们的属性钩子只考虑了setAttribute,却忽视还有类似的setAttributeNode。尽管从来不用这方法,但并不意味人家不能使用。例如,创建元素通常都是createElement,事实上createElementNS同样也可以。甚至还可以利用现成的元素cloneNode,也能达到目的。因此,这些都
系统 2019-08-12 09:30:32 2050
文章来源:http://blog.csdn.net/zhengzhb/article/details/7359385定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。类型:创建类模式类图:抽象工厂模式与工厂方法模式的区别抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。他与工厂方法模式的区别就在于,工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则是针对的多个产品等级结构。在编程中,通常一个产品结构,
系统 2019-08-12 09:30:25 2050