我是 Spring 框架的新手。我必須創建一個簡單的應用程式,它根據某些標準在資料庫中搜索作業,這些標準通過專門為此范圍設計的物體類的引數發送到控制器的方法。我附上方法的原型:
@Slf4j
@Service
@RequiredArgsConstructor
@Transactional
public class JobServiceImpl implements JobService {
private final JobRepository jobRepository;
private final JobTypeRepository jobTypeRepository;
private final EntityManagerFactory entityManagerFactory;
private final UserService userService;
private final JobContactRepository jobContactRepository;
@Override
**public List<JobEntity> searchJobs(JobSearchEntity searchCriteria)**
{ ...}
有誰知道如何在 Postman 中測驗(呼叫)這種型別的方法(具有特殊設計物件的引數)?是否有可能宣告方法的“引數的引數”,例如這里的情況......?或者是否可以通過Postman圖形界面中的方法構造作為引數的物件?有誰知道如何完成這項任務?提前致謝。
uj5u.com熱心網友回復:
這不是控制器,因此您無法與 Postman 交談。找到使用此服務的控制器并在那里檢查它。
(請注意,如果您使用 Spring,您通常希望使用 Spring Data 來簡化資料訪問;EntityManager通常不需要手動使用,而且您幾乎不想EntityManagerFactory直接使用。)
uj5u.com熱心網友回復:
您附加的 JobServiceImpl 不是控制器類。為了讓 Spring-MVC 將類識別為 Controller,您需要使用@Controller或@RestController注釋對類進行注釋。此外,將在控制器類中處理 URL 映射的方法需要使用 @GetMapping 或 @PostMapping 或 @DeleteMapping 等進行注釋。
@Contoller // or @RestController
public class JobServiceImpl {
@GetMapping // @PostMapping or @DeleteMapping, etc
public ResponseEntity mappingMethod() {
// your code to handle request goes here
}
}
uj5u.com熱心網友回復:
是的,但這不是重點,因為 contreller 方法采用相同型別的相同引數,它所做的只是呼叫具有相同引數的 service;s 方法......這是控制器的方法......
@ApiOperation(value = "Search job", notes = "With this request you can search job", authorizations = {@Authorization(value = "Bearer")})
@PostMapping("/search")
public ResponseEntity<?> search(JobSearchEntity searchCriteria) {
log.info("JobsController -> search method");
//JobSearchEntity jobSearchEntity = modelMapper.map(jobSearch, JobSearchEntity.class);
List<JobEntity> jobs = jobService.searchJobs(searchCriteria);
//log.info(String.format("Job found: %s ", jobSearch));
return ResponseEntity.ok(jobs);
}
現在有人知道答案了嗎...?謝謝。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/447573.html
