Struts中的<bean:write name="neeke" scope="request" />标签相当于<%=request.getAttribute("neeke") %>,当然这里也不一定是request,也可能是session等,其中neeke是属性的名字。 首先我们来看一看action中的代码。
上面这段代码的作用很简单,就是向request中存值,接着跳转到成功页面。再来看看成功页的代码是什么样的。
在上面的代码中,我们使用<bean:write>标签从request中将myblog取出,并显示在网页上。 http://www./archives/StrutsBeanWriteFilter/ 首先要想使用struts的标签库,则必须在jsp中指定所使用的标签库地uri,即标签库的标准。引入方法如下:
<%@ taglib prefix="bean" http://struts./tags-bean">http://struts./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 bean:write标签将指定的bean的属性值写到当前的JspWriter中,并且可以对输出进行格式化。 |
|