From 3728754075e5ba8a6a8fad8eb1546327d2278beb Mon Sep 17 00:00:00 2001 From: MobR10 <100953132+MobR10@users.noreply.github.com> Date: Wed, 24 May 2023 14:26:27 +0300 Subject: [PATCH] database homework without new index --- .../configuration/database/DataBaseInit.java | 44 +++++++++++++++++++ .../curs/controller/v1/CarController.java | 2 + .../controller/v1/HelloWorldController.java | 2 + .../curs/controller/v2/CarControllerV2.java | 3 ++ 4 files changed, 51 insertions(+) create mode 100644 src/main/java/ro/raffa/curs/configuration/database/DataBaseInit.java diff --git a/src/main/java/ro/raffa/curs/configuration/database/DataBaseInit.java b/src/main/java/ro/raffa/curs/configuration/database/DataBaseInit.java new file mode 100644 index 0000000..7b83134 --- /dev/null +++ b/src/main/java/ro/raffa/curs/configuration/database/DataBaseInit.java @@ -0,0 +1,44 @@ +package ro.raffa.curs.configuration.database; + +import java.math.BigDecimal; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; + +import ro.raffa.curs.model.Car; +import ro.raffa.curs.repository.DbCarRepository; + +@Configuration +@Profile("database") +public class DataBaseInit { + @Autowired + DbCarRepository carRepository; + + @Bean + public void DbInit(){ + if(carRepository.count()==0){ + loadDb(); + } + + } + + private void loadDb() { + carRepository.save(createCar("Mercedes","Red", "CN2", 2020, "EUR", 250000)); + carRepository.save(createCar("BMW", "Cream", "M2", 2023, "EUR", 300000)); + carRepository.save(createCar("Toyota", "Dark Chocolate", "Heisenberg", 2018, "EUR", 80000)); + } + + private Car createCar(String maker,String color,String model, Integer year, String currency, Integer price) { + Car car = new Car(); + car.setMaker(maker); + car.setColor(color); + car.setModel(model); + car.setYear(year); + car.setCurrency(currency); + car.setPrice(BigDecimal.valueOf(price)); + return car; + } + +} diff --git a/src/main/java/ro/raffa/curs/controller/v1/CarController.java b/src/main/java/ro/raffa/curs/controller/v1/CarController.java index 44b2b4e..2df1bd2 100644 --- a/src/main/java/ro/raffa/curs/controller/v1/CarController.java +++ b/src/main/java/ro/raffa/curs/controller/v1/CarController.java @@ -3,6 +3,7 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Profile; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -16,6 +17,7 @@ @RestController @RequestMapping("/v1") +@Profile("local") public class CarController { @Autowired diff --git a/src/main/java/ro/raffa/curs/controller/v1/HelloWorldController.java b/src/main/java/ro/raffa/curs/controller/v1/HelloWorldController.java index 4bfdb26..7f0b4e5 100644 --- a/src/main/java/ro/raffa/curs/controller/v1/HelloWorldController.java +++ b/src/main/java/ro/raffa/curs/controller/v1/HelloWorldController.java @@ -1,5 +1,6 @@ package ro.raffa.curs.controller.v1; +import org.springframework.context.annotation.Profile; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -11,6 +12,7 @@ @RestController @RequestMapping("/v1") +@Profile("local") public class HelloWorldController { @GetMapping(path = "/helloworld/hello1") diff --git a/src/main/java/ro/raffa/curs/controller/v2/CarControllerV2.java b/src/main/java/ro/raffa/curs/controller/v2/CarControllerV2.java index 8b96efd..bd40b28 100644 --- a/src/main/java/ro/raffa/curs/controller/v2/CarControllerV2.java +++ b/src/main/java/ro/raffa/curs/controller/v2/CarControllerV2.java @@ -3,12 +3,14 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import netscape.javascript.JSObject; import ro.raffa.curs.model.Car; import ro.raffa.curs.repository.DbCarRepository; @@ -19,6 +21,7 @@ public class CarControllerV2 { @Autowired DbCarRepository carRepository; + @GetMapping("/car/list") public List getCars() { List list=carRepository.findAll();