`
summer_021
  • 浏览: 57990 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts1_学习笔记3_struts0300_taglib_bean_logic_Iterate标签

 
阅读更多
bean标签:

Action:
public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		// 普通属性
		request.setAttribute("hello", "Hello World");
		// html文本
		request.setAttribute("hz", "<font color='red'>杭州欢迎您</font>");
		// 日期
		request.setAttribute("today", new Date());
		// 数字
		request.setAttribute("n", 123456.987);
		// 结构
		Group group = new Group();
		group.setName("和盈");
		User user = new User();
		user.setUsername("张三");
		user.setAge(18);
		user.setGroup(group);
		request.setAttribute("user", user);

		return mapping.findForward("success");
	}



页面显示:

<h1>测试BeanWrite</h1>
	<hr>
	<li>普通字符串</li><br>
	hello(jsp脚本):<%=request.getAttribute("hello") %><br>
	hello(标签):<bean:write name="hello"/><br>
	<p>
	<li>html文本</li><br>
	hz(default):<bean:write name="hz"/><br>
	hz(filter="true"):<bean:write name="hz" filter="true"/><br>
	hz(filter="false"):<bean:write name="hz" filter="false"/><br>
	<p>
	<li>格式化日期</li><br>
	today(default):<bean:write name="today"/><br>
	today(format="yyyy-MM-dd HH:mm:ss"):<bean:write name="today" format="yyyy-MM-dd HH:mm:ss"/>
	<p>
	<li>格式化数字</li><br>
	n(default):<bean:write name="n"/><br>
	n(format="###,###.####"):<bean:write name="n" format="###,###.####"/><br>
	n(format="###,###.####"):<bean:write name="n" format="###,###.0000"/><br>
	<p>
	<li>结构</li><br>
	姓名:<input type="text" value="<bean:write name="user" property="username"/>"><br>
	年龄:<input type="text" value="<bean:write name="user" property="age"/>"><br>
	所属组:<input type="text" value="<bean:write name="user" property="group.name"/>"><br>
	</body>


配置文件:
<action-mappings>
		<action path="/beanwrite" type="com.aowin.struts.BeanWriteTestAction">
			<forward name="success" path="/beanwrite.jsp" />
		</action>

		<action path="/emptypresent" type="com.aowin.struts.EmptyPresentTestAction">
			<forward name="success" path="/emptypresent.jsp" />
		</action>

		<action path="/iterate" type="com.aowin.struts.IterateTestAction">
			<forward name="success" path="/iterate.jsp" />
		</action>
	</action-mappings>

	<message-resources parameter="MessageResources" />


使用struts1 bean:write标签必须提供一份国际化文件: MessageResources
否则会报:
Cannot find message resources under key org.apache.struts.action.MESSAGE
在src下面提供一份文件即可 内容为空也可以


使用bean标签需要在页面中加入:
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>   




logic标签:
Action:
@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		request.setAttribute("attr1", null);
		request.setAttribute("attr2", "");
		request.setAttribute("attr3", new ArrayList());
		return mapping.findForward("success");
	}


页面使用标签:
<h1>测试empty,notEmpty,present,notPresent</h1>
	<hr>
	<logic:empty name="attr1">
		attr1为空<br>
	</logic:empty>
	<logic:notEmpty name="attr1">
		attr1不为空<br>
	</logic:notEmpty>
	<logic:present name="attr1">
		attr1存在<br>
	</logic:present>
	<logic:notPresent name="attr1">
		attr1不存在<br>
	</logic:notPresent>
	
	<p>
	<logic:empty name="attr2">
		attr2为空<br>
	</logic:empty>
	<logic:notEmpty name="attr2">
		attr2不为空<br>
	</logic:notEmpty>
	<logic:present name="attr2">
		attr2存在<br>
	</logic:present>
	<logic:notPresent name="attr2">
		attr2不存在<br>
	</logic:notPresent>
	
	<p>
	<logic:empty name="attr3">
		attr3为空<br>
	</logic:empty>
	<logic:notEmpty name="attr3">
		attr3不为空<br>
	</logic:notEmpty>
	<logic:present name="attr3">
		attr3存在<br>
	</logic:present>
	<logic:notPresent name="attr3">
		attr3不存在<br>
	</logic:notPresent>



Iterate标签:

public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		Group group = new Group();
		group.setName("和盈");
		
		List userList = new ArrayList();
		for (int i=0; i<10; i++) {
			User user = new User();
			user.setUsername("user_" + i);
			user.setAge(18+i);
			user.setGroup(group);
			userList.add(user);
		}
		
		request.setAttribute("userlist", userList);
		
		return mapping.findForward("success");
	}



页面显示:
<h1>测试Iterate</h1>
	<hr>
	<li>jsp脚本</li><br>
	<table border="1">  
		<tr>
			<td>姓名</td>
			<td>年龄</td>
			<td>所属组</td>
		</tr>
		<%
			List userList = (List)request.getAttribute("userlist");
			if (userList == null || userList.size() == 0) {
		%>
			<tr>
				<td colspan="3">没有符合条件的数据!</td>
			</tr>
		<%
			}else {
				for (Iterator iter=userList.iterator(); iter.hasNext(); ) {
					User user = (User)iter.next();
		%>
			<tr>
				<td><%=user.getUsername() %></td>
				<td><%=user.getAge() %></td>
				<td><%=user.getGroup().getName() %></td>
			</tr>
		<%
				}
			}
		%>
	</table>
	
	<p>
	<li>标签</li><br>
	<table border="1">
		<tr>
			<td>姓名</td>
			<td>年龄</td>
			<td>所属组</td>
		</tr>
		<logic:empty name="userlist">
			<tr>
				<td colspan="3">没有符合条件的数据!</td>
			</tr>
		</logic:empty>
		<logic:notEmpty name="userlist">
			<logic:iterate id="u" name="userlist">
				<tr>
					<td>
						<bean:write name="u" property="username"/>
					</td>
					<td>
						<bean:write name="u" property="age"/>
					</td>
					<td>
						<bean:write name="u" property="group.name"/>
					</td>
				</tr>
			</logic:iterate>
		</logic:notEmpty>
	</table>	


使用Iterate标签加上:
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>    
<%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic"%>  
分享到:
评论

相关推荐

    Struts 2.1.8_学习源码

    Struts2_03Taglib : Struts2常用标签的使用方法 Struts2默认支持OGNL、JSTL、Groovy和Velcity表达式 Struts2_04ActionResultType : Struts2关于Action跳转类型的应用 对各种不同的跳转类型使用的实例 Struts2_05...

    Struts2_标签

    Struts2框架是目前流行的Java Web应用框架,它是Apache Struts的更新版本,提供了丰富的Web应用开发组件,其中Struts2标签库是其核心特性之一。标签库是一种组件技术,使得开发者能够通过简单的标签即可完成复杂的...

    解决MyEclipse下开发Struts异常:org.apache.struts.taglib.bean.CookieTei.doc 下载

    我们将深入探讨如何解决在MyEclipse环境下开发Struts应用时遇到的一个常见问题:“org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib.bean....

    jakarta-struts-1.2.4-src.zip_jakarta struts 1_jakarta struts-1.1

    - `org.apache.struts.taglib`:自定义JSP标签库的实现。 - `org.apache.struts.util`:工具类,提供一些通用的辅助功能。 **四、实际应用** 使用Struts 1.2.4开发Web应用的步骤通常包括以下几个阶段: 1. **配置...

    Struts1.3 备忘笔记

    03 Struts_03Taglib : 演示Struct的标签库,html、bean、logic标签的用法 04 Struts_04DispatchAction : 分发Action,根据设置的参数值提交到不同的方法进行处理业务,演示数学运算 05 Struts_05DynaActionForm : 相...

    Struts2_Tablib.jar 能用的标签库

    `struts-taglib-1.3.8.jar` 是Struts2的基础标签库,这个版本为1.3.8,它提供了许多常用的标签,如`s:property`,`s:form`,`s:action`等,这些标签帮助开发者在JSP页面上构建动态内容,无需直接编写Java代码,提高...

    logic:iterate 是什么,怎么用

    `logic:iterate` 是 Struts 标签库中的一个重要组成部分,主要用于在 JSP 页面中循环遍历集合对象(如 List、Array 或 Map 等)。它能够有效地帮助开发者在前端展示动态数据,尤其适用于需要在页面上显示列表或集合...

    struts2_标签使用方法.doc

    在Struts2中,不再像Struts1.x那样将标签库分为html、bean、logic和tiles等类别,而是统一使用一个`&lt;s&gt;`前缀的标签库,只需在JSP页面头部引入`&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;`即可使用所有标签。...

    struts2_标签库

    Struts2是一个流行的Java web开发框架,其核心特性之一就是丰富的标签库,这些标签极大地简化了视图层的开发工作。在本教程中,我们将深入理解Struts2的标签库,包括它们的分类、使用方法以及与OGNL(Object-Graph ...

    Java实训教程 Java软件开发实战 Java开发框架介绍 struts2_5_标签 共113页.pptx

    相较于Struts1,Struts2提供了更为强大的功能和更加灵活的设计模式,支持多种表现层技术,并且集成了强大的表达式语言——OGNL(Object-Graph Navigation Language),使得开发者能够更高效地进行Web应用开发。...

    struts1标签及实例

    - `struts_taglib`:这个目录可能包含了Struts1的标签库JAR文件,它是使用Struts1标签所必需的库。 了解并熟练掌握Struts1的标签库是提升Java Web开发效率的关键,通过合理的使用,能够有效地降低代码复杂度,提高...

    taglib(struts1.3)源码

    1. 逻辑控制标签:这些标签用于在JSP页面中实现条件判断和循环控制,例如`&lt;logic:equal&gt;`、`&lt;logic:notEqual&gt;`、`&lt;logic:iterate&gt;`等。它们通过解析XML配置文件,将Java代码的逻辑转换为易于理解的HTML标记,降低了...

    struts2.0 taglib 标签库

    Struts2.0 Taglib标签库是Struts2框架中的核心组成部分,它提供了一组丰富的JSP标签,简化了视图层的开发,使得开发者可以更加专注于业务逻辑,而不用过多地处理HTML和Java代码的混杂。这些标签主要分为以下几大类:...

    Struts_01源代码

    3. **04_struts_taglib**: 这个部分可能是关于Struts自定义标签库的学习。Struts提供了丰富的标签库,如html、bean、logic和nested等,它们简化了视图层的开发,使得开发者可以更专注于业务逻辑而不是页面细节。 4....

    taglib(struts2标签).doc

    除此之外,Struts2 还提供了其他通用标签,如 Bean 标签用于操作 JavaBean 对象,URLs 标签用于生成 URL,Action 标签用于调用 Action 方法等。每个标签都有其特定的用途和参数,它们共同构成了 Struts2 标签库的...

    Struts中logic标签的使用

    &lt;%@ taglib prefix="logic" uri="/tags/struts/logic" %&gt; ``` 这里的`prefix="logic"`定义了标签前缀,`uri="/tags/struts/logic"`指定了标签库的URI。 二、主要的logic标签 1. **logic:equal**:用于比较两个值...

    struts标签库使用大典

    开发者可以通过这个版本的文档和API来学习和使用Struts标签库。 6. **优势与注意事项** 使用Struts标签库能提高开发效率,减少JSP页面中的脚本代码,使页面更易于维护。然而,需要注意的是,随着Struts框架的发展...

    J2EE考试复习试题_struts2_spring_hibernate.doc

    - **标签库使用**:要在JSP页面中使用Struts2提供的标签库,需要使用`&lt;%@ taglib uri="/struts-tags" prefix="s" %&gt; `指令进行导入。 - **表单标签**:Struts2提供了一套表单标签,例如`s:form`用于创建表单。 - **...

    J2EE考试复习试题_struts2_spring_hibernate(答案整合完毕

    为了在JSP页面中运用Struts2的标签库,必须通过taglib指令导入,例如: ```html &lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; ``` 此指令将Struts2标签库添加到当前页面,使得开发者可以方便地使用诸如等表单标签...

Global site tag (gtag.js) - Google Analytics