- 浏览: 124913 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
yingtaier:
[i][4/i]引用-[*]引用---[size=x-larg ...
使用Cxf在中的自定义拦截器来输出日志信息 -
风雨故都:
Page 里面有什么属性
WebService(cxf框架)返回一个包含有map的一个page对象 -
ys20081411:
请问这个乱码和jdk的版本有关系么?我用了你的代码,但是报错了 ...
JSPWiki使用说明书 -
thrillerzw:
哈哈,难啊。
我想找个女朋友,但是不会表白。 -
thrillerzw:
不能 把每带过的地方,只是当成一个路过的地方,从来没有付出过 ...
活在一个有梦想的世界里
来自:http://stanlyy.iteye.com
1:输出action中属性值,在jsp页面中显示用:<s:property value="属性名" />
2:在页面中实现自动增加的序号用iterator的statuts的index属性 eg:
<s:iterator value="#request.inOutAccountList" id="data" status="listStat">
<s:property value="#listStat.index+1"/>
<!—输出当前迭代元素的索引à
<s:property value="#listStat.index"/>
<!—输出当前迭代了几个元素à
<s:property value="#listStat.count"/>
<!—返回当前迭代元素的索引是否为奇数à
<s:property value="#listStat.odd"/>
<!—返回当前迭代元素的索引是否为偶数à
<s:property value="#listStat.event"/>
<!—返回当前元素是否为第一个元素à
<s:property value="#listStat.first"/>
<!—返回当前元素是否为最后一个元素à
<s:property value="#listStat.last"/>
</s:iterator>
3:在action类中取得request和session对象的方法
Map session = ActionContext.getContext().getSession();
HttpServletRequest request = ServletActionContext.getRequest ();
设置它们的值的方法:
session.put("operation", "add");
request.setAttribute("name", name); 页面中取得它们的值:
<s:property value="#session.operation"/>
<s:property value="#session[‘operation’]"/>
${sessionScope.TEST} == ${session.TEST}
<s:if test="#session.operation =='add'">
<s:if test="#session[‘operation’]=='add'">
<s:if test="#session[‘operation’]==null">
<s:property value="#request.name"/>
${requestScope.name} == ${request.name}
4:页面中奇偶行样式不一样的控制方法:
<tr class="<s:if test='#listStat.odd==true'>tableStyle-tr1</s:if><s:else>tableStyle-tr2</s:else>" >
5:单选框和复选框的使用方法
1):可以设置默认选中值,注意list的值的设置,通过这种方式使key和value不一样,这种方法比较常用(checkboxlist or radio)
<s:radio name="uncarInsPolicy.policyStateCode"
list="#{'5':'通过' , '2':'不通过'}" listKey="key" listValue="value" value='5' />
2):这里的key和value的值是一样的(checkboxlist or radio)
<s:checkboxlist list="{'Red', 'Blue', 'Green'}" name="favoriteColor"/>
6:struts2 中的标签会生成类似由<tr><td></td></tr>构成的字串(具体什么标签生成什么,可以查 看生成后的页面的源代码)如果不限制这些多余代码的生成,页面将变得无法控制,所以一般我们是不希望它生成多余的代码的,具体的设置方法如果,在 struts.xml中统一配置
<constant name="struts.ui.theme" value="simple"/>加上该句即可
也可以通过在页面中将tag的theme属性设为"simple"取消其默认的表格布局
不过最好是:自定义一个theme,并将其设为默认应用到整个站点,如此一来就可以得到统一的站点风格
7:jsp页面中格式化日期的方法 <s:date name="unCarInsModificationInfo.createTime" format="yyyy-MM-dd" nice="false"/>这样就可以将日期格式化为yyyy-MM-dd的形式
8:默认情况下,当请求action发生时,Struts运行时(Runtime)根据struts.xml里的Action映射集(Mapping),实例化action对应的类,并调用其execute方法。当然,我们可以通过以下两种方法改变这种默认调用 1)在classes/sturts.xml中新建Action,并指明其调用的方法
比如想调用action类中的
public String aliasAction() {
message ="自定义Action调用方法";
return SUCCESS;
}
则在classes/sturts.xml中加入下面代码:
<action name="AliasHelloWorld" class="tutorial.HelloWorld"method="aliasAction">
<result>/HelloWorld.jsp</result>
</action>
既可用action名调用该方法了
2)(比较常用)
访问Action时,在Action名后加上“!xxx”(xxx为方法名)。
9:Struts 2.0有两个配置文件,struts.xml和struts.properties都是放在WEB-INF/classes/下。
struts.xml用于应用程序相关的配置
struts.properties用于Struts 2.0的运行时(Runtime)的配置
10:在action类中取得web下某一文件夹物理路径(绝对路径)的方法
filePath = ServletActionContext.getServletContext().getRealPath("/upLoadFiles")
11:要想返回的页面不是一个直接JSP页面而是要先通过返回action中的方法读取相应的数据再返回到jsp页面,有两种方法
1)在struts.xml中这么设置
<result name="list" type="redirect-action">sysmanage/UserBaseInfoAction!findUserBaseInfo.action</result>
2)在action中返回时直接调用这个方法即可
return findList();
12:设置checkboxlist中默认值的方法
<s:checkboxlist name="skills1"="Skills 1" list="{ 'Java', '.Net', 'RoR', 'PHP' }" value="{ 'Java', '.Net' }" />
<s:checkboxlist name="skills2"
label="Skills 2" list="#{ 1:'Java', 2: '.Net', 3: 'RoR', 4: 'PHP' }" listKey="key" listValue="value" value="{ 1, 2, 3 }"/>
13:二级级连下拉框 <s:set name="foobar"
value="#{'Java': {'Spring', 'Hibernate', 'Struts 2'}, '.Net': {'Linq', ' ASP.NET 2.0'}, 'Database': {'Oracle', 'SQL Server', 'DB2', 'MySQL'}}" />
<s:doubleselect list="#foobar.keySet()" doubleName="technology" doubleList="#foobar[top]" label="Technology" />
14:在页面中取出list对象中的属性值 <s:if test="list!=null&&list.size()>0">
<s:iterator value="list" status=”stat”>
<!—如果list中存储形式为select id,name,title-- >
<s:property value="list[#stat.index][0]" />
<!—如果list中存储多对象如left join Role left join Group-- >
<s:property value="list[#stat.index][0].title" />
<s:property value="list[#stat.index][1].title" />
<!—如果为Map形式存储-- >
<s:iterator value="mapUsers.keySet()" id="id">
<s:property value="#id"/>
<s:iterator value="mapUsers.get(#id)">
<s:property value="nickname"/>||<s:property value="UName"/>
</s:iterator>
</s:iterator>
<!—判断是否为奇数-- >
<s:if test="stat.odd == true"></s:if>
<!—判断是否为第一条数据-- >
<s:if test="#stat.index==0">
<s:if test="#stat.first">
<!—判断属性是否为null-- >
<s:if test="list[#stat.index][0].title ==null”>
<!—将属性值声明为变量-- >
<s:set name="title" value="list[#stat.index][0].title " ></s:set>
<!—判断属性值-- >
<s:if test="list[#stat.index][0].title ==4">
<s:if test="list[#stat.index][0].title ==’admin’">
<s:if test="#title ==4">
<s:if test="list[#stat.index][0].title.length()>15">
<s:property value="list[#stat.index][0].title.substring(0,15)" />...
</s:if>
14:获取select值
<s:select list="listDept" name="selectDept" listKey="val" listValue="prntext" disabled = "true" value="deptSelected" />
<s:hidden name="selectDept" value="%{deptSelected}"/>
15:循环指定int型数据
其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current
<s:bean name="org.apache.struts2.util.Counter">
<s:param name="first" value="1" />
<s:param name="last" value="pages" /><!—pages page为action中属性à
<s:iterator>
<s:if test="current-1==page">
<font color="red"><s:property /></font>
</s:if>
<s:else>
[<s:property />]
</s:else>
</s:iterator>
</s:bean>
16:输出国际化文件中的值
<s:text name=”key”>
${getText[“key”]}
17:输出Action中的消息
<s:actionmessage />
18:输出Action中的错误
<s:actionerror />
1:输出action中属性值,在jsp页面中显示用:<s:property value="属性名" />
2:在页面中实现自动增加的序号用iterator的statuts的index属性 eg:
<s:iterator value="#request.inOutAccountList" id="data" status="listStat">
<s:property value="#listStat.index+1"/>
<!—输出当前迭代元素的索引à
<s:property value="#listStat.index"/>
<!—输出当前迭代了几个元素à
<s:property value="#listStat.count"/>
<!—返回当前迭代元素的索引是否为奇数à
<s:property value="#listStat.odd"/>
<!—返回当前迭代元素的索引是否为偶数à
<s:property value="#listStat.event"/>
<!—返回当前元素是否为第一个元素à
<s:property value="#listStat.first"/>
<!—返回当前元素是否为最后一个元素à
<s:property value="#listStat.last"/>
</s:iterator>
3:在action类中取得request和session对象的方法
Map session = ActionContext.getContext().getSession();
HttpServletRequest request = ServletActionContext.getRequest ();
设置它们的值的方法:
session.put("operation", "add");
request.setAttribute("name", name); 页面中取得它们的值:
<s:property value="#session.operation"/>
<s:property value="#session[‘operation’]"/>
${sessionScope.TEST} == ${session.TEST}
<s:if test="#session.operation =='add'">
<s:if test="#session[‘operation’]=='add'">
<s:if test="#session[‘operation’]==null">
<s:property value="#request.name"/>
${requestScope.name} == ${request.name}
4:页面中奇偶行样式不一样的控制方法:
<tr class="<s:if test='#listStat.odd==true'>tableStyle-tr1</s:if><s:else>tableStyle-tr2</s:else>" >
5:单选框和复选框的使用方法
1):可以设置默认选中值,注意list的值的设置,通过这种方式使key和value不一样,这种方法比较常用(checkboxlist or radio)
<s:radio name="uncarInsPolicy.policyStateCode"
list="#{'5':'通过' , '2':'不通过'}" listKey="key" listValue="value" value='5' />
2):这里的key和value的值是一样的(checkboxlist or radio)
<s:checkboxlist list="{'Red', 'Blue', 'Green'}" name="favoriteColor"/>
6:struts2 中的标签会生成类似由<tr><td></td></tr>构成的字串(具体什么标签生成什么,可以查 看生成后的页面的源代码)如果不限制这些多余代码的生成,页面将变得无法控制,所以一般我们是不希望它生成多余的代码的,具体的设置方法如果,在 struts.xml中统一配置
<constant name="struts.ui.theme" value="simple"/>加上该句即可
也可以通过在页面中将tag的theme属性设为"simple"取消其默认的表格布局
不过最好是:自定义一个theme,并将其设为默认应用到整个站点,如此一来就可以得到统一的站点风格
7:jsp页面中格式化日期的方法 <s:date name="unCarInsModificationInfo.createTime" format="yyyy-MM-dd" nice="false"/>这样就可以将日期格式化为yyyy-MM-dd的形式
8:默认情况下,当请求action发生时,Struts运行时(Runtime)根据struts.xml里的Action映射集(Mapping),实例化action对应的类,并调用其execute方法。当然,我们可以通过以下两种方法改变这种默认调用 1)在classes/sturts.xml中新建Action,并指明其调用的方法
比如想调用action类中的
public String aliasAction() {
message ="自定义Action调用方法";
return SUCCESS;
}
则在classes/sturts.xml中加入下面代码:
<action name="AliasHelloWorld" class="tutorial.HelloWorld"method="aliasAction">
<result>/HelloWorld.jsp</result>
</action>
既可用action名调用该方法了
2)(比较常用)
访问Action时,在Action名后加上“!xxx”(xxx为方法名)。
9:Struts 2.0有两个配置文件,struts.xml和struts.properties都是放在WEB-INF/classes/下。
struts.xml用于应用程序相关的配置
struts.properties用于Struts 2.0的运行时(Runtime)的配置
10:在action类中取得web下某一文件夹物理路径(绝对路径)的方法
filePath = ServletActionContext.getServletContext().getRealPath("/upLoadFiles")
11:要想返回的页面不是一个直接JSP页面而是要先通过返回action中的方法读取相应的数据再返回到jsp页面,有两种方法
1)在struts.xml中这么设置
<result name="list" type="redirect-action">sysmanage/UserBaseInfoAction!findUserBaseInfo.action</result>
2)在action中返回时直接调用这个方法即可
return findList();
12:设置checkboxlist中默认值的方法
<s:checkboxlist name="skills1"="Skills 1" list="{ 'Java', '.Net', 'RoR', 'PHP' }" value="{ 'Java', '.Net' }" />
<s:checkboxlist name="skills2"
label="Skills 2" list="#{ 1:'Java', 2: '.Net', 3: 'RoR', 4: 'PHP' }" listKey="key" listValue="value" value="{ 1, 2, 3 }"/>
13:二级级连下拉框 <s:set name="foobar"
value="#{'Java': {'Spring', 'Hibernate', 'Struts 2'}, '.Net': {'Linq', ' ASP.NET 2.0'}, 'Database': {'Oracle', 'SQL Server', 'DB2', 'MySQL'}}" />
<s:doubleselect list="#foobar.keySet()" doubleName="technology" doubleList="#foobar[top]" label="Technology" />
14:在页面中取出list对象中的属性值 <s:if test="list!=null&&list.size()>0">
<s:iterator value="list" status=”stat”>
<!—如果list中存储形式为select id,name,title-- >
<s:property value="list[#stat.index][0]" />
<!—如果list中存储多对象如left join Role left join Group-- >
<s:property value="list[#stat.index][0].title" />
<s:property value="list[#stat.index][1].title" />
<!—如果为Map形式存储-- >
<s:iterator value="mapUsers.keySet()" id="id">
<s:property value="#id"/>
<s:iterator value="mapUsers.get(#id)">
<s:property value="nickname"/>||<s:property value="UName"/>
</s:iterator>
</s:iterator>
<!—判断是否为奇数-- >
<s:if test="stat.odd == true"></s:if>
<!—判断是否为第一条数据-- >
<s:if test="#stat.index==0">
<s:if test="#stat.first">
<!—判断属性是否为null-- >
<s:if test="list[#stat.index][0].title ==null”>
<!—将属性值声明为变量-- >
<s:set name="title" value="list[#stat.index][0].title " ></s:set>
<!—判断属性值-- >
<s:if test="list[#stat.index][0].title ==4">
<s:if test="list[#stat.index][0].title ==’admin’">
<s:if test="#title ==4">
<s:if test="list[#stat.index][0].title.length()>15">
<s:property value="list[#stat.index][0].title.substring(0,15)" />...
</s:if>
14:获取select值
<s:select list="listDept" name="selectDept" listKey="val" listValue="prntext" disabled = "true" value="deptSelected" />
<s:hidden name="selectDept" value="%{deptSelected}"/>
15:循环指定int型数据
其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current
<s:bean name="org.apache.struts2.util.Counter">
<s:param name="first" value="1" />
<s:param name="last" value="pages" /><!—pages page为action中属性à
<s:iterator>
<s:if test="current-1==page">
<font color="red"><s:property /></font>
</s:if>
<s:else>
[<s:property />]
</s:else>
</s:iterator>
</s:bean>
16:输出国际化文件中的值
<s:text name=”key”>
${getText[“key”]}
17:输出Action中的消息
<s:actionmessage />
18:输出Action中的错误
<s:actionerror />
发表评论
-
微信公众账号与网站信息对接
2013-07-10 17:37 8829最近做了一个微信 ... -
原子操作实现并发
2012-06-14 17:02 1207使用synchronized: 使用synchroni ... -
velocity配置与springMVC
2012-06-07 11:30 5259web.xml <?xml version=&quo ... -
Trie 树 及Java实现
2012-02-01 11:39 1702举个简单的例子。 给你100000个长度不超过10的单词 ... -
activiti使用
2011-07-25 15:25 2461使用activiti报错 Caused by: java.l ... -
Struts2请求乱码问题
2011-05-06 16:25 1072ie6中的bug 在jsp请求Action ... -
软件开发流程图
2011-03-25 11:36 1205自己对软件开发流程理解 -
使用AOP实现异常处理
2011-03-16 15:08 5473@Aspect public class Service ... -
使用Freemarker和Struts2做动态表单
2011-03-01 09:49 4870由于项目中需要用到一个可定制的动态表单功能,管理员可以根 ... -
JSPWiki使用说明书
2010-08-31 16:26 7704在使 ... -
jsp 下载出现乱码和空格问题
2010-08-31 13:21 2184关于中文文件下载的问 ... -
代理服务器的缓存问题
2010-06-24 17:00 1200如果要使用代理服务器时,会出现页面信息串。 处理方法(写一个过 ... -
浅谈Eclipse调用Tomcat服务的原理
2010-06-11 14:23 3321转:http://www.173it.cn/Html/?5 ... -
w3c 中doc生成一个基于hibernate的hbm.xml文件
2010-06-03 13:01 1413package com.gosophia.metadata ... -
如何让eclipse辅助提示struts.xml文件的编写
2010-05-21 19:06 2192一般情况下,如果计算机连接上了internet,eclipse ... -
Eclipse 常用设置
2010-05-21 13:40 891转: http://www.blogjava.net/Todd ... -
Java程序执行原理
2010-05-02 17:10 1004<o:p> </o:p>首先 ... -
什么是线程安全
2010-04-30 16:14 926如果你的代码所在 ... -
Servlet的线程安全问题
2010-04-30 15:46 726转:http://zjeers.iteye.com/blog/ ... -
JSR(转)
2010-04-26 13:35 1465J2ME 配置规范 ========= JSR 30 --- ...
相关推荐
下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来控制页面的执行过程,并从 Action 或值堆栈中取得数据。这些标签可以分为控制标签、数据标签和其他标签。 控制标签用来控制程序的执行,...
通过熟练掌握Struts2标签的使用,开发者可以更高效地构建动态网页,同时享受到Struts2框架带来的便利和灵活性。提供的“Struts2标签详解.doc”文档将对这些概念进行详细的解释,是深入学习和理解Struts2标签的重要...
在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...
通过使用Struts2标签库,开发者可以避免过多的手动Java代码,提高开发效率,同时使得JSP页面更加整洁,易于维护。 了解并熟练掌握Struts2标签库,不仅有助于提升开发速度,还有利于项目的长期维护。在深入学习时,...
本示例将深入探讨Struts2的表单标签使用方法,帮助开发者更好地理解和应用这些标签。 首先,我们来了解一些基本概念。在Struts2中,表单标签通常与Action类中的属性相对应,用于在JSP页面上创建HTML表单元素。例如...
除了这些基本标签,Struts2还提供了处理表单验证、国际化、循环、条件判断等复杂功能的标签。例如,`<s:if>`和`<s:else>`用于条件渲染,`<s:iterator>`用于遍历集合,`<s:property>`用于显示对象属性的值。 在...
在实际开发中,Struts2标签可以与OGNL(Object-Graph Navigation Language)表达式一起使用,实现动态数据绑定和复杂的逻辑判断。例如,`s:if`标签可以这样使用: ```jsp 欢迎管理员! 欢迎普通用户! ``` ...
在实际使用中,结合OGNL表达式语言,Struts2标签可以非常灵活地处理各种复杂情况。例如,我们可以利用OGNL动态地计算条件、访问对象属性等。总的来说,掌握Struts2的标签库对于提高Struts2应用的开发质量和效率至关...
总之,"Struts1.2基本标签使用视频"是一份对初学者和有一定经验的开发者都非常有帮助的学习资源。它将帮助你更好地理解和掌握Struts1.2框架中的核心标签,提高你在Java Web开发中的技能。通过深入学习和实践,你将...
本篇文章将深入探讨Struts2标签的使用,包括其基本概念、主要类别、使用方法以及实际应用。 一、Struts2标签的基本概念 Struts2标签是基于JSP标准标签库(JSTL)的扩展,它们封装了常见的Java代码和Struts2框架的...
总的来说,这个教程应该会涵盖Struts2的基本概念、配置方式、标签的使用技巧,以及EXT3.0在前端展示中的应用,旨在帮助开发者快速掌握Struts2框架,并能有效利用其特性构建高效的企业级应用。通过学习和实践,你可以...
在使用Struts2标签API时,需要注意以下几点: - 标签的命名空间:通常以`s:`开头,表示它是Struts2提供的标签。 - 动态属性:很多标签都支持动态属性,允许我们根据Action类的状态动态设置属性值。 - 表单标签的...
在本文中,我们将深入探讨Struts2标签的用法,包括它们的基本概念、类型以及如何在实际开发中应用。 一、Struts2标签基础 Struts2标签库是基于JavaServer Pages (JSP) 标准标签库(JSTL)的扩展,它包含了一系列与...
Struts2是一款强大的Java Web应用程序框架,用于构建和维护MVC(Model-View-Controller)架构的Web应用。...下载并使用这个基本包,开发者能够搭建起一个基本的Struts2环境,进而进行Web应用的开发。
Bean Tags 是 Struts 中最基本的标签库,包含的标签可以用来创建 bean、访问 bean 和访问 bean 的属性。同时提供了依据 cookies、headers 和 parameters 的值创建相关 bean 的能力。 * bean:cookie:取回请求中名称...
在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于遍历集合或数组中的元素,尤其在处理列表数据时极为有用。通过本文档提供的代码示例,我们将深入探讨`<s:iterator>`标签的使用方法及其与不同数据...
这篇博客将深入探讨Struts2中的表单标签及其使用方法。 首先,我们需要理解Struts2表单标签的基本结构。通常,一个表单标签以`<s:form>`开头,并以`</s:form>`结束。它允许我们指定表单的属性,如`action`(表单...
### Struts EC标签的使用详解 #### 一、概述 Struts框架是Java Web开发中的一个强大工具,它提供了一套完整的MVC(Model-View-Controller)模式实现方案,帮助开发者构建出结构清晰、易于维护的应用程序。而EC标签...
在探讨Struts2.0标签库的使用时,我们首先需要了解Struts2.0框架的基本概念及其在MVC架构中的角色。Struts2.0是基于Java的一个开源Web应用框架,它继承了Struts1.x的优点并在此基础上进行了大量的改进和增强。Struts...
### Struts2常用标签详解(实用版) #### 引言 在Java Web开发领域中,Struts2框架因其丰富的功能及灵活的配置而备受开发者们的青睐。为了更好地掌握Struts2框架并提升开发效率,本文将详细介绍Struts2中常用的...