我试图将JSON数组POST到spring引导控制器,但没有发生任何事情,甚至没有显示在日志中



问题:我试图将阵列POST到控制器,但似乎什么都没发生,日志或终端上没有信息

我有一个JSON数组,如下


[
{   
"artifact_id": 10,
"session_id":45,
"user_id": "user99"
}
]

我正试图将其与CRUD repo中的.saveAll()一起使用,但似乎什么都没发生——它似乎甚至没有打印我的System.out.print("test");消息我的@Entity类如下

@Entity
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "ESearch_results", schema = "public")
public class ESearchResponse {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "primary_key", nullable = false)
int primary_key;
@Column(name = "artifact_id")
int artifact_id;
@Column(name = "session_id")
int session_id;
@Column(name = "user_id")
String user_id;
}

我的控制器如下

@RestController
public class EsearchTestController {
@Autowired
private EsearchResponseService EsearchResponseService;

@CrossOrigin
@PostMapping("/justATest")
public String testController(@RequestBody List<ESearchResponse> ESearchResponseTypo){
String result = "this test passed";
// System.out.print("u001B[35m"+EsearchResponseService.saveESearchResult(ESearchResponseTypo));
System.out.print("u001B[35m"+ESearchResponseTypo.size());
EsearchResponseService.saveESearchResult(ESearchResponseTypo);
return result;
}
}

我已经尝试了很多方法,我相信我在这里的根本问题是在请求体中传递JSON数组的方式。

尝试将@RequestMapping("/some_path")添加到控制器中。

我曾经遇到过同样的问题,在我的案例中缺少@RequestMapping注释。

注意properties文件中的端口设置:

server.port=8000

最新更新