我在我的应用程序中使用 Struts 2 dojo datetimepicker。如何将我的操作类String
类型属性(来自 datetimepicker 的值)转换为 SQL datetime
,以便可以将值保存在 SQL 表中?如果可能,请提供示例代码。
问问题
781 次
1 回答
2
您必须创建一个类型转换器。这是一个从 StrutsTypeConverter 扩展而来的类。
public class MyConverter extends StrutsTypeConverter{
//this method converts received object into String
public String convertToString(Map map, Object object){
if(object instanceof Date){
Date date = (Date) object;
java.text.SimpleDateFormat simpleDateFormat = new java.text.SimpleDateFormat("dd-MM-yyyy");
return simpleDateFormat.format(date);
}
return null;
}
//this method convert the received String into a
public Object convertFromString(Map map, String[] values, Class clazz) {
if (values != null && values.length > 0) {
return parseValue(values[0]);
}
return null;
}
//this method do the conversion
public Date parseValue(String value) {
value = value.trim();
try {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yyyy");
return simpleDateFormat.parse(value);
} catch (Exception e) {
return null;
}
}
}
创建转换器类后,需要创建一个属性文件,该文件的名称必须遵循以下模式:
NameOfYourAction-conversion.properties
这必须放在您的操作所在的位置。在里面,您必须输入要转换的字段的名称和转换器的名称,如下所示:
myfield = com.app.converter.MyConverter
这样,Struts 就会自动进行转换。
无论如何,这是文档。
问候。
于 2013-11-04T22:51:39.593 回答