时间:2021-05-20
<results>标签在Struts2的MVC框架的视图中所扮演的角色。动作是负责执行业务逻辑。执行业务逻辑后,接下来的步骤是使用<results>标签显示的视图。
经常有一些附带导航规则的结果。例如,如果在操作方法是对用户进行验证,有三种可能的结果。 (一)成功登录;(二)不成功的登录,用户名或密码错误;(三)帐户锁定。
在这种情况下的动作方法将被配置呈现的结果有三种可能的结果字符串和三个不同的看法。我们已经看到在前面的例子。
但是,Struts2 不配合使用JSP作为视图技术。毕竟MVC范例的整个目的是保持独立的层,高度可配置的。例如,对于一个Web2.0的客户端,可能希望返回XML或JSON作为输出。在这种情况下,可以创建一个新的结果类型为XML或JSON和实现这一目标。
Struts的一些预定义的结果类型,无论我们已经看到了,这是默认的结果类型,它是用来调度调度到JSP页面。 Struts 允许使用其它标记语言的技术呈现的结果和流行的选择,包括 Velocity, Freemaker, XSLT 和Tiles.
分发结果类型:
调度程序的结果类型是缺省类型,并使用,如果没有其他的结果类型被指定。它被用来转发到一个servlet,JSP,HTML页面,等等,在服务器上。它使用RequestDispatcher.forward()方法。
在我们前面的例子中,我们看到了“shorthand”的版本,在那里我们提供了身体的结果标签 JSP路径。
<result name="success"> /HelloWorld.jsp</result>我们也可以指定JSP文件中使用一个<param name="location">的标签内<result...>的元素如下:
<result name="success" type="dispatcher"> <param name="location"> /HelloWorld.jsp </param ></result>我们还可以提供一个分析参数,默认为true。解析参数位置参数决定是否将被解析为OGNL表达式。
FreeMaker结果类型:
在这个例子中,我们将看到我们如何使用FreeMaker作为视图技术。 freemaker是一种流行的模板引擎,用于使用预定义的模板来生成输出。让我们Freemaker模板创建一个文件称为hello.fm以下内容:
在这里,上述文件是一个模板的名字是从外面使用已定义的动作,将传递一个参数置。会保持这个文件在CLASSPATH中。接下来,让我们修改struts.xml中指定结果如下:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts> <constant name="struts.devMode" value="true" /> <package name="helloworld" extends="struts-default"> <action name="hello" class="com.yiibai.struts2.HelloWorldAction" method="execute"> <result name="success" type="freemarker"> <param name="location">/hello.fm</param> </result> </action> </package></struts>让我们使用前面的 HelloWorldAction.java,HelloWorldAction.jsp和index.jsp文件。现在右键点击项目名称,并单击Export > WAR File创建一个WAR文件。然后部署这个WAR在Tomcat的webapps目录下。最后,启动Tomcat服务器和尝试访问URL http://localhost:8080/HelloWorldStruts2/index.jsp。这会给出以下画面:
输入一个值“Struts2”,并提交页面。应该看到翻页
正如看到,这是完全一样的JSP视图,但我们是不依赖于使用JSP作为视图技术。在这个例子中,我们已经使用Freemaker。
重定向结果类型:
重定向的结果类型,调用的是标准response.sendRedirect() 方法,使浏览器建立一个新的请求发送到给定的位置。
我们可以提供无论是在体内的<result...>元素或作为一个<param name="location">的元素的位置。还支持重定向解析参数。下面是一个例子使用XML配置:
<action name="hello" class="com.yiibai.struts2.HelloWorldAction" method="execute"> <result name="success" type="redirect"> <param name="location"> /NewWorld.jsp </param > </result></action>因此,只要修改struts.xml文件,定义如上所述重定向类型,并创建一个新的文件,在那里会被重定向 Hello时动作将返回成功到NewWorld.jpg。也可以checkStruts2 重定向操作的例子,为了更好的理解。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
我们平时常用的是<ul><li>标签,不过dd、dt标签也蛮不错,特别是发布程序的时候功能模块列表什么的可以使用它来排版。</dl><dt></dt><dd><
Struts框架。在Java开发过程中最早使用的框架就是Struts框架,它实现了以Java应用为基础和以MVC模式为基础的应用架构,也是MVC设计中的一个主要
本文研究的主要是Struts2框架单选按钮详解及枚举类型的转换的相关示例,具体如下。使用struts2标签,毫无疑问要先引入标签库:假设radio单选框中Lis
dd、dt标签是是列表用的。我们平时常用的是<li>标签,不过dd、dt标签也蛮不错,特别是发布程序的时候功能模块列表什么的可以使用它来排版。</dt></dd
strip_tags()函数剥去HTML、XML以及PHP的标签。复制代码代码如下:smarty中可以使用strip_tags去除html标签,包括在<>之间的