<b>Struts2中的参数传送</b>[Java编程]
本文“<b>Struts2中的参数传送</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
我们知道,Struts2完成参数传送处理工作的底子是OGNL和ValueStack.而在这个历程中,我也把Struts2所要做的工作大致归纳为两个方面:
1. 对OGNL操作举行封装,完成OGNL表达式所表示的值到Java对象的值传送机制
2. 在参数传送的历程中,做得当的范例转化,保证页面上的字符串可以转化成形形色色的Java对象
接下来,通过四个差别的角度,来具体报告Struts2在这两个方面的工作.
目 录 [ - ]
最简单的参数传送
Array、List、Map等容器范例的参数传送
文件上传
自定义的范例转化实现
最简单的参数传送
public class EnumTypeConverter extends DefaultTypeConverter {
/**
* Converts the given object to a given type. How this is to be done is implemented in toClass. The OGNL context, o
* and toClass are given. This method should be able to handle conversion in general without any context or object
* specified.
*
* @param context - OGNL context under which the conversion is being done
* @param o - the object to be converted
* @param toClass - the class that contains the code to convert to enumeration
* @return Converted value of type declared in toClass or TypeConverter.NoConversionPossible to indicate that the
* conversion was not possible.
*/
public Object convertValue(Map context, Object o, Class toClass) {
if (o instanceof String[]) {
return convertFromString(((String[]) o)[0], toClass);
} else if (o instanceof String) {
return convertFromString((String) o, toClass);
}
return super.convertValue(context, o, toClass);
}
/**
* Converts one or more String values to the specified class.
* @param value - the String values to be converted, such as those submitted from an HTML form
* @param toClass - the class to convert to
* @return the converted object
*/
public java.lang.Enum convertFromString(String value, Class toClass) {
return Enum.valueOf(toClass, value);
}
}
以上是“<b>Struts2中的参数传送</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |