DWR非常直接地处理基元列表.我无法找到DWR方法调用返回的对象数组是否表示JSON对象.有线索吗?或者我是否必须将表示对象数组的JSON字符串返回给浏览器?
这个答案有点晚了,但是这里有:)
好消息:DWR还以非常直接的方式处理Java数组和集合.只需返回它们,在客户端,您将获得JavaScript Array对象.(在典型的情况下,如数组或集合中的基元或字符串,即.如果内容更具异国情调,则可能需要定义转换器;更多内容.)
这是DWR文档的引用(强调我的):
默认情况下,所有以下内容都将为您转换而无需进一步声明:
- 所有原始类型,boolean,int,double等.
- 这些布尔,整数等的基于类的版本.
- java.lang.String中
- java.util.Date和3个SQL派生物
- 上面的数组
- 上面的集合(列表,集合,映射,迭代器等)
- 来自DOM,XOM,JDOM和DOM4J的DOM对象(如Element和Document)
所以你绝对不需要这些JSON字符串(虽然这可能是更复杂的数据结构的一个很好的选择).
实际上,您可以返回更多种类的对象,而无需进行大量的手动操作,因为DWR带有许多典型用途的" 转换器 ".例如,要使自定义"bean"样式的Java对象在客户端JS中工作,您需要说的dwr.xml是您想要使用bean转换器:
<convert converter="bean" match="com.company.YourBean" />
Run Code Online (Sandbox Code Playgroud)
即使你的方法返回那些bean对象的List(或数组)......
public static List<YourBean> getData(){ ... }
Run Code Online (Sandbox Code Playgroud)
......以上配置就足够了,这很不错.
| 归档时间: |
|
| 查看次数: |
7363 次 |
| 最近记录: |