bean:write

bean:write相当于<%=request.getAttribute("something")%> 
例子一: 

某处设置了request.setAttribute("hello","hello world"); 

则在某个jsp页面中,用struts的write标签取出并显示的方式如下: 

<bean:write name="hello"/>,则页面上显示出hello world。 


bean:write常用的属性有如下几个: 

1。name,用来指定属性的名字 

2。filter,用来指定是否屏蔽到属性值的HTML格式 

3。property,用来指定name所代表的对象的属性名字 

4。format,用来指定显示的时间,数字,日期等的格式 

例子二: 

某处设置了request.setAttribute("bj","<font color='red>欢迎你</font>"); 

则在某个jsp页面中,用struts的write标签取出并按红色的方式显示的方式如下: 

<bean:write name="bj" filter="false"/>,则页面上显示出红色的欢迎你。如果filter属性不设置为false,则默认为true,那么显示出的内容就为<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"/>"> 

-----------------

package com.yulin.struts;

import java.util.Date;

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 TiglibAction extends Action {

@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//输出普通字符串
request.setAttribute("string", "输出普通string");
//输出html文件
request.setAttribute("html", "<font color='red'>输出html文件</font>");
//输出date
request.setAttribute("date", new Date());
//输出number
request.setAttribute("number", 12345.67);
//输出User
Group g = new Group();
g.setName("China");
User u = new User();
u.setUsername("LinZhang");
u.setAge(23);
u.setGroup(g);
request.setAttribute("user", u);

return mapping.findForward("success");
}

}

User类代码:

package com.yulin.struts;

public class User {
private String username;
private int age;
private Group group;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Group getGroup() {
return group;
}
public void setGroup(Group group) {
this.group = group;
}
}

----

package com.yulin.struts;

public class Group {
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}

--

<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>测试Beanwrite标签</title>
</head>
<body>
<li>测试Beanwrite标签</li>
<hr>
普通string输出:<br>
string(jsp):<%=request.getAttribute("string") %><br>
string(taglib):<bean:write name="string"/>
<hr>
输出html文件:<br>
html(default):<bean:write name="html"/><br>
html(filter="true"):<bean:write name="html" filter="true"/><br>
html(filter="false"):<bean:write name="html" filter="false"/><br>
<hr>
输出date:<br>
date(default):<bean:write name="date"/><br>
date(format="yy-MM-dd HH:mm:ss"):<bean:write name="date" format="yy-MM-dd HH:mm:ss"/><br>
<hr>
输出number:<br>
number(default):<bean:write name="number"/><br>
number(format="###,###.###"):<bean:write name="number" format="###,###.###"/><br>
number(format="###,###.000"):<bean:write name="number" format="###,###.000"/><br>
<hr>
输出User:<br>
Name:<input type="text" value=" <bean:write name="user" property="username"/> " ><br>
Age:<input type="text" value=" <bean:write name="user" property="age"/> "><br>
Group:<input type="text" value=" <bean:write name="user" property="group.name"/> "><br>
</body>
</html>

------------------------

首先要想使用struts的标签库,则必须在jsp中指定所使用的标签库地uri,即标签库的标准。引入方法如下:
   <%@ taglib prefix="bean" uri="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属性不设置为false,则默认为true,那么显示出的内容就为<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"/>">

原文地址:https://www.cnblogs.com/qq3245792286/p/6270536.html