car_details, bike_details, truck_details로 세 개의 테이블이 있습니다 (RegistrationNo, No.ofYearsOld, OwnerName, ContactNo, VehicleType) VehicleType 필드는 차량 (자동차 또는 자전거 또는 트럭)의 유형을 지정해야하며 기본값은 자동차입니다. 전략 패턴을 사용하여 특정 필드를 고려하여 테이블을 전환하고 데이터를 저장합니다.
세 테이블
내가 vehicleType 필드를 고려하여 해당 테이블에 데이터를 저장해야하는 작업은 각자의 POJO 및 저장소있습니다. 내 컨트롤러
@RequestMapping (value = "/createVehicle/", method = RequestMethod.POST, consumes = "application/json")
@ResponseBody
public ResponseEntity<> createGeneralAuthentication (@RequestBody CarDetails carDetails) {
public void roleSelector(String type) {
switch (type){
case "car":
return new CarRepository();
break;
case "bike":
return new BikeRepository();
break;
case "truk":
return new TruckRepository();
break;
}
}
RolesRepository rolesRepository = new roleSelector(carDetails.getType());
try {
rolesRepository.save(carDetails);
} catch (Exception ex) {
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
}
return new ResponseEntity<>(HttpStatus.OK);
}
없음 다른 경우에
는 전략 패턴 할 필요가 사용되어야한다.
스프링 애플리케이션에서'new'를 사용하는 것에 더 신경을 씁니다 (대부분 작동하지 않습니다). –