- 浏览: 107778 次
- 来自: 杭州
文章分类
最新评论
-
lc2178890:
朋友,你在线吗?能不能在线交流一下,我也有遇见这个问题,不过是 ...
客户端用https连接服务器的一点心得 -
lj0910:
楼主 你的这个实现了吗? 能不能指教下。
用js如何打印网页中的某张图片。 -
goglad:
朋友,没有那么复杂吧,我更具tomcat document里面 ...
客户端用https连接服务器的一点心得 -
lzycxy:
我也出现了你这类似的问题,不知道你上述的问题解决了没有,如果解 ...
tomcat 配置 jmx -
baoqf:
网页上的图片点鼠标右键有个菜单叫“打印图片...”,我想用js ...
用js如何打印网页中的某张图片。
关键字: Struts2
有很多人都很熟悉 Struts, 无论是从项目中直接获得的实战经验还是从书中了解到的。我们这一系列文章,将通过一个由 Stuts 转移到 Struts2 简单的例子向大家展现Struts2的所有特征。 Struts的第一个版本 是在 2001年5月份发布。它提供了一个Web应用的解决方案,如何让 JSPs 和 servlets 共存去提供清晰的分离视图和业务和应用逻辑的架构。在Struts之前,最通常的做法是在JSP中加入业务和应用逻辑,或者在servlets中生成视图。 请求如何运作: 在我们开始详细探讨如何转移Struts到Struts2之前,让我们来看看整个请求流程在新架构中是如何运作的。你会注意到在整个请求的生命周期,仍是以controller作主体,而且所有的概念还都是你以前所熟悉的, 就如: 你应该已注意到,Struts2与Struts的差别。最明显的就是Struts2是pull-MVC 架构,就是可以直接从Action中获取所需要的数据,而不是像Struts那样必须把 beans 存到page, request,或者session中才能获取。这个我们将在下一章中详细提及。 配置框架: 首先最重要的是,让框架能通过web.xml在servlet containers里运行。 <servlet-mapping> 在 Struts2 中,这个有少许改变,最明显的是dispatcher 由servlet转为servlet filter, 其配置和servlet一样简单,如下: <filter> <filter-mapping> 和servlet配置一样,filter配置定义了名称(供关联)和filter的类。filter mapping让URI匹配成功的的请求调用该filter。默认情况下,扩展名为".action"。这个是在default.properties文件里的"struts.action.extension" 属性定义的。 工具箱: "default.properties"是配置选项定义文件。通过在classpath中包含一个叫"struts.properties"的文件,并设置不同的属性值,你可以覆盖这个默认的配置,实现自己的配置。 对于Struts, servlet配置提供了初始化tag的参数和使用的文件,而Struts2没有这样的配置参数,取而代之的是在classpath下的默认配置文件"struts.xml"。 工具箱/提示: Struts actions(扩展名".do"),Struts2 actions(扩展名".action"),所以Struts和Struts2可以在一个系统中共存。所以最好是保持原先的系统,在新功能的开发上用Struts2, 如果时间和资源允许的情况下再逐步迁移。另一种方法是只是把Struts2的扩展名改为".do",可重用JSPs. 分析Actions: 在上面介绍的请求运作流程中,我们谈及了一些Struts和Struts2的不同点。现在我们将较深入地探讨这两个框架中action结构的具体差别。 public class MyAction extends Action { 相比较之下, Struts2的action 提供了很多简单的实现。下面就是个例子: 首先你会注意到的是,Struts2中的action不再继承于任何类或需要实现任何接口。实际上,它还远不只这些。按照惯例,只有"execute"方法能调用action, 但在Struts2中并非必要,任何声明为public String methodName() 方法都能通过配置来调用action。 public interface ServletRequestAware { 当我们继承这个接口时,我们需要通过setter为我们的HttpServerRequest 属性变量赋值: public class MyAction implements ServletRequestAware { 看起来现在这些属性是类级别的,并不是线程安全的,但是在Struts2里并没有问题,因为每个请求过来的时候都会产生一个新的action对象实例,它并没有和其他请求共享一个对象,所以不需要考虑线程安全问题。 总结:
关键字: Struts2
|
发表评论
-
tomcat 配置 jmx
2007-09-24 13:19 59071.在tomcat/bin/catalina.sh中这句改为: ... -
客户端用https连接服务器的一点心得
2007-06-27 21:43 31057客户端用https连接服务器的一点心得 项目需要用h ... -
您的小数点到哪里去了?
2007-05-09 13:37 1731... -
解决windows下编辑的shell文件unix下不能用的问题
2007-09-24 13:19 1822如果在windows下编辑的shell文件,shell文件中第 ... -
Java 程序中的多线程
2006-07-23 16:05 1247Java 程序中的多线 ... -
编写tapestry页面时碰到的问题集锦
2004-09-24 19:50 1142popup window如何做? 在服务器端如何输出javas ... -
eclipse 技巧、问题及解决
2004-09-24 20:38 1338启动eclipse 时出错,problems during s ... -
struts 问题集
2004-09-24 20:55 1476struts form提交普通控件时,Action中得到的值是 ... -
使用axis部署webservice
2004-09-24 21:03 2481部署axis时把java类改成jws文件,放在Axis根目录下 ... -
eclipse3.0中使用lomboz的注意问题
2004-09-24 21:13 949eclipse必须先按装emf ( eclipse model ... -
Java程序员面试陷阱大全
2004-10-18 10:37 1005谈谈final, finally, finalize的区别 ...
相关推荐
从Struts应用开发框架转移到Struts 2 WEB框架 教程
8.1.1 页面上:如何使用自定义结果组件构建Struts 2 Ajax应用程序 171 8.1.2 实现JSON结果类型 173 8.2 常用的结果类型 180 8.2.1 RequestDispatcher,也叫做dispatcher 180 8.2.2 ServletRedirectResult,也叫做...
struts2框架的标签库分为三类: 用户标签:生成HTML元素 非用户标签:数据访问、逻辑控制等。 AJAX标签:支持AJAX技术。 用户界面标签又分两类: 表单标签:生成HTML页面的from元素 非表单标签:生成页面上的...
1.5 你的第一个struts应用程序 8 第2章深入Struts结构 8 2.1人介绍应用框架 mvc和model2 8 2.2 Struts原理、开发及项目实施 8 2.3使用STRUST控制流 8 2.4讨论STRUTS的优缺点 9 2.5 Struts入门经验 9 2.6用strtus制作...
Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发. IOC 控制反转 PersonDaoBean 是在...这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。
2. 深入 STRUTS架构..................................................................................37 2.1. 随便谈谈......................................................................................
2. 深入STRUTS 架构..................................................................................37 2.1. 随便谈谈.......................................................................................
Struts is a set of cooperating classes, servlets, and JSP tags that make up a reusable MVC 2 design. This definition implies that Struts is a framework, rather than a library, but Struts also contains...
IOC 将处理事情的责任从应用程序代码转移到框架。正如我将在下一个示例中演示的那样,Spring 框架使用 JavaBean 属性和配置数据来指出必须设置的依赖关系。 BeanFactory 接口 因为 org.springframework.beans....
当客户机第一次调用一个Stateful Session Bean 时,容器必须立即在服务器中创建一个新的Bean实例,并关联到客户机上,以后此客户机调用Stateful Session Bean 的方法时容器会把调用分派到与此客户机相关联的Bean实例...
Spring 2.0的 'spring-jmx.jar' 和 'spring-remoting.jar'已经被转移到 Spring 2.5的'spring-context.jar' (针对 JMX 和非HTTP 远程支持),部分转移到 'spring-web.jar' (针对HTTP 远程支持)。 Spring 2.0的 '...
3 IOC:控制反转,谓之“依赖关系的转移”,如果以前都是依赖于实现,那么现在反转为依赖于抽象吧,其实它的核心思想就是要面向接口编程,至于何谓接口何谓抽象,以及它们的好处,多看看设计模式吧,这里就不费口舌...
由于Spring通过代理Hibernate完成数据层的操作,所以原Hibernate的配置文件hibernate.cfg.xml的信息也转移到Spring的配置文件中: 代码 4 Spring中有关Hibernate的配置信息 1. 2. !-- 数据源的配置 //--> 3. ...
持续集成:轻松地在开发,运营和支持领域之间转移知识和经验。 持续部署:快速持续发布新版本的软件或服务。 持续反馈:来自软件或服务生命周期各个阶段的团队的频繁反馈。 DevOps路线图 配置CI / CD 快速开始
POM是Maven的核心对象模型,在Maven2中POM已由project.xml转移到pom.xml中使用,版本也由3升级为4。对于项目,一般只需要pom.xml就行了。 在Maven2中不需要也不提倡使用maven.xml,原因如下: • plugin的易用性的...
当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。 17、abstract class和interface有什么区别? 声明方法...