Struts2复习(二)类型转换详解

来源:互联网 发布:nginx日志分析 编辑:程序博客网 时间:2024/05/02 01:09

1.  Struts2的类型转换,对于8个原生数据类型以及Date,String等常见类型,Struts2 可以使用内建的类型转换器实现自动的转换;但对于自定义的对象类型来说,就需要我们自己指定类型转换的方式。

2.  对于自定义的类型转换器来说需要提供3个信息:Action的名字、Action 中待转换的属性名以及该属性对应的类型转换器。其中Action的名字是通过属性文件名来获得的、Action中待转换的属性名是通过属性文件中的key来获得的,该属性对应的类型转换器是通过该key所对应的value来获得的。 
3.  可以使用Struts2框架自带的类型转换器StrutsTypeConverter简化类 型 转 换 代 码 的 编 写 ,StrutsTypeConverter 继 承 于DefaultTypeConverter 父类,并且提供了两个抽象方法:convertFromString与convertToString,分别表示从页面的字符串转换为后台对象以及从后台对象转换为页面的字符串,我们只需实现这两个抽象方法即可实现类型转换。 

4.  全局类型转换。在src目录下新建xwork-conversion.properties,该文件的内容是待转换的类=转换器的名字,即 com.shengsiyuan.bean.User=com.shengsiyuan.converter.UserConverter2 
5.  Struts2也支持自定义方法,即在struts.xml中的action元素内定义method属性,属性值即为待执行的方法。其中,该方法的声明要与execute保持一致。

6.  ActionSupport类的addActionError()方法的实现:首先创建一个ArrayList对象,然后将错误消息添加到该ArrayList对象中。 
7.  当调用getActionErrors()方法返回Action级别的错误信息列表时,返回的实际上是集合的一个副本而不是集合本身,因此对集合副本调用clear()方法清除的依旧是副本中的元素而非原集合中的元素,此时原集合中的内容没有收到任何的影响。换句话说,Action级别的错误信息列表对开发者来说是只读的。 
8.  Field  Error 级别的错误信息底层是用LinkedHashMap实现的,该Map的key是String类型,value是List<String>类型,这就表示一个Field  Name可以对应多条错误信息,这些错误信息都放置在List<String>集合当中。




欢迎大家一起讨论学习!

有用的自己收!

记录与分享,让你我共成长!欢迎查看我的其他博客;我的博客地址:http://blog.csdn.net/caicongyang


1 0