Struts2,大爷你好!第四天
day04
10.第一节Struts2标签简介
Struts2自己封装了一套标签,比JSTL强大,而且与Struts2中的其他功能无缝结合
当然Struts2标签的内容很多,随着版本的升级,标签和属性越来越多,我们要掌握好核心标签及了解其他标签;
根据功能可以划分为:数据标签,控制标签;界面标签,其他标签
第二节Struts2数据标签
Property标签:输出OGNL表达式的值
<%
request.setAttribute("name","<font color=red>张三</font>");
%>
<body>
<s:property value="#request.name"/>
</body>
Set标签:设置变量;
<s:set var="a" value="'action范围的值'" scope="action"></s:set>
<s:property value="#a"/>
Bean标签:定义javaBean对象;
Date标签:日期标签
Debug标签:调试标签
Url&a标签:超链接标签
Include标签:动态包含标签
第三节Struts2控制标签
Ifelse标签:条件判断标签
Iterator标签:遍历标签
Append:叠加标签
Generator:分隔标签
Merge:组合标签
Sort:排序标签
Subset:截图标签
11.界面标签
Form:表单提交标签
Text:文本标签
Radios:单选标签
Checkboxlist:复选框标签
Select:下拉框标签
--其他标签
Updownselect标签
Optiontransferselect标签
12.第一节:国际化简介
国际化(Internationlization),通俗的将,就是让软件实现对多种语言的支持;
第二节:Struts2国际化设置
<constant name="struts.custom.il8n.resources" value="java333"></constant>
<s:text name=""></s:text>访问国际化资源
引入<%@taglib prefix="s" url="/struts-tags"%>
13.Struts2 验证框架
第一节Struts2验证简介
Struts2基于Struts2拦截器,为开发者提供了一套易用的验证框架,并可扩展,一般的验证都支持
---验证登录--struts.xml
<package name="manager" extends="struts-default">
<action name="registerAction" class="com.路径.java文件"></action>
<result name="input">/register.jsp</result>
<result name="success">/success.jsp</result>
</package>
我省略了action下的RegisterAction.java和model下的User.java
--register.jsp文件
<body>
用户注册
<s:form action="registerAction" method="post">
<s:textfield name="user.userName" label="用户名"></s:textfield>
<s:textfield name="user.name" label="真实姓名"></s:textfield>
<s:textfield name="user.age" label="年龄"></s:textfield>
<s:textfield name="user.email" label="邮件"></s:textfield>
</s:form>
</body>
添加文档RegisterAction-validation.xml
<validators>自己查询文档进行复制添加--修改(验证提示)</validators>
第二节Struts2内置验证
--普通字段的验证
--验证表达式
<s:actionerror/>
<validator type="expression">
<param name="expression"><![CDATA[!user.name.equals(user.userNmae)]]></param>
<message>用户名和真实姓名不能相同</message>
14.第三节自定义验证
拦截带有关键字,敏感字段需要自定义验证
查询validators.xml文档添加到项目中
添加验证器--修改路径
<field-validator type="定义在validators.xml文件的name">
<message>有敏感词汇</message>
</field-validator>
--方法继承FieldValidatoSupport
//继承字段
String fieldNmae=this.getFieldName();
//获取用户输入的值
String value=this.getFieldValue(fieldNmae,object);
--