设为首页 加入收藏

TOP

DWR的Converter实现原理简单分析及应用
2014-11-23 20:29:19 】 浏览:9965
Tags:DWR Converter 实现 原理 简单 分析 应用

  我们在应用 DWR 调用远程方法时涉及到 JS 与 JAVA 之间参数和返回值的数据转换,例如:
  JS 的 123 与 Java 的 int  或 Integer、long 间的转换
  JS 的 "2009-06-23" 与 Java 的 java.util.Date 之间的转换
  JS 的 "[1,2,3]" 与 Java 的 int[] 间的转换
  JS 的 "{id:123, name: 'Unmi'}" 与 Java 的 Class Person{int id; String name} 间的转换
  或者更复杂的嵌套类型( "{id:123, name: 'Unmi', blogs:['http://unmi.blogjava.net','http://blog.csdn.net/kypfos']}" ) 与 Java 类型间的转换,等等。那么这一切是怎么进行的呢?其实我们见识过很多组件的类型映射,如 Java 的 PropertyEditor、Hibernate(UserType)、iBatis(TypeHandler) 的类型映射,Struts1/2 中 Form/Model 用的 Converter 等。
  这里我来稍稍分析 DWR 的 Converter 实现,以及说明如何定制自己的 Converter。本文所用 DWR 是 2.0.5 版。
  1. DWR 内置的 Converter 及应用类型


  它们是应用启动的时候,通过 org.directwebremoting.servlet.DwrServlet 初始化 dwr-2.0.5.jar!/org/directwebremoting/dwr.xml 文件加载进来的。例如:
  注册了 date 转换器
  应用注册的 date 转换器应用到 java.util.Date 类型
  看到上面,你也许会惊讶一下,我们平时可能也就用下 bean 转换器,其他用内置就行。然而 DWR 确为我们考虑的很周到的,包括 hibernate 相关的,URL、Servlet、Dom 等相关类型的转换器。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Hibernate3.1与Hibernate3.2 下一篇计算机二级考试java辅导:jBPM4.0..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目