diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/Demo.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/Demo.java index 610b4169..9d220870 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/Demo.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/Demo.java @@ -3,12 +3,12 @@ package ru.otus.mainpackage; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.context.properties.EnableConfigurationProperties; -import ru.otus.mainpackage.configs.YamlProps; +import ru.otus.mainpackage.configs.AppProps; //http://localhost:8080/actuator/health @SpringBootApplication -@EnableConfigurationProperties(YamlProps.class) +@EnableConfigurationProperties(AppProps.class) public class Demo { public static void main(String[] args) { diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/YamlProps.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/AppProps.java similarity index 95% rename from 2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/YamlProps.java rename to 2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/AppProps.java index e491793b..29860490 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/YamlProps.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/AppProps.java @@ -5,7 +5,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties; import java.util.Locale; @ConfigurationProperties(prefix = "application") -public class YamlProps { +public class AppProps { private String message; private Locale locale; diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/Localization.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/LocalizationConfig.java similarity index 93% rename from 2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/Localization.java rename to 2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/LocalizationConfig.java index 9ac25c3d..e864fa3f 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/Localization.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/configs/LocalizationConfig.java @@ -6,7 +6,7 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.support.ReloadableResourceBundleMessageSource; @Configuration -public class Localization { +public class LocalizationConfig { @Bean public MessageSource messageSource() { var ms = new ReloadableResourceBundleMessageSource(); diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/Greeting.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/Greeting.java deleted file mode 100644 index a8c5db1b..00000000 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/Greeting.java +++ /dev/null @@ -1,7 +0,0 @@ -package ru.otus.mainpackage.welcome; - -import java.util.Map; - -public interface Greeting { - Map sayHello(String name); -} diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingController.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingController.java index 0610eab6..6329e270 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingController.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingController.java @@ -2,11 +2,10 @@ package ru.otus.mainpackage.welcome; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import ru.otus.mainpackage.configs.YamlProps; +import ru.otus.mainpackage.configs.AppProps; import java.util.Map; @@ -14,16 +13,16 @@ import java.util.Map; @RestController public class GreetingController { private static final Logger logger = LoggerFactory.getLogger(GreetingController.class); - private final Greeting greeting; + private final GreetingService greetingService; - public GreetingController(Greeting greeting, YamlProps props) { - this.greeting = greeting; + public GreetingController(GreetingService greetingService, AppProps props) { + this.greetingService = greetingService; logger.info("ATTENTION! props.getMessage(): {}", props.getMessage()); } //http://localhost:8080/hello?name=ddd @GetMapping("/hello") public Map sayHello(@RequestParam(name="name") String name) { - return this.greeting.sayHello(name); + return this.greetingService.sayHello(name); } } diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingControllerRstyle.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingControllerRstyle.java index 6ccf2ffb..6e0d88e1 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingControllerRstyle.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingControllerRstyle.java @@ -12,16 +12,16 @@ import java.util.Map; public class GreetingControllerRstyle { private static final Logger logger = LoggerFactory.getLogger(GreetingControllerRstyle.class); - private final Greeting greeting; + private final GreetingService greetingService; - public GreetingControllerRstyle(Greeting greeting) { + public GreetingControllerRstyle(GreetingService greetingService) { logger.info("Я НАСТОЯЩИЙ БИН!!!"); - this.greeting = greeting; + this.greetingService = greetingService; } //http://localhost:8080/hello/jone @GetMapping(value="/hello/{name}") public Map sayHello(@PathVariable("name") String name) { - return this.greeting.sayHello(name); + return this.greetingService.sayHello(name); } } diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingService.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingService.java index b563310a..f520efcd 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingService.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingService.java @@ -1,17 +1,7 @@ package ru.otus.mainpackage.welcome; -import org.springframework.stereotype.Service; - -import java.util.HashMap; import java.util.Map; -@Service -public class GreetingService implements Greeting { - - @Override - public Map sayHello(String name) { - Map map = new HashMap<>(); - map.put(name, "Hello, " + name); - return map; - } +public interface GreetingService { + Map sayHello(String name); } diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingServiceServiceImpl.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingServiceServiceImpl.java new file mode 100644 index 00000000..36c22c65 --- /dev/null +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/GreetingServiceServiceImpl.java @@ -0,0 +1,17 @@ +package ru.otus.mainpackage.welcome; + +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + +@Service +public class GreetingServiceServiceImpl implements GreetingService { + + @Override + public Map sayHello(String name) { + Map map = new HashMap<>(); + map.put(name, "Hello, " + name); + return map; + } +} diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/LocalHello.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/LocalHello.java index d265f8b9..642fc4ca 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/LocalHello.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/java/ru/otus/mainpackage/welcome/LocalHello.java @@ -4,7 +4,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.MessageSource; import org.springframework.stereotype.Component; -import ru.otus.mainpackage.configs.YamlProps; +import ru.otus.mainpackage.configs.AppProps; import javax.annotation.PostConstruct; @@ -13,9 +13,9 @@ public class LocalHello { private static final Logger logger = LoggerFactory.getLogger(LocalHello.class); private final MessageSource messageSource; - private final YamlProps props; + private final AppProps props; - public LocalHello(MessageSource messageSource, YamlProps props) { + public LocalHello(MessageSource messageSource, AppProps props) { this.messageSource = messageSource; this.props = props; } diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/resources/application.yml b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/resources/application.yml index f2e30c2c..7107d621 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/resources/application.yml +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/main/resources/application.yml @@ -8,8 +8,8 @@ management: include: info, health, beans application: - message: "Test Props msg" - locale: ru_RU + message: "Test Props msg@@@" + locale: en messager: message: "Hello from Messager" \ No newline at end of file diff --git a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/test/java/ru/otus/mainpackage/welcome/GreetingControllerTest.java b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/test/java/ru/otus/mainpackage/welcome/GreetingControllerTest.java index 73d586a5..eb07243c 100644 --- a/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/test/java/ru/otus/mainpackage/welcome/GreetingControllerTest.java +++ b/2020-08/spring-04-springboot/spring-04-springboot-demo/application/src/test/java/ru/otus/mainpackage/welcome/GreetingControllerTest.java @@ -24,7 +24,7 @@ public class GreetingControllerTest { private MockMvc mockMvc; @MockBean - private Greeting greeting; + private GreetingService greetingService; @Test public void sayHelloTest() throws Exception { @@ -33,12 +33,12 @@ public class GreetingControllerTest { map.put(name, "Hello, " + name); String expectedResult = "{\"Mr.Test\":\"Hello, Mr.Test\"}"; - when(greeting.sayHello(name)).thenReturn(map); + when(greetingService.sayHello(name)).thenReturn(map); MockHttpServletResponse result = mockMvc.perform(get(String.format("/hello?name=%s", name))) .andReturn() .getResponse(); - verify(greeting, times(1)).sayHello(name); + verify(greetingService, times(1)).sayHello(name); System.out.println(); assertThat(result.getContentAsString()).isEqualTo(expectedResult); } @@ -50,12 +50,12 @@ public class GreetingControllerTest { map.put(name, "Hello, " + name); String expectedResult = "{\"Mr.Test\":\"Hello, Mr.Test\"}"; - when(greeting.sayHello(name)).thenReturn(map); + when(greetingService.sayHello(name)).thenReturn(map); MockHttpServletResponse result = mockMvc.perform(get(String.format("/hello/%s", name))) .andReturn() .getResponse(); - verify(greeting, times(1)).sayHello(name); + verify(greetingService, times(1)).sayHello(name); System.out.println(); assertThat(result.getContentAsString()).isEqualTo(expectedResult); }