Java将前端Json数据(包括数组对象)保存至数据库,并从数据库读取返回至前端。

1、前端json格式

{
    "name":"zhangsan",
    "age":23,
    "hobby":[
        {
            "hobbyname":"爬山",
            "level":"非常喜欢"
        },
        {
            "hobbyname":"游泳",
            "level":"一般喜欢"
        }
     ]
}

2、后端Bean,注意:重点是需要重写toString方法

class User{
   private String name;
   private int age;
   private List<Hobby> bobby;
   //set get
}
class Hobby{
    private String hobbyname;
    private String level;
    //set get

    //重写toString
    @Override
    public String toString(){
    
        return "{" + 
                "\"hobbyname\":\"" + hobbyname + "\"," +
                "\"level\":\"" + level + "\"
                "}";
    }
}

3、后端接收

@RequestMapping(value="add",method=RequestMethod.POST)
public Object add(@RequestBody User user){
    //
}

4、接收前端数据、和返回前端数据均是Json格式的字符串。

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
首先,需要连接数据库并创建一个表来存储JSON数据。假设我们使用MySQL数据库,可以使用以下代码创建一个名为`json_data`的表: ``` CREATE TABLE json_data ( id INT AUTO_INCREMENT PRIMARY KEY, data JSON ); ``` 接下来,我们可以使用JavaScript来创建一个JSON数组,并将其保存数据库。假设我们想要保存以下数组: ``` const myArray = [ { name: 'John', age: 30 }, { name: 'Jane', age: 25 }, { name: 'Bob', age: 40 } ]; ``` 我们可以使用以下代码将其保存数据库: ``` const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'my_database' }); connection.connect(); const sql = 'INSERT INTO json_data (data) VALUES (?)'; const values = [JSON.stringify(myArray)]; connection.query(sql, values, (error, results, fields) => { if (error) throw error; console.log('JSON array saved to database'); }); connection.end(); ``` 在这个例子,我们首先创建了一个MySQL连接,并定义了我们要保存JSON数据的表。然后,我们将JavaScript数组转换为JSON字符串,并将其作为参数传递给SQL语句的占位符。最后,我们执行SQL查询来将JSON数据保存数据库。 请注意,这只是一个简单的示例代码,并且需要根据实际情况进行修改。例如,您需要将连接参数更改为适合您自己的数据库,以及更改表名和列名以匹配您的数据库结构。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值