转换器:转换器的作用是完成POJO(Java对象)和JavaScript类型之间的相互转换,从而保证Ajax交互的正常通信;
为什么使用:因为除了基本的数据类型、String型之外的自定义Java数据类型,DWR是无法识别的,必须在配置文件中定义转换器;
对于基本的数据类型Dwr已经提供了转换器,无需再次配置
基本的数据类型有:
boolean, byte, short, int, long, float, double, char, java.lang.Boolean, java.lang.Byte, java.lang.Short, java.lang.Integer, java.lang.Long, java.lang.Float, java.lang.Double, java.lang.Character, java.math.BigInteger, java.math.BigDecimal 和 java.lang.String
Dwr是提供转换器的。
若是 有一个字符串"2016-01-01",要转成时间类型做参数,
①可以用JS的Date.parse()方法,将字符串转成Date类型,然后就交由Dwr的转换器处理了;
②往后端传"2016-01-01"字符串,然后由后端Java进行数据类型转换;(个人认为这样做很low);
前端JSP
var time = Date.parse("2015-01-01"); var t2 = new Date( time ); AdminManager.setTime(t2,function(data){ alert("回调函数"); });
后端Java
public void setTime(Date date){ System.out.println("传入的时间是:"+(new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss")).format(date)); }
……
原文:http://www.cnblogs.com/devan/p/5252258.html