Struts2 s:property标签实例

时间:2017-11-10 10:52

Struts2的<s:property>标签是用来从一个类获得属性值,如果没有指定,这将默认为当前Action类(堆栈的顶部)属性。在本教程中,它展示了如何使用 <s:property> 标签,以从目前Action类获得其他bean类的属性值。


1. 动作类

这里有一个Action类,有一个 name 属性。

PropertyTagAction.java

package com.yiibai.common.action; import com.opensymphony.xwork2.ActionSupport; public class PropertyTagAction extends ActionSupport{ private String name = "Name from PropertyTagAction.java"; public String getName() { return name; } public String execute() throws Exception { return SUCCESS; } } 2. Bean

一个简单的Java类,它有一个 name 属性。

Person.java

package com.yiibai.common; public class Person { private String name = "Name from Person.java"; public String getName() { return name; } } 3. <s:property>标签示例

它展示了如何使用<s:property>标签,从PropertyTagAction与“Person”类获得name属性值。

property.jsp

<%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> </head> <body> <h1>Struts 2 property tag example</h1> <h2>1. Call getName() from propertyTagAction.java</h2> <s:property value="name" /> <h2>2. Call getName() from Person.java</h2> <s:bean var="personBean" /> <s:property value="#personBean.name" /> </body> </html> 

“property.jsp”页面是“PropertyTagAction”动作返回一个成功的结果页面。如果指定了<s:property value=”name” />在“property.jsp”页面,默认为当前的Action类“PropertyTagAction.getName()”属性。

4. 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 value="true" /> <package namespace="/" extends="struts-default"> <action > <result>pages/property.jsp</result> </action> </package> </struts> 5. 示例

:8080/struts2propertytag/propertyTagAction.action

在浏览器中打开上面的URL,显示结果如下:

Struts2 s:property标签实例

参考

Struts2 <s:property>标签文档

代码下载 - 


加QQ群啦!

JAVA技术群(2000人群): 227270512
MySQL/SQL群(2000人群): 418407075
Python技术群(2000人群): 287904175
大数据开发群(2000人群): 655154550(Java,Python,R,Scala,Hadoop,Spark,zookeeper,kafka等技术)
Web开发群(新群): 460153241 (PHP,HTML/HTML5,JS/JQuery,CSS等技术)
Linux技术群(新群): 479429477(Redhat/Centos,Ubuntu,Shell,运维,监控等技术)

易百教程移动端:请扫描本页面底部(右侧)二维码关注微信公众号,或直接手机访问: