怎样封装一个json数据传递给structs后并在action中取出这个json数据呢?

怎样封装一个json数据传递给structs后并在action中取出这个json数据呢?,第1张

给你举个例子吧。struts中这样配置:

<action

name="cfg_*"

method="{1}"

class="action.CFGAction">

<result

name="cfg_edit"

type="json">

<param

name="includeProperties">

cfg.*

</param>

</result>

</action>

其中cfg_*表示jsp中调用action方法的开头,如:form的时候cfg_search.action.表示提交的时候去执行action层的search方法。

class="action.CFGAction"当然表示action这个类了。

cfg_edit表示action当前方法return的一个字符串。

type="json"表示把返回类型封装成一个json。

cfg.*表示action实例化出来的一个叫cfg的对象

这样json字符串会自动帮你把你的bean对象封装好。然后直接取数据就可以了。

首先Action中不要使用List接收参数,改成数组

private JBean[] jbs     --- 这里的对象名是jbs

因为List接收前台,需要带索引,这个比较麻烦

前台的数据格式:

{ jbs : [

{name : "张三", age : 22, sex : 1},

{name : "李四", age : 32, sex : 0},

{name : "王五", age : 24, sex : 1}

]}

注:jbs 对应Action中的对象名,

他也是个数组,里面有3个json对象,属性对应JBean对象属性

所以你现在需要的是组装自己的数据

var param = {jbs : []}

for(var i=1i<=4i++) {

var bean = {}

bean["name"] = $("#name" + i).val()

bean["age"] = $("#age" + i).val()

  bean["sex"] = $("#sex" + i).val()

param.jbs[i] = bean

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9964126.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存