java如何提供接口接收前端传送的数据并写入数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何提供接口接收前端传送的数据并写入数据库相关的知识,希望对你有一定的参考价值。

比如前端要传送给后端一个json数据,方法是POST,例子如下:
data:"records": ["name": "aaa", "IP": "11.11.11.11", "node": 114, ,"name": "bob", "IP": "11.11.11.22", "node": 115, ,]
后端使用java编写,应该如何提供接口给前端,并且在接收数据后应该如何写入mysql相应的表中呢?
谢谢大神!解决加分!

//前端要调用后端的接口可以是用jsonp
前端写法:

$.ajax(
    url:"/xxx.java",
    data:type:"xxx",a:"aaa",
    async: false,
    dataType: "jsonp",
    jsonp: "callback",
    jsonpCallback: "returnLiveViewData",
    success: function (msg) 
    
    ,
    error:function()
       alert(请求失败); 
    
;

//后端返回结果

"returnLiveViewData("records": ["name": "aaa", "IP": "11.11.11.11", "node": 114, ,"name": "bob", "IP": "11.11.11.22", "node": 115, ,]
)";

追问

前端不是我写的,我不需要知道前端的写法,只是需要用前端提供的数据格式去获取并将数据写入数据库。我想问的是后端这一块应该怎么处理啊,十分感谢

参考技术A java添加一个JSON 包

String aa = data(前台传来的JSON 格式字符串)

JSONObject jsonObject = JSONObject.fromObject(aa ); //转为JSOn 格式

String records = jsonObject.getString("records"); // 取值

List<Map> picinfolist =JSON.parseArray(records, Map.class);追问

想问一下你这里的Map.class是什么,我需要怎么样将获取的data:"records": ["name": "aaa", "IP": "11.11.11.11", "node": 114, ,"name": "bob", "IP": "11.11.11.22", "node": 115, ,]这段数据写入mysql的数据表中?能否给一段完整的代码,谢谢

追答

Map.class 你可以理解为泛型
你去下载json-lib-2.4-jdk15.jar包 放在 web-inf 的lib下 上面的代码可以用
还有fastjson-1.2.7.jar

追问

这一段我写了,但是"String aa = data(前台传来的JSON 格式字符串)"这个,前台要传数据的话,我需要给他提供一个接口,接口该怎么写啊,"String records = jsonObject.getString("records"); // 取值"取值之后又该如何写入数据库呢,谢谢

追答

前台要传数据 你后台request 接收到 那个JSON格式字符串就OK了 然后转为JSON 对象 再把records转为list 在转为MAP 就OK啊

参考技术B 时间过去一年了,您还记得你当时是因为哪里不明白,最后是怎么解决的,当时是什么感受吗?可不可以就只个问题出一片csdn的博文分享给大家?

以上是关于java如何提供接口接收前端传送的数据并写入数据库的主要内容,如果未能解决你的问题,请参考以下文章

springboot后端的返回的data属性前端无法接收

java代码发送post请求,并接收xml文件。。。 发送请求时要带参数

前后端分离怎么获取后台接口数据

C#,Csharp,多串口如何后台运行,如何把数据写入数据库的问题

如何将RS232接收到数据写入EXCEL

Java服务器对外提供接口以及Android端向服务器请求数据