Struts2设计模式



Struts2设计模式。

1. Command Pattern

基本定义: 把Command(Request)封装成对象,把发出命令(Invoker)的责任和执行命令(Receiver)的责任分割开,委派给不同的对象。

责任划分有什么好处?

责任约单一,内聚性越高,可重用的可能性越大,试想下,如果服务员不仅要点菜,还要去做菜,会是什么情景。


为什么把Invoker和Receiver解耦好处多?

 

类之间的耦合越低,可扩展的可能性越高。解耦后,更换一个服务员并不会影响厨师的工作

 

那么把Request封装成[......]

Read more

spring+strtus+hibernate+struts2中的设计模式

spring+strtus+hibernate+struts2中的设计模式

Spring 的AOP 体现了动态代理模式 IOC 是工厂模式 OpenSessionInViewFilter是一种反模式;facade模式,比如spring对jdbc的封装

 

struts的里面用到了工厂模式

 

struts2有单例、工厂、适配器模式。责任链模式,比如struts2的各种拦截器的使用。拦截器中也有是代理模式.

 

Hibernate没怎么分析过 但是对每个数据库都适用应该有策略模式

 

本文链接地址: sprin[......]

Read more

使用控件模板定制控件的观感

使用控件模板定制控件的观感

这是8个系列教程的第七部分,这系列示范如何使用Silverlight 2的Beta1版本建造一个简单的Digg客户端应用。这些教程旨在按顺序阅读,帮着解释Silverlight的一些核心编程概念。

 

如何定制控件的观感(Look and Feel)

 

WPF和Silverlight编程模型中一个强大无比的功能,就是能够完全定制所使用的控件的观感(Look and Feel )。这允许开发人员和设计师对控件的界面以微妙和戏剧性的方式进行精雕细琢,促成无比的灵活性以创建出恰如所愿的用户体验。

 

在这篇[......]

Read more

使用WPF创建一个Digg桌面应用

使用WPF创建一个Digg桌面应用。

这是8个系列教程的第八部分,这系列示范如何使用Silverlight 2的Beta1版本建造一个简单的Digg客户端应用。这些教程旨在按顺序阅读,帮着解释Silverlight的一些核心编程概念。

 

使用WPF创建一个Digg桌面应用

 

这最后一个教程的目的与前面7个有点不同。我们实际上不将在本教程里在Silverlight中运行代码,而是将使用WPF和.NET 3.5。我们将拿我们编写的,在浏览器中运行于Silverlight中的现有的Digg应用代码,重用它来以Windows桌面应用的方式运行。

&n[......]

Read more

servlet中实现页面跳转的两种方法

servlet中实现页面跳转的两种方法1) redirect 方式

response.sendRedirect(“/a.jsp”);

页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:

response.sendRedirect(“URL”);

跳转后浏览器地址栏变化。

这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。

2) forward方式

RequestDispatcher dispatcher = r[......]

Read more

The requested resource is not available

The requested resource is not available

运行tomcat 提示如下错误: The requested resource () is not available的解决方案

有的人说:只需要修改Tomcat服务器中web.xml 

<init-param>
<param-name>listings</param-name>
<param-value>false(将其该为true)</param-value>
</init-param>

但我改为true之[......]

Read more

简单的jsp+servlet实例

简单的jsp+servlet实例。

开发环境myeclipse+tomcat6

1、先创建web project,项目名为RegisterSystem,

2、在WebRoot 目录下创建login.jsp文件,只需修改body中的内容,如下所示:

<body>
   <form action=”login”>
   username:<input type=”text” name=”username”><br>
   password:<input type=”password” name=”pwd”>&[......]

Read more

Java web分层设计思想以及相关方法

Java web分层设计:表现层,业务层,持久层

1、表现层:负责展示一个可操作的界面,调用业务层的接口,框架一般使用:struts1 struts2,当然还有webwork。

      Struts是基于J2EE平台的MVC框架,主要采用Servlet和JSP技术来实现, 作为MVC的控制器。

2、业务层:负责处理业务逻辑,给表现层提供可调用的接口,并调用持久层的接口进行数据存储,主流框架:Spring,iBATIS。

      Spring是一个轻型容器,核心是Bean Factory。可以和其他框架相结合。提供了IoC的容器和AOP(面向层面的编程)的实现。[......]

Read more

SQL SERVER :删除表中重复的记录:ROW_NUMBER() OVER函数

SQL SERVER :删除表中重复的记录:ROW_NUMBER() OVER函数

For example :

     delete a
     from (select *,rid =row_number() over(partition by collist) from ta) a
     where rid >1 

ROW_NUMBER() OVER函数的基本用法

Read more