1)使用标签库所需要的配置:
添加国际化的配置:首先复制 <message-resources parameter="MessageResources" />至struts-config.xml。接着复制MessageResources.properties这个文件至src目录下。
2)部署好项目
3)在jsp页面使用struts中bean标签。
首先使用struts标签需要引入struts标签库。引入时如下; <%@ taglib prefix="" uri=""%>,其中prefix和uri可以在struts.jar-->META-INF-->tlds-->struts-bean.tld中找到。如下;<shortname>bean</shortname>对应prefix
<uri>http://struts.apache.org/tags-bean</uri>对应uri,引入之后如下: <%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>
引入Bean标签库之后就可以使用Bean标签了。在Bean标签库中主要是bean:write标签。bean:write标签常用属性如下:
name属性:name=“变量的名字”,根据scop中相应变量的名字取出变量的值。例如:<bean:write name="Hello"/>,标签是在服务器端执行的。
filter属性:filter="true"默认为true。表示遇到html内容,原样输出,即不解析。设为false,则会解析html标签,只输出内容。
format属性:格式化日期,不使用这个属性,则会原样输出。例如:format="yyyy-MM-dd HH:mm:ss".format也用于格式化数字,用法如下:format="###,###.###"表示每隔三位一个逗号。小数点后保留三位,#也可以用0代替
property属性:用于取出一个对象里的某一个属性,property的值为要取的对象的属性的名字。支持导航。
4)在jsp页面使用struts中logic标签。
同样,要使用logic标签,需要引入logic标签库。方法通上。引入之后就可以使用了。
logic:empty和logic:notEmpty标签的主要属性有:
name属性:name的值等于要判断的值或者对象的名字,会在scop范围内寻找。结果为空或者不空,不存在也安为空处理。相当于if
logic:present和logic:notPresent标签的主要属性有:
name属性:name的值等于要判断的值或者对象的名字,会在scop范围内寻找。结果为存在或者不存在。
logic:iterate标签的主要属性:(iterate标签和上面的empry在一起使用)
name属性:指的就是scop中的变量名字
id属性:id用于设定临时变量,id=”临时变量名“,迭代时先把值放在这个变量里。
property属性:用于取出一个对象里的某一个属性,property的值为要取的对象的属性的名字。支持导航。
在iterate标签里输出使用Beanwrite标签
用法举例:
<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>