# springboot项目从前台json格式字符串传递到后台controller接收的几种方式

一、后台接收URL拼接参数

后台代码:

@GetMapping("/item/{code}") //对应的链接为:/item/10001
public List getProduct(@PathVariable(“code”) String productCode) {
//your code
}

二、后台接收查询参数

后台代码:

@GetMapping("/detail") //对应的链接为:/detail?code=&name=
public String listMaterial(@RequestParam(“code”) String productCode, @RequestParam(“name”) String productName) {
//your code
}

前台代码:

1.通过表单提交

2.通过JavaScript使用Formdata对象提交

三、后台接收json
后台代码:

@PostMapping("/add")
public MaterialStandard addProduct(@RequestBody Product product ){
//your code
}

前台代码:

1.通过JavaScript提交

var product = new Product();
$.ajax({
url:"/add",
type:“POST”,
data:JSON.stringify(product),
contentType: “application/json;charset=UTF-8”,
accept : “/”,
success : function () {
console.log(“Successfully”);
}
});

//使用了jQuery,原生JavaScript同理

四、接收文件

后台代码:

@PostMapping("/upload")
public String upload(@RequestParam(“file”) MultipartFile file) {
//your code
}

前台代码:

1.通过表单提交

2.通过JavaScript使用FormData对象提交

var fileInput = $("#file");
var selectedFile = fileInput[0].files[0];
var data = new FormData();
data.append(“file”, selectedFile);
$.ajax({
url: ‘/upload’,
type: ‘POST’,
data: data,
contentType: false, //不设置内容类型
processData: false, //不处理数据
accept : “/”,
success : function () {
console.log(“Successfully”);
}
}); 使用了jQuery,原生JavaScript同理

五、接收除实体之外的json参数

1.前台代码
var ds = {“name”:“rols”}
$.ajax({
url:"/add",
type:“POST”,
data:JSON.stringify(ds),
contentType: “application/json;charset=UTF-8”,
accept : “/”,
success : function () {
console.log(“Successfully”);
}
});

2.后台代码

@PostMapping(value = “/add”)
@ResponseBody
public ResponseEntity waitNotice(@RequestBody String name) {
ResponseEntity rsp = new ResponseEntity();
JSONObject jsonObject = JSON.parseObject(name);
name= jsonObject.getString(“name”);

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Spring Boot中使用@RequestBody注解可以接收json字符串作为参数。例如: ``` @RestController public class ExampleController { @GetMapping("/example") public String example(@RequestBody String json) { // 处理json字符串 return "处理完成"; } } ``` 这样,在发送GET请求时传递json字符串,就可以在方法中使用json变量获取该字符串了。 或者,可以将json字符串映射到Java对象,例如: ``` @RestController public class ExampleController { @GetMapping("/example") public String example(@RequestBody MyModel model) { // 处理model对象 return "处理完成"; } } ``` 在这种情况下, json字符串将被映射到MyModel类型的对象。 ### 回答2: 在Spring Boot中使用Get请求接收JSON字符串方式有多种方法。 一种常用的方式是使用@RequestParam注解,将需要接收参数以键值对的形式传递到方法中。首先需要定义一个请求处理方法,并在参数上添加@RequestParam注解,指定要接收参数名。示例如下: @RequestMapping(value = "/example", method = RequestMethod.GET) public String exampleMethod(@RequestParam("jsonStr") String jsonStr) { // 对接收到的JSON字符串进行处理 // 返回响应结果 } 另一种方式是使用@PathVariable注解,将参数作为路径的一部分进行传递。示例如下: @RequestMapping(value = "/example/{jsonStr}", method = RequestMethod.GET) public String exampleMethod(@PathVariable("jsonStr") String jsonStr) { // 对接收到的JSON字符串进行处理 // 返回响应结果 } 这样,当发送Get请求时,例如:/example/{jsonStr}?jsonStr={"key":"value"},Spring Boot会自动将路径中的jsonStr参数的值解析为一个字符串传递给方法。 除了以上两种方式,还可以使用@RequestBody注解将JSON字符串映射为一个对象,示例如下: @RequestMapping(value = "/example", method = RequestMethod.GET) public String exampleMethod(@RequestBody ExampleModel exampleModel) { // 对接收到的JSON字符串进行处理 // 返回响应结果 } 需要注意的是,在这种情况下,需要在请求头中指定Content-Type为application/json。这样Spring Boot才能正确地将请求体中的JSON字符串解析成对应的对象。 总的来说,以上是几种在Spring Boot中使用Get请求接收JSON字符串的常用方法。根据具体情况选择合适的方式进行处理。 ### 回答3: 在Spring Boot中,我们可以使用GET请求接收JSON字符串,具体操作如下: 首先需要在Controller中创建一个接收GET请求的方法,并使用`@RequestMapping`注解指定请求路径和请求方法类型为GET。 ```java @Controller @RequestMapping("/api") public class ApiController { @GetMapping("/json") @ResponseBody public String getJson(@RequestParam("jsonStr") String jsonStr) { // 处理接收到的JSON字符串 // 返回处理结果 return "处理结果"; } } ``` 在上述代码中,`@GetMapping`注解指定了口路径为`/api/json`,并且使用了`@RequestParam`注解来接收GET请求中名为`jsonStr`的参数参数类型为String。 在方法体中,我们可以对接收到的JSON字符串进行处理,并根据业务需求返回处理结果。 最后,需要加上`@ResponseBody`注解来将返回值直作为响应内容返回给客户端。 在发送GET请求时,也需要将参数到URL中,例如:`http://localhost:8080/api/json?jsonStr={"name":"Tom","age":18}`。 这样,当客户端发送GET请求时,会将JSON字符串作为参数传递Controller的`getJson()`方法,然后方法会对JSON字符串进行处理,并返回处理结果给客户端。 总结起来,Spring Boot可以使用GET请求接收JSON字符串,需要在Controller中创建对应的口方法,并使用`@RequestParam`注解来接收GET请求中的参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值