php数组ajax json数组对象,前端向后端 ajax 传递对象数组的 json 数据

1.后端部分

实体类 Table对象 包含实体类 Column对象 数组

public class Table {

private String tableName;

private Column[] columns;

// 省略 set() get() ......

@Overrides

public String toString() {

return "Table{" +

"tableName='" + tableName + '\'' +

", columns=" + Arrays.toString(columns) +

'}';

}

}

public class Column {

private String columnName;

private String dataType;

private String dataLength;

// 省略 set() get() ......

@Override

public String toString() {

return "Column{" +

"columnName='" + columnName + '\'' +

", dataType='" + dataType + '\'' +

", dataLength='" + dataLength + '\'' +

'}';

}

}

2.前端部分

用户在前台表单输入数据库表的相关信息,点击Creat Table按钮调用前台JavaScript函数传输数据

6778149f9eb37341e18699cdefd63891.png

前端 JavaScript 代码

// 获取字符串

function getTableName() {

var table = $("#tableName").val();

return table;

}

// 获取对象数组

function getColumns() {

var columns= new Array();

for(var i = 0; i <= LineCont; i++) {

var column= new Object();

column.lineName = $("#column" + i + " " + "#columnName").val();

column.dataType = $("#column" + i + " " + "#dataType").val();

column.dataLength = $("#column" + i + " " + "#dataLength").val();

columns.push(line);

}

return columns;

}

// 传输数据

function creatTable() {

var tableName = getTableName();

var columns = getColumns();

$.ajax({

url:"creatTableAction",

type:"post",

data:JSON.stringify({

tableName:tableName, // 字符串

columns:columns}), // 对象数组

contentType: "application/json;charset=UTF-8",

dataType:"json"

});

}

#3. 后端接收数据

// 后台接收方法,使用SpringMVC框架

@RequestMapping("/creatTableAction")

@ResponseBody

public void creatTable(@RequestBody Table table) {

System.out.println(table.toString());

}

方法内toString()打印数据

Table{

tableName='user',

columns=[Column{columnName='userName', dataType='VARCHAR', dataLength='20'},

Column{columnName='userId', dataType='VARCHAR', dataLength='20'},

Column{columnName='gender', dataType='CHAR', dataLength='1'},

Column{columnName='address', dataType='VARCHAR', dataLength='60'}]

}

可见包含对象数组的json数据已经被成功接收到了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值