java ajax json 解析json数组对象数组对象数组对象数组_ajax传递包含对象数组的json数据...
一个简单的demo。用户在前台页面表单输入数据表的信息,数据传递到后台,系统自动在后台创建数据库表(table)的功能。
作为简单demo,这里的表只有“表名”,“列名”,“数据类型”,“数据长度”四种信息。在后台“数据库表”封装成“Table”对象,表中的每一字段“列”封装成“Line”对象。后台java代码如下所示
// 数据库表对象,其中成员包含Line类型的数组变量
public class Table {
// 表名
private String tableName;
// 所有字段信息,列
private Line[] lines;
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public Line[] getLines() {
return lines;
}
public void setLines(Line[] lines) {
this.lines = lines;
}
@Override
public String toString() {
return "Table{" +
"tableName='" + tableName + '\'' +
", lines=" + Arrays.toString(lines) +
'}';
}
}
// 字段,列
public class Line {
// 字段名,列名
private String lineName;
// 数据类型
private String dataType;
// 数据长度
private String dataLength;
public String getLineName() {
return lineName;
}
public void setLineName(String lineName) {
this.lineName = lineName;
}
public String getDataType() {
return dataType;
}
public void setDataType(String dataType) {
this.dataType = dataType;
}
public String getDataLength() {
return dataLength;
}
public void setDataLength(String dataLength) {
this.dataLength = dataLength;
}
@Override
public String toString() {
return "Line{" +
"lineName='" + lineName + '\'' +
", dataType='" + dataType + '\'' +
", dataLength='" + dataLength + '\'' +
'}';
}
}
用户在前台表单输入数据库表的相关信息,点击Creat Table按钮调用前台JavaScript函数传输数据
JavaScript代码
// 获取表名
function getTableName() {
var table = $("#tableName").val();
return table;
}
// 获取字段,列数据
function getLines() {
var lines = new Array();
for(var i = 0; i <= LineCont; i++) {
var line = new Object();
line.lineName = $("#line" + i + " " + "#lineName").val();
line.dataType = $("#line" + i + " " + "#dataType").val();
line.dataLength = $("#line" + i + " " + "#dataLength").val();
lines.push(line);
}
return lines;
}
// 传输数据
function creatTable() {
var tableName = getTableName();
var lines = getLines();
$.ajax({
url:"creatTableAction",
type:"post",
data:JSON.stringify({
tableName:tableName,
lines:lines}),
contentType: "application/json;charset=UTF-8",
dataType:"json",
success:function (data) {
if (data.result) {
}
}
});
}
后台接收代码,我使用的是Spring + SpringMVC框架
@Controller
public class MysqlController {
@RequestMapping("/creatTableAction")
@ResponseBody
public Map creatTable(@RequestBody Table table) {
System.out.println(table.toString());
Map resultMap = new HashMap();
return resultMap;
}
}
控制台toString()打印数据
Table{
tableName='user',
lines=[Line{lineName='userName', dataType='VARCHAR', dataLength='20'},
Line{lineName='userId', dataType='VARCHAR', dataLength='20'},
Line{lineName='gender', dataType='CHAR', dataLength='1'},
Line{lineName='address', dataType='VARCHAR', dataLength='60'}]
}
可见包含对象数组的json数据已经被成功接收到了
java ajax json 解析json数组对象数组对象数组对象数组_ajax传递包含对象数组的json数据...相关推荐
- url中传递对象参数_在URL参数中传递复杂对象
url中传递对象参数 假设您想传递原始数据类型,例如复杂的Java对象 java.util.Data,java.lang.List,泛型类,数组以及通过URL参数所需的所有内容,以便在页面加载后在任何 ...
- 使用HIVE 自带的JSON 函数进行json解析 同时解析JSON数组
数据展示 这是遗传JSON字符串 ,是一个还款计划,其中包含了很多的还款计划. {"plan":[{"principal":"1114.09" ...
- JSON解析:JSON对象还能这样???
自信平生无愧事,死后方敢对青天. 有目录,不迷路 前言 缘由 转换 蹊径 前言 愉快的(3+7=8的)中秋国庆假期已经接近尾声,特此写篇博客聊以记录学习过程尽早进入学习状态,也便不陷入假期综合征,使得 ...
- 深入 Go 中各个高性能 JSON 解析库
深入 Go 中各个高性能 JSON 解析库 转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/535 其实本来我是没打算 ...
- 关于Json解析(org.json.JSONObject)
关于Json解析(org.json.JSONObject) 小感慨:踏入编程界有一段时间了,至今连Json解析都不会,平时遇到Json字符串都闲麻烦,直接用String类中的方法进行截取.所谓人无远虑 ...
- JavaScript JSON解析
最近在uniapp中遇到了一个bug,排查后是json解析的问题.对uniapp开发比较熟悉的,应该会知道uni.navigateTo 这个API方法.这是官方提供用于跳转页面的方法. 有时候我们在跳 ...
- C++中json解析开源库收集,支持json5
文章目录 zpl-c 库 HJSON cJSON RapidJSON (推荐) DAW JSON Link v2 JSON ,这库稳定,文档齐全.(推荐) json-c (c实现) json_dto ...
- QT——JSON解析
一些相关知识的链接: 有关JOSN相关的基础知识:JSON基础 有关QT中JSON的操作:QT中JSON的操作 一个在线工具,可以进行JSON格式化分析的网址:JSON格式化 如何从网络中轻松得到JS ...
- Android——网络交互,如何调用接口并且json解析json格式和pull解析xml格式
本菜鸟因为之前一直使用的是公司前辈封装好的类(网络接口调用超级方便有木有)完全没有想过有一天我会自己写,然后今天接触的时候一脸懵逼,然后今天花了一天时间终于研究好了:哈哈哈哈哈 二话不说先上代码: p ...
最新文章
- mvc中的ViewData用到webfrom中去
- 安全的 ActiveMQ
- Zebra项目:分析、实施与测试
- python numpy 数组元素周围_Python numpy数组元素属性及访问
- easyui使用心得
- Spring Boot细节挖掘(Redis的集成)
- jsp+servlet+jdbc实现对数据库的增删改查
- Android RadioButton(单选按钮)点击事件的两种方法
- Gambit建模中split的用法
- HTML代码实现简易购物车-web前端教程
- 选择信号的采样频率和信号长度的技巧
- 大型C语言打怪小游戏——神魔
- 2020 gnome 桌面插件推荐
- 计算机二级考试python+C语言通过记录
- 说说最近的工作/生活经历
- 数学之美--计算机图形学中的数学方法论
- 谈谈:高端网站定制开发的流程和步骤有哪些?
- JavaScript常用正则判断(待续...)
- html中怎样写css路径,CSS 书写位置
- java传真发送_调用java API发送传真