Java后端怎么接收前端传来的list
时间: 2023-11-18 14:03:55 浏览: 265
Java后端可以通过使用@RequestParam注解,将前端传来的list解析成字符串,然后对其进行分割处理,最终得到一个数组或者列表。 代码示例:
@RequestMapping(value="/getList",method=RequestMethod.POST)
public List<String> getList(@RequestParam("listStr") String listStr) {
String[] listArr = listStr.split(",");
List<String> list = Arrays.asList(listArr);
return list;
}
其中,@RequestParam注解中的参数"listStr"代表前端提交过来的list参数名。
相关问题
java后端如何接收前端传过来的list,map
在 Java 后端接收前端传过来的列表(List)和映射(Map)数据,通常需要使用框架或库来解析 HTTP 请求体中的 JSON 数据。以下是一个使用 Spring Boot 框架接收前端传来的 JSON 数据并将其转换为 Java 对象的示例代码:
```java
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
public class DataController {
@PostMapping("/api/data")
public void handleData(@RequestBody Map<String, Object> data) {
List<Integer> list = (List<Integer>) data.get("list");
List<String> arr = (List<String>) data.get("arr");
Map<String, String> map = (Map<String, String>) data.get("map");
// Do something with the received data
// ...
}
}
```
在上面的代码中,我们使用 `@RequestBody` 注解将 HTTP 请求体中的 JSON 数据转换为 Map<String, Object> 对象,然后从中获取列表(List)和映射(Map)数据。如果需要将列表(List)和映射(Map)数据转换为具体的 Java 对象,可以使用 Jackson 库进行反序列化。例如,将列表数据转换为 List<Integer> 对象,可以使用以下代码:
```java
List<Integer> list = objectMapper.convertValue(data.get("list"), new TypeReference<List<Integer>>(){});
```
其中,`objectMapper` 是 Jackson 库中的对象映射器,`TypeReference` 是一个带有泛型参数的类,用于指定反序列化的类型。
后端接收前端传的array
后端接收前端传的array的方法有两种。第一种是使用@RequestParam注解,参数名后面加上\[\],如引用\[2\]所示。在后端的方法中,使用int\[\]类型的参数来接收前端传来的数组。第二种是使用@RequestBody注解,前端使用JSON的传输方式,如引用\[3\]所示。在后端的方法中,使用一个自定义的类来接收前端传来的JSON数据,并在该类中定义一个数组类型的属性来接收数组数据。
#### 引用[.reference_title]
- *1* *2* [当前端传输的数据是数组类型时,java后端的接收方式](https://blog.csdn.net/weixin_44997847/article/details/126373147)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [前端传值,java后端接收](https://blog.csdn.net/weixin_45703155/article/details/127589531)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文