Java SpringMVC服务器接收json
我已经创建了一个SpringMVC服务器。当我尝试发送JSON时(使用PUT方法和URL): { “船名”:“测试”, “信号”:“测试”, “纬度”:12, “经度”:12, “最大速度”:14 } 到我的web服务,我得到: HTTP状态400-所需的字符串参数“shipName”不存在 这是我的服务器代码:Java SpringMVC服务器接收json,java,rest,spring-mvc,model-view-controller,put,Java,Rest,Spring Mvc,Model View Controller,Put,我已经创建了一个SpringMVC服务器。当我尝试发送JSON时(使用PUT方法和URL): { “船名”:“测试”, “信号”:“测试”, “纬度”:12, “经度”:12, “最大速度”:14 } 到我的web服务,我得到: HTTP状态400-所需的字符串参数“shipName”不存在 这是我的服务器代码: @Controller public class SignalController { @RequestMapping(value = "/signals", method
@Controller
public class SignalController {
@RequestMapping(value = "/signals", method = RequestMethod.GET)
public @ResponseBody
List<Signal> getAllSignals() throws SQLException,
ClassNotFoundException {
ISignalModel signalModel = new SignalModel();
return signalModel.getSignals();
}
@RequestMapping(value = "/add",
method = RequestMethod.POST)
@ResponseBody
public void addSignal(@RequestBody Signal signal) {
System.out.println("Signal");;
}
@RequestMapping(value = "/addSignal", method = RequestMethod.POST)
public ResponseEntity<Signal> add(
@RequestBody Signal signal) throws SQLException,
ClassNotFoundException {
System.out.println(signal.getMaxSpeed());
return new ResponseEntity<Signal>(signal, HttpStatus.OK);
}
@RequestMapping(value = "/addSignal2", method = RequestMethod.PUT)
public ResponseEntity<Signal> update(
@RequestParam("shipName") String shipName,
@RequestParam("signal") String signal,
@RequestParam("latitude") int latitude,
@RequestParam("longitude") int longitude,
@RequestParam("maxSpeed") int maxSpeed
) throws SQLException,
ClassNotFoundException {
ISignalModel signalModel = new SignalModel();
boolean operation = signalModel.addSignal(new Signal(shipName, signal,latitude, longitude, maxSpeed));
if (operation) {
return new ResponseEntity<Signal>(HttpStatus.OK);
} else {
return new ResponseEntity<Signal>(HttpStatus.INTERNAL_SERVER_ERROR);
}
//setters和getter路径
/addSignal2
有一个映射,它映射到HTTP方法PUT
:
@RequestMapping(value = "/addSignal2", method = RequestMethod.PUT)
您正在发送
帖子
。所以您得到了预期的错误响应 您的端点是否用@POST
注释?请包含实现/shipserver/addSignal2端点的代码。请编辑您的帖子以包含所有相关代码。有人能帮我吗?
@RequestMapping(value = "/addSignal2", method = RequestMethod.PUT)