我遇到了一個問題,我得到了三個對象而不是一個對象本身。(您可以在下面看到我的架構和輸出結果)。我需要做的就是返回一個對象映射器列表,它可以將集合轉換為數組。在我的控制器中,這是“public @ResponseBody List”的原因,請幫助我讓它像我的模式一樣打印。感謝您的幫助..!控制器:@RestControllerpublic class AutoCompleteController { private AutoCompleteService autoCompleteService; private EntityManager em; public AutoCompleteController(AutoCompleteService autoCompleteService, EntityManager em){ this.autoCompleteService = autoCompleteService; this.em = em; } @RequestMapping(value = "jobs", method = RequestMethod.GET) public @ResponseBody List<AutoComplete> getSalary(@RequestParam(value = "autocomplete") String autocompleteValue) { return autoCompleteService.retrieveSalary(autocompleteValue); } public void getAllSalaries(HttpServletResponse res) { Stream<AutoComplete> stream = autoCompleteService.retrieveAllSalaries(); DataStreamUtility.streamObjects(stream, res, em); } @RequestMapping(value = "/jobs") public @ResponseBody List < AutoComplete > getSalary(@RequestParam(value = "autocomplete", defaultValue = "1400") String autocompleteValue) { return autoCompleteService.retrieveSalary(autocompleteValue); } public void getAllSalaries(HttpServletResponse res) { Stream < AutoComplete > stream = autoCompleteService.retrieveAllSalaries(); DataStreamUtility.streamObjects(stream, res, em); }}
3 回答

呼啦一陣風
TA貢獻1802條經驗 獲得超6個贊
如果我正確理解了您的意圖,這里的問題是您正在檢索您只需要一個實體的實體列表。
autocompleteRepository.findByJobClassCdStartsWith(jobClassCd);
簡而言之:“神奇的”findByXXX 方法返回一個列表或單個實體;您應該改用 findOneByXXXX 來澄清。
查看此答案以獲取更多信息,我認為解釋得很好: Difference between findBy and findOneBy in Spring data JPA

慕少森
TA貢獻2019條經驗 獲得超9個贊
在您的一條評論中,您說my rateType it just only prints "annual" ... the other hourly and weekly rate types does not return。您是否有機會創建 3 個具有相同 ID 但不同 rateTypes 的對象?在我看來,您需要將費率分別設為一個數組。
public String[] rateAnnual;
public String[] rateBiweekly;
public String[] Hourly;
添加回答
舉報
0/150
提交
取消