diff --git a/spring_online_calculator/src/main/java/premium_store/WebConfiguration.java b/spring_online_calculator/src/main/java/premium_store/WebConfiguration.java index 6c4b7c4..fb88ede 100644 --- a/spring_online_calculator/src/main/java/premium_store/WebConfiguration.java +++ b/spring_online_calculator/src/main/java/premium_store/WebConfiguration.java @@ -6,7 +6,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; //отключение Cors фильтра - не позволяет организовавыть взаимодействие с разных доменов @Configuration -class WebConfiguration implements WebMvcConfigurer { +public class WebConfiguration implements WebMvcConfigurer { + public static final String REST_API = "/api"; + @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**").allowedMethods("*"); diff --git a/spring_online_calculator/src/main/java/premium_store/controller/controller/GameClientController.java b/spring_online_calculator/src/main/java/premium_store/controller/controller/GameClientController.java index 678ec7f..b9069ca 100644 --- a/spring_online_calculator/src/main/java/premium_store/controller/controller/GameClientController.java +++ b/spring_online_calculator/src/main/java/premium_store/controller/controller/GameClientController.java @@ -1,6 +1,7 @@ package premium_store.controller.controller; import org.springframework.web.bind.annotation.*; +import premium_store.WebConfiguration; import premium_store.controller.DTO.ClientDTO; import premium_store.service.GameClientService; import premium_store.service.TankService; @@ -8,7 +9,7 @@ import premium_store.service.TankService; import java.util.List; @RestController -@RequestMapping("/client") +@RequestMapping(WebConfiguration.REST_API + "/client") public class GameClientController { private final GameClientService gameClientService; private final TankService tankService; diff --git a/spring_online_calculator/src/main/java/premium_store/controller/controller/NationController.java b/spring_online_calculator/src/main/java/premium_store/controller/controller/NationController.java index b63204a..3f79a22 100644 --- a/spring_online_calculator/src/main/java/premium_store/controller/controller/NationController.java +++ b/spring_online_calculator/src/main/java/premium_store/controller/controller/NationController.java @@ -1,6 +1,7 @@ package premium_store.controller.controller; import org.springframework.web.bind.annotation.*; +import premium_store.WebConfiguration; import premium_store.controller.DTO.FullNationDTO; import premium_store.service.NationService; import premium_store.service.TankService; @@ -12,7 +13,7 @@ import java.util.List; //так же здесь прописываем вызовы методов CRUD в привязке к URL @RestController @CrossOrigin -@RequestMapping("/nation") +@RequestMapping(WebConfiguration.REST_API + "/nation") public class NationController { private final NationService nationService; private final TankService tankService; diff --git a/spring_online_calculator/src/main/java/premium_store/controller/controller/TankController.java b/spring_online_calculator/src/main/java/premium_store/controller/controller/TankController.java index cb14abe..00029fe 100644 --- a/spring_online_calculator/src/main/java/premium_store/controller/controller/TankController.java +++ b/spring_online_calculator/src/main/java/premium_store/controller/controller/TankController.java @@ -1,6 +1,7 @@ package premium_store.controller.controller; import org.springframework.web.bind.annotation.*; +import premium_store.WebConfiguration; import premium_store.controller.DTO.TankDTO; import premium_store.service.NationService; import premium_store.service.TankLevelService; @@ -10,7 +11,7 @@ import java.util.List; @RestController @CrossOrigin -@RequestMapping("/tank") +@RequestMapping(WebConfiguration.REST_API + "/tank") public class TankController { private final TankService tankService; private final TankLevelService tankLevelService; diff --git a/spring_online_calculator/src/main/java/premium_store/controller/controller/TankLevelController.java b/spring_online_calculator/src/main/java/premium_store/controller/controller/TankLevelController.java index 5e7987a..ec56ae8 100644 --- a/spring_online_calculator/src/main/java/premium_store/controller/controller/TankLevelController.java +++ b/spring_online_calculator/src/main/java/premium_store/controller/controller/TankLevelController.java @@ -1,6 +1,7 @@ package premium_store.controller.controller; import org.springframework.web.bind.annotation.*; +import premium_store.WebConfiguration; import premium_store.controller.DTO.LevelDTO; import premium_store.service.TankLevelService; @@ -10,7 +11,7 @@ import java.util.List; //здесь происходит внедрение зависимости нашего сервиса //так же здесь прописываем вызовы методов CRUD в привязке к URL @RestController -@RequestMapping("/level") +@RequestMapping(WebConfiguration.REST_API + "/level") public class TankLevelController { private final TankLevelService tankLevelService; diff --git a/spring_online_calculator/src/main/java/premium_store/util/error/AdviceController.java b/spring_online_calculator/src/main/java/premium_store/util/error/AdviceController.java index 18577c3..df96bfc 100644 --- a/spring_online_calculator/src/main/java/premium_store/util/error/AdviceController.java +++ b/spring_online_calculator/src/main/java/premium_store/util/error/AdviceController.java @@ -6,6 +6,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestController; import premium_store.service.exception.ClientNotFoundException; import premium_store.service.exception.LevelNotFoundException; import premium_store.service.exception.NationNotFoundException; @@ -15,7 +16,7 @@ import premium_store.util.validation.ValidationException; import java.util.stream.Collectors; //контроллер для обработки разнообразных ошибок при работе с запросами к БД -@ControllerAdvice +@ControllerAdvice(annotations = RestController.class) public class AdviceController { //метод handleException будет вызываться при возникновении исключений типа LevelNotFoundException и т. д. @ExceptionHandler({ diff --git a/spring_online_calculator/src/main/resources/templates/clients.html b/spring_online_calculator/src/main/resources/templates/clients.html new file mode 100644 index 0000000..566549b --- /dev/null +++ b/spring_online_calculator/src/main/resources/templates/clients.html @@ -0,0 +1,10 @@ + + + + + Title + + + + + \ No newline at end of file diff --git a/spring_online_calculator/src/main/resources/templates/default.html b/spring_online_calculator/src/main/resources/templates/default.html new file mode 100644 index 0000000..941bbb8 --- /dev/null +++ b/spring_online_calculator/src/main/resources/templates/default.html @@ -0,0 +1,51 @@ + + + + + Премиум магазин + + + + + + + + + +
+
+
+ + + + \ No newline at end of file diff --git a/spring_online_calculator/src/main/resources/templates/levels.html b/spring_online_calculator/src/main/resources/templates/levels.html new file mode 100644 index 0000000..566549b --- /dev/null +++ b/spring_online_calculator/src/main/resources/templates/levels.html @@ -0,0 +1,10 @@ + + + + + Title + + + + + \ No newline at end of file diff --git a/spring_online_calculator/src/main/resources/templates/nations.html b/spring_online_calculator/src/main/resources/templates/nations.html new file mode 100644 index 0000000..566549b --- /dev/null +++ b/spring_online_calculator/src/main/resources/templates/nations.html @@ -0,0 +1,10 @@ + + + + + Title + + + + + \ No newline at end of file diff --git a/spring_online_calculator/src/main/resources/templates/tanks.html b/spring_online_calculator/src/main/resources/templates/tanks.html new file mode 100644 index 0000000..566549b --- /dev/null +++ b/spring_online_calculator/src/main/resources/templates/tanks.html @@ -0,0 +1,10 @@ + + + + + Title + + + + + \ No newline at end of file