请求参数传json数组,后端采用(pojo)接收的前提条件:
1.pom.xml文件加入坐标依赖:jackson-databind
2.Spring Boot 的启动类加注解:@EnableWebMvc
3.Spring Boot 的Controller接受参数采用:@RequestBody
4.postman入参采用json格式
备注:
此处省略:pom文件加入坐标依赖和启动类加注解:@EnableWebMvc
具体可查看:
【Spring Boot】请求参数传json对象,后端采用(pojo)CRUD案例(102)
postman入参采用json格式:传入json数组
POJO类:
import lombok.Data;
@Data
public class Config {
private int seqId;
private int sortId;
private String interfaceType;
private String dicNameFirst;
private int dicValueFirst;
private String dicNameSecond;
private int dicValueSecond;
private String dicType;
private String isEnable;
}
Controller接受参数采用:@RequestBody
Controller类:使用 @RequestBody List< Config > config
备注:为了便于测试:Controller类只写了一个接口(实际开发可不要这样写噢)
/*
* 请求参数传递json数据:json对象(POJO)
*
*/
@PostMapping(value = "/addTest")
@AuthInterceptor("mg:get:addTest")
public Result addTest(@RequestBody List<Config> config) {
try {
return xxxListService.addTest(config);
} catch (Exception e) {
log.error("Controller addTest is error===:" + e.getMessage(), e);
return Result.failure("测试成功");
}
}
Service类:
//新增
Result addTest(List<Config> config);
ServiceImpl类:
//新增
@Override
public Result addTest(List<Config> config) {
List<Map<String, Object>> res = new ArrayList<>();
xxxListMapper.addTest(config);
return Result.success().result(res);
}
Mapper类:
//新增
void addTest(@Param("configs") List<Config> config);
Mapper.xml类:
<!-- 新增 -->
<insert id="addTest">
INSERT IGNORE INTO xxx_other_list_dic
(dicNameFirst,dicValueFirst,dicNameSecond,dicValueSecond,dicType,isEnable)
VALUES
<foreach collection="configs" item="config" separator=",">
(#{config.dicNameFirst},#{config.dicValueFirst},#{config.dicNameSecond},
#{config.dicValueSecond},#{config.dicType},#{config.isEnable})
</foreach>
</insert>
postman接口测试完成:数据已新增