java后端接收前端传来的String数组

我们来看下面一段代码,我们需要接收前端传来的String字符数组:我们来模拟下错误传参:

     @PostMapping("/getStrArray")
    public ResponseMessage getStrArray(@RequestBody String[] ids) {
        ResponseMessage responseMessage = new ResponseMessage(0);
        try {
              logger.info("前端接收的数组参数=====>{ }:"+ Arrays.toString(ids));
            responseMessage.setMessage(null);
        } catch (Exception e) {
            logger.error("接收参数异常,", e.getMessage());
            throw new RuntimeException(e.getMessage());
        }
        return responseMessage;
    }

错误传参:

 

 直接传参不合法

 我们应该这样传,正确传参:

 

 

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` 是一个带有泛型参数的类,用于指定反序列化的类型。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值