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);
--


原文地址:https://www.cnblogs.com/fdxjava/p/10633726.html