一, date标签
<s:date format="日期格式" nice="true|false" name="日期对象" id="引用id"/>
name 该属性为必须属性,指定用于操作的目标日期
format 如果指定了该属性,且nice属性为false,则按照指定的格式化输出name中的指定日期
nice 如果此属性为true,则format属性无效,直接输出指定日期与当前时间的时差,如果为false表示格式化输出指定日期,具体的 格式化有foramt属性指定,默认为false
当format与nice都没有指定时,date标签会自定提取国际化消息文件中的key为消息内容
实例如下
1. struts.xml配置
<action name="date" class="com.xiu.tld.test.DateAction"
method="date">
<result name="success">/date.jsp</result>
</action>
2. 国际化文件的配置,只配置一项
struts.date.format=yyyy-MM-dd hh\:mm\:ss
3. DateAction类
package com.xiu.tld.test;
import java.util.Date;
import com.opensymphony.xwork2.ActionSupport;
public class DateAction extends ActionSupport {
private Date date;
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public String date() {
date = new Date();
return "success";
}
}
4,date.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!-- struts2的标签 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>date标签页面</title>
</head>
<body>
<br>
<br>
date标签测试
<br>
<h1>
用法一,date
</h1>
<s:date format="yyyy年MM月dd日 hh时mm分ss秒" name="date"/>
<br>
<br>
<hr>
<br>
<h1>
用法二,date
</h1>
<s:date nice="true" name="date"/>
<br>
<br>
<hr>
<h1>
用法三,date
</h1>
<s:date name="date"/>
<br>
<br>
<hr>
</body>
</html>
二 , set标签
set标签可以将value属性指定的值放到scope属性指定的地方
<s:set name="新变量名" scope="范围" value=“值对象” id="引用id"></s:set>
scope 范围有五个,page,request.session.application.action 如果没有指定范围,默认是放在valueStatck
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!-- struts2的标签 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>set标签页面</title>
</head>
<body>
<br>
<br>
set标签测试
<br>
<h1>
用法一,set
</h1>
<s:bean name="java.util.Date" id="now"></s:bean>
<s:set name="page_now" scope="page" value="now"></s:set>
<s:set name="request_now" scope="request" value="now"></s:set>
<s:set name="session_now" scope="session" value="now"></s:set>
<s:set name="application_now" scope="application" value="now"></s:set>
<%
out.println("page_now="+pageContext.getAttribute("page_now")+"<br>");
out.println("request_now="+request.getAttribute("request_now")+"<br>");
out.println("session_now="+session.getAttribute("session_now")+"<br>");
out.println("application_now="+application.getAttribute("application_now")+"<br>");
%>
</body>
</html>
三, text标签
使用text标签主意用于输出国际化消息,对与无参数的国际化消息可以直接由name属性指定消息key进行输出,对于带参数的国际化消息,则需要使用param子标签传入相应的参数进行输出
1.直接输出
<s:text name="key" />
2.输出带参数的国际化消息(在国际化文件中带参数)
<s:text name="key">
<s:param>参数值</s:param>
</s:text>
实例如下
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!-- struts2的标签 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>text标签页面</title>
</head>
<body>
<br>
<br>
text标签测试
<br>
<h1>
用法一,text
</h1>
<s:text name="userName.error"></s:text><br>
<hr>
<h1>
用法二,text
</h1>
<s:text name="text">
<s:param>zgh</s:param>
</s:text>
</body>
</html>
在国际化文件中必须配置
userName.error=对不起,用户名不能为空!
text={0} ,你好,欢迎光临!!