5.10号学习日志

来源:互联网 发布:vb数据库源代码 编辑:程序博客网 时间:2024/06/06 12:46

1. <%@ taglib uri="/struts-tags" prefix="s" %>  prifix前缀

2. <s:fielderror></s>字段错误;<s:actionerror/>动作错误。

3. action:请求的地址,直接写动作名称,不用写contextpath.

method:请求的方式;默认post

enctype:表单编码的MIME(多用途互联网邮件扩展类型)类型;

4. <s:form>

<s:textfield name=”username” lable=”用户名”/>

</s:form>

5. 异常处理:(配置回显结果视图) --无效的域值birthdaykey-value

Invaild.fieldvalue.birthday  出生日期有误,正确格式为:yyyy-MM-dd

类型转换失败后,通过conversionError拦截器进入input视图,此外定义Action时必须继承ActionSupport

6. 编程式验证:动作类必须继承ActionSupport;重写Validate方法。(validate方法在会在动作方法执行之前,进行验证。)

public void validate() {

if(StringUtils.isBlank(user.getUsername())){

addFieldError("username","请输入用户名");

}

}

7. <validators>

<!-- 基于字段式声明验证 -->

<!-- fieldname属性指定的是name属性的取值-->

<field name="username">

<!-- struts2为我们提供了很多内置验证器,requirestring验证输入内容是否为空,是否为空字符串,并且去电左右两边的空格-->

<field-validator type="requiredstring">

<message>用户名呢</message>

</field-validator>

</field>

</validators>

8. (加入注解跳过验证@SkipValidation)当使用ActionClassName-validation.xml命名文件时,它是一个动作类验证器,会验证动作类中的所有动作方法。

9. 针对动作类中的某个动作进行验证:ActionClassName-ActionName-validation.xml(动作类名称-动作类名称)

把dtd文件的头拷过来!!!

10. <!-- 基于验证器的验证 -->

<validator type="requiredstring">

<!-- 以注入的方式,提供验证的信息字段 -->

<param name="fieldName">password</param>

<message>请输入密码</message>

</validator>

11. URL:uniform resource locator统一资源定位符;

12. 区别:

http://localhost:8080/day25/register.jsp

协议  主机       端口   URI

返回String

URI:uniform resource identifier统一资源标识符;

/day25/register.jsp

返回StringBuffer

13. 使用<s>标签需要导入struts2的标签库

14. <%@ taglib uri="/struts-tags" prefix="s" %>

15. Sturts2运行时配置出错:Tomcat默认从WEB-INF/目录下加载资源,Eclipse在发布程序的时候,并没有把User Libraries的相关资源拷贝到WEB-INF/目录下(Eclipse会把src目录下的所有非*.java文件复制到WEB-INF/classes目录下),所以Tomcat说找不到所需要的类。手动将Struts2的相关jar复制到/webContent/WEB-INF/lib目录下。

16.  三层架构与Struts2

表现层:M model V view C control

业务层:service

持久层:dao  data access object

17. Struts2在三层架构中的位置是处于表现层。注意它只是一个表现层框架。

MVCStruts2

18.  控制器:Servlet

init()

destroy()

service(ServletRequest,ServletResponse)

19.  过滤器:Filter 它也可以作为控制。

init(FilerConfig)

destroy()

doFilter(ServletRequest,ServletResponse,FilterChain)

20.  Servlet能做的Filter都可以做,并且比Servlet功能更强大,它多了一个放行的功能。

Volidator的类型:可选值验证功能 
Require 必填项 
Chinese 中文 
English 英文

Number 
数字 
Integer 
整数 
Double 
实数 
Email
Email地址格式 
Url 
基于HTTP协议的网址格式 
Phone 
电话号码格式 
Mobile 
手机号码格式 
Currency 
货币格式 
Zip
邮政编码 
IdCard
身份证号码 
QQ
QQ号码 
Date 
日期 
SafeString 
安全密码 
Repeat 
重复输入 
Compare
关系比较 
Range
输入范围 
Limit
限制输入长度 
LimitB
限制输入的字节长度 
Group 验证单/多选按钮组 
Custom 自定义正则表达式验证 

0 0