Spring Boot kullanarak bir Rest API oluşturuyorum ve istek girişlerini doğrulamak için Hazırda Bekletme Doğrulaması kullanıyorum.
Ancak, başka tür doğrulamalara da ihtiyacım var, örneğin güncelleme verilerinin kontrol edilmesi gerektiğinde, şirket kimliği yoksa özel bir istisna atmak istiyorum.
Bu doğrulama hizmet katmanında mı yoksa denetleyici katmanında mı bulunmalı?
Hizmet Katmanı:
public Company update(Company entity) {
if (entity.getId() == null || repository.findOne(entity.getId()) == null) {
throw new ResourceNotFoundException("can not update un existence data with id : "
+ entity.getId());
}
return repository.saveAndFlush(entity);
}
Denetleyici Katmanı:
public HttpEntity<CompanyResource> update(@Valid @RequestBody Company companyRequest) {
Company company = companyService.getById(companyRequest.getId());
Precondition.checkDataFound(company,
"Can't not find data with id : " + companyRequest.getId());
// TODO : extract ignore properties to constant
BeanUtils.copyProperties(companyRequest, company, "createdBy", "createdDate",
"updatedBy", "updatedDate", "version", "markForDelete");
Company updatedCompany = companyService.update(company);
CompanyResource companyResource = companyAssembler.toResource(updatedCompany);
return new ResponseEntity<CompanyResource>(companyResource, HttpStatus.OK);
}