Struts中的<bean:write name="neeke" scope="request" />标签相当于<%=request.getAttribute("neeke") %>,当然这里也不一定是request,也可能是session等,其中neeke是属性的名字。
首先我们来看一看action中的代码。
- package cn.ineeke.struts;
-
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
-
- import org.apache.struts.action.Action;
- import org.apache.struts.action.ActionForm;
- import org.apache.struts.action.ActionForward;
- import org.apache.struts.action.ActionMapping;
-
- public class BeanWriteAction extends Action {
-
- @Override
- public ActionForward execute(ActionMapping mapping, ActionForm form,
- HttpServletRequest request, HttpServletResponse response)
- throws Exception {
- request.setAttribute("myblog", "<a href='http://www.ineeke.cn'>http://www.ineeke.cn</a>");
- return mapping.findForward("success");
- }
-
- }
上面这段代码的作用很简单,就是向request中存值,接着跳转到成功页面。再来看看成功页的代码是什么样的。
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>Struts标签BeanWrite学习</title>
- </head>
- <body>
- <bean:write name="myblog" scope="request"/>
- </body>
- </html>
在上面的代码中,我们使用<bean:write>标签从request中将myblog取出,并显示在网页上。
此时是按照文本格式直接输出的,而我们存放的时候是带HTML代码的,如果我们想让它以超级链接的形式显示在网页中呢?
其实这很简单,此标签有一个filter属性,其意在于是否以文本格式输出,默认情况下其值为true,所以我们只需将其改为如下所示即可。
<bean:write name="myblog" scope="request" filter="false"/>
http://www.ineeke.cn/archives/StrutsBeanWriteFilter/
首先要想使用struts的标签库,则必须在jsp中指定所使用的标签库地uri,即标签库的标准。引入方法如下:
<%@ taglib prefix="bean" http://struts.apache.org/tags-bean">http://struts.apache.org/tags-bean"%>
接下来就可使用该标签库中的标签了,前缀是bean。我们这篇文章主要介绍write标签,bean:write相当于<%=request.getAttribute("something")%> 其中something是属性的名字。下面bean:write的详细介绍如下:
bean:write常用的属性有如下几个:
1。name,用来指定属性的名字
2。filter,用来指定是否屏蔽到属性值的HTML格式
3。property,用来指定name所代表的对象的属性名字
4。format,用来指定显示的时间,数字,日期等的格式
例子一:
某处设置了request.setAttribute("hello","hello world");
则在某个jsp页面中,用struts的write标签取出并显示的方式如下:
<bean:write name="hello"/>,则页面上显示出hello world。
例子二:
某处设置了request.setAttribute("bj","<font color='red>欢迎你</font>");
则在某个jsp页面中,用struts的write标签取出并按红色的方式显示的方式如下:
<bean:write name="bj" filter="false"/>,则页面上显示出红色的欢迎你。如果filter属性默认为true,如果不设置为false的话,则那么显示出的内容就为 <font color='red>欢迎你</font> 。
例子三:
某处设置了request.setAttribute("date",new Date());
则在某个jsp页面中,用struts的write标签取出并按指定方式显示日期的方法如下:
<bean:write name=“date”/>,此为默认的显示方法,显示出的时间为:Fri Mar 28 15:04:21 CST 2008
<bean:write name=“date” format="yyyy-MM-dd HH:mm:ss"/>,此为自己指定日期的显示格式,显示出的时间为2008-3-28 15:04:21
例子四:
某处设置了request.setAttribute("n",“1223333.333”);
则在某个jsp页面中,用struts的write标签取出并按指定方式显示数字的方法如下:
<bean:write name=“n”/>,此为默认的显示方法,显示出的数字位1223333.333
<bean:write name=“n” format="###,###.####"/>,此为自己指定数字的显示格式,显示出的时间为1,223,333.333
如果希望小数点后的不足四位时,缺位补0,则应
<bean:write name=“n” format="###,###.0000"/>,此为自己指定数字的显示格式,显示出的时间为1,223,333.3330
例子五:
假如有User类和Groupe类,User类有属性名字userName,年龄age,性别sex和所属的Groupe,Groupe类有属性组名groupeName,并均具有相应的get和set方法。
某处设置了request.setAttribute("user",new User("张三","20","男",new Groupe("三组")));
则在某个jsp页面中,用struts的write标签取出并按指定方式显示结构体的方法如下:
用户名:<input type="text" value="<bean:write name=“user” property="userName"/>">
年龄:<input type="text" value="<bean:write name=“user” property="age"/>">
性别:<input type="text" value="<bean:write name=“user” property="sex"/>">
组名:<input type="text" value="<bean:write name=“user” property="groupe.groupeName"/>">
(三)
下面的代码片段示例了bean:write标签输出User-Agent:
<logic:present header="User-Agent"> <bean:header id="header" name="User-Agent"/> <bean:write name="header"/> </logic:present>
下面的代码片段示例了bean:write标签格式化输出当前日期,其中now是在DataForm中定义的一个java.util.Date类型的域(值为new Date()),format.date.standard是在资源文件中的一个键(format.date.standard=yyyy-MM-dd):
<bean:define id="date" name="dataForm" property="now"/> <br/><bean:write name="date"/> <br/><bean:write name="date" format="MM/dd/yyyy"/> <br/><bean:write name="date" formatKey="format.date.standard"/>
上面代码运行的结果为:
Sun Jun 04 17:04:05 CST 2006 06/04/2006 2006-06-04
分享到:
相关推荐
在Struts框架中,`struts-bean`标签库是用于处理与JavaBean相关的操作的,它包含了一系列的标签来简化视图层(通常为JSP)与模型数据的交互。`<bean:message>`标签是其中的一个重要组成部分,它用于在页面上显示国际...
下面将详细介绍Struts Bean标签的一些主要特性、使用方法及其在实际开发中的应用。 1. **Bean标签库介绍** Struts Bean标签库是Apache Struts框架提供的一个JSP自定义标签集合,它基于JSP标准标签库JSTL,并且扩展...
在Struts框架中,`struts.bean`标签库提供了一组JSP标签,这些标签简化了在视图层操作JavaBeans的过程,增强了代码的可读性和可维护性。下面我们将深入探讨`struts.bean`标签库及其主要使用的标签。 1. `bean:...
如果想直接在JSP页面上输出,也可以使用`<bean:write>`标签,例如: ```jsp <bean:define id="str" value="蚂蚁奋斗,让平凡的生命创造出不平凡的价值"/> 用EL表达式打印出来 ${str} 用bean:write标签 <h2>...
### Struts 1 Bean 标签库详解 #### 概述 在Struts框架中,Bean标签库(Bean Tag Library)扮演着一个重要的角色。它主要用于处理与JavaBean相关的操作,比如创建、读取和更新JavaBean实例及其属性。根据官方文档及...
6. Struts标签库:提供了一系列与UI相关的标签,如`<html:form>`, `<bean:write>`, `<logic:iterate>`等,简化视图层的开发。 **JSP和Struts结合应用:** 1. 使用Struts的控制器ActionServlet处理请求,通过...
bean标签库是Struts提供的JSP标准标签库(JSTL)的一部分,主要用于管理JavaBean对象。JavaBean是一种符合JavaBeans规范的Java类,它通常用来封装业务逻辑或数据。bean标签可以帮助我们在JSP页面中创建、读取、更新...
7. **JSP标签库**:Struts1提供了丰富的JSP标签,如`<html:form>`、`<bean:write>`等,简化了视图层的开发。 8. **Interceptor**:拦截器是Struts1中的一个扩展点,可以在Action执行前后插入自定义逻辑。 9. **...
Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据展示、逻辑控制等。在本文中,我们将深入探讨其中的Bean Tags、HTML Tags和Logic Tags。 1. **Bean ...
Bean Tags 是 Struts 中最基本的标签库,包含的标签可以用来创建 bean、访问 bean 和访问 bean 的属性。同时提供了依据 cookies、headers 和 parameters 的值创建相关 bean 的能力。 * bean:cookie:取回请求中名称...
例如,`<bean:cookie id="myCookie" name="tags/cookiedemo" value="ddddddddd">`,然后使用`<bean:write>`标签输出其`name`和`value`属性。 - `<bean:header>`:通过`id`和`name`属性获取HTTP请求头信息,如`<bean...
Struts标签库是Java开发中基于Struts框架的一个重要组件,它为开发者提供了一系列便捷的JSP标签,简化了Web应用的开发工作。本章主要介绍了五个主要的Struts标签库,分别是HTML标签库、Bean标签库、Logic标签库、...
Struts框架是Java Web开发中的一个关键组件,它提供了一种结构化的方式来组织应用程序,并简化了用户...通过使用Struts的HTML标签库,开发者可以创建更整洁、更易于维护的JSP页面,同时保持与Struts框架的紧密集成。
Struts Bean标签的使用极大地方便了JavaBean的管理和操作,尤其是在JSP页面中,它们减少了对脚本代码的依赖,使页面更简洁、更易于维护。通过合理运用这些标签,开发者可以构建出更加高效、稳定的Web应用程序。此外...
在当前提供的文件片段...总之,这份文件内容详尽地介绍了Struts标签库的使用方法和示例,是学习Struts框架中标签使用的重要参考资料。通过掌握这些标签,开发者可以更高效地构建Web应用程序的用户界面和处理用户请求。
- `bean`标签:用于在JSP页面中访问JavaBeans,如`<bean:write>`用于输出Bean属性值,`<bean:define>`用于定义变量。 - `logic`标签:提供逻辑控制,如`<logic:notEmpty>`检查集合是否为空,`<logic:iterate>`用于...
在使用Struts1的标签时,开发者还需要配置struts-config.xml文件,这个配置文件定义了ActionForm、Action、Forward等元素,它们与标签库紧密关联,确保标签能够正确地与应用程序的其他部分交互。例如,`<html:link>`...
此外,`<bean:write>`标签还允许通过`property`属性传递参数,如`<bean:write name="someBean" property="value(name)"/>`,这相当于调用JavaBean的`getValue("name")`方法。 - `<bean:message>`:此标签用于显示...