标签的配置
步骤1:在struts-config.xml中添加message-resources标签
<message-resources parameter="" />
步骤2:在src下添加文件MessageResources.properties
步骤3:将MessageResource.properties文件在struts-config.xml中注册
<message-resources parameter="MessageResources" />
标签的使用
标签只是在jsp页面中使用的,所以依然按照struts的开发步骤进行开发,只是在所跳转到的页面上使用标签取出设置到scope范围中的属性值。
1,在jsp页面上引入标签
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %>
prefix:是标签的前缀,可以为任意值
uri:是指标签的引用地址,在struts.jar-->META-INF-->tlds包下,tlds包下都是标签的版本,找到struts-bean.tld版本文件,打开找到其中的uri就是taglib中uri属性的值。prefix采用struts-bean.tld中shortname的值。标签是在服务器中执行。
BeanWriteAction中的代码:
public class BeanWriteAction extends Action {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
request.setAttribute("hello", "hello word");
request.setAttribute("hy", "<font color='red'>欢迎</font>");
request.setAttribute("today", new Date());
request.setAttribute("n", 9632548);
//将用户设置到组中
Group group=new Group();
group.setName("计算机");
User user=new User();
user.setName("jin");
user.setGroup(group);
request.setAttribute("user", user);
return mapping.findForward("success");
}
}
jsp页面中调用标签代码:
<body>
<h1>测试BeanWrite</h1><br/>
<h2>通过request取得字符串</h2>
<%= request.getAttribute("hello") %><br/><br/>
<h2>通过beanwrite标签取得值</h2>
<!--
name属性会到我们设置的scope中取出属性的值
filter能输出html默认情况为true表示html按原样输出
值为false表示能按html输出
format属性能将scope中的值按照设置的格式输出
property属性值表示的是对象的属性
-->
<bean:write name="hello"/>
<bean:write name="hy" filter="false" />
<bean:write name="today" filter="false" format="yyyy-MM-dd HH:mm:ss"/>
<bean:write name="n" filter="false" format="###,###,###"/>
//通过标签获得对象
姓名:<input type="text" value="<bean:write name="user" property="name"/>"/>
年龄:<input type="text" value="<bean:write name="user" property="age"/>"/>
所属组:<input type="text" value="<bean:write name="user" property="group.name"/>"/>
</body>