我正在寫一個spring rest方法來從數據庫中獲取詳細信息,並將其設置爲響應POJO,然後將其返回。目前我需要使用CSV來生成此響應,而不是默認的json,當使用POSTMAN或RC命中URL時,就像可下載的帶有數據的CSV文件一樣。我搜索了很多網站,但不確定少數邏輯。GetMapping使用Spring Boot生成CSV文件
- 我們是否需要編寫業務邏輯來將pojo類的值轉換爲csv格式還是spring有任何轉換機制?
- Produces =「text/csv」在很多地方被提及,這是否正確地轉換響應?
目前我還沒有爲CSV轉換編寫任何代碼。
@GetMapping("/batch/export" , produces="text/csv")
public ResponseEntity<ApplicationResponse> getBatchDetails(
HttpServletRequest request) {
ApplicationRequest appRequest = ApplicationServiceMapper.mapRequestFromHttpRequest(request);
ApplicationResponse response = appService.getDBDetails(appRequest);
return new ResponseEntity<>(response, HttpStatus.OK);
}
這裏的回答是,在其POJO格式的所有數據,如果我們不給服務回報標註生產則默認情況下春天將返回響應JSON的一個。有人可以指導我嗎?提前致謝。
[如何在瀏覽器中從Spring控制器中返回CSV數據]可能的副本(https://stackoverflow.com/questions/22947751/how-to-return-csv-data-in-browser-from-spring-controller ) –
Spring Boot使用Spring WebMVC並且Spring WebMVC具有[內置支持](https://docs.spring.io/spring/docs/current/spring-framework-reference/html/view.html#view -jasper-reports)通過JasperReports發送CSV文件。另外,可以使用任何流行的CSV處理庫自定義'MessageConverter' [可以構建](https://stackoverflow.com/a/44094437/1126526)。 – manish
嘿,這個:https://stackoverflow.com/a/45729709/1942642回答你的問題? –