gpt4 book ai didi

java - 使用ajax将参数传递给Controller

转载 作者:行者123 更新时间:2023-11-30 21:46:04 27 4
gpt4 key购买 nike

使用 Spring boot、MySQL、JPA 和 RESTFUL CRUD API。

我想做的是将参数传递给 Controller,以便参数进入表。但是表中有空值,我无法确定问题出在哪一部分。只有我可以确定的是 Controller 没有收到适当的值。

在下面,我贴出了实体类(Status.java)、 Controller (GuideController.java)和html表单(guide.html)。

状态.java

@Entity
@Table(name="tbl_status")
public class Status {

@Id
@GeneratedValue(strategy=GenerationType.AUTO)

private Integer id;

private String xml_to_json;


public String getXml_to_json() {
return xml_to_json;
}

public void setXml_to_json(String xml_to_json) {
this.xml_to_json = xml_to_json;
}

GuideController.java

    @Autowired
private StatusRepository statusRepository;

@GetMapping(path="/insert") // Map ONLY GET Requests
public @ResponseBody String addNewStatus (@RequestParam String xml_to_json
, @RequestParam String json_to_xml) {
// @ResponseBody means the returned String is the response, not a view name
// @RequestParam means it is a parameter from the GET or POST request

Status s = new Status();
s.setXml_to_json(xml_to_json);
//s.setJson_to_xml(json_to_xml);
statusRepository.save(s);
return "Saved";
}

@GetMapping(path="/all")
public @ResponseBody Iterable<Status> getAllUsers() {
// This returns a JSON or XML with the users
return statusRepository.findAll();
}

指南.html

var xml2json = function(_data){
$.ajax({
type: "POST",
url: url + "xml2json",
data: _data,
contentType : "application/xml",
cache: false,
success : function(data) {
$("#output-xml-to-json").html(JSON.stringify(data,null,4));
$.ajax({
type:"POST",
url: url + "insert",
data: {xml_to_json:"success"},
contentType: "text"
})
},
error : function(){
$("#output-xml-to-json").html("xml2json error");
$.ajax({
type:"POST",
url: url + "insert",
data: {xml_to_json:"error"},
contentType: "text"
})
}
});

最佳答案

请求映射为GET:

@GetMapping(path="/insert") // Map ONLY GET Requests
public @ResponseBody String addNewStatus (@RequestParam String xml_to_json
, @RequestParam String json_to_xml) {...}

AJAX 请求是带有 json 数据的 POST。 AJAX 请求应该是 get 并且 xml_to_json 必须在查询字符串中传递。

关于java - 使用ajax将参数传递给Controller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49442212/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com