๋ฐ์ํ ๊ฐ๋ฐ/Web21 [Spring] ๋น(bean)์ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ 1. ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ ์ปดํฌ๋ํธ ์ค์บ์ ์๋ฆฌ @Component ์ด๋ ธํ ์ด์ ์ด ์ ์ธ๋์ด ์์ผ๋ฉด ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก @Controller ์ปจํธ๋กค๋ฌ๊ฐ ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก๋ ์ด์ ๋ ์ปดํฌ๋ํธ ์ค์บ ๋๋ฌธ! (@Controller ์ด๋ ธํ ์ด์ ์ ์ดํด๋ณด๋ฉด @Component๊ฐ ์ ์ธ๋ ๊ฒ์ ๋ณผ ์ ์์) @Service, @Repository๋ ๋ง์ฐฌ๊ฐ์ง๋ก @Component๊ฐ ์ ์ธ๋์ด ์์ด ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก ๋๋ค. ์์ OrderController.java @Controller public class OrderController { private final OrderService orderService; @Autowired public OrderController(OrderServic.. 2022. 7. 1. [Web] ๋๊ธฐ ๋ฐฉ์๊ณผ ๋น๋๊ธฐ ๋ฐฉ์์ ์ฐจ์ด์ ๋๊ธฐ(synchronous) ๋ฐฉ์ ์์ฒญ๊ณผ ๊ฒฐ๊ณผ๊ฐ ๋์์ ์ผ์ด๋๋ ๋ฐฉ์์ผ๋ก ์์ฒญ์ ๋ณด๋ธ ํ ์๋ต์ ๋ฐ์์ผ ๋ค์ ๋์์ด ์งํ๋๋ค. ์์ฒญ๊ณผ ๊ฒฐ๊ณผ๊ฐ ํ ์๋ฆฌ์ ๋์์ ๋ํ๋๋ ๊ฒ์ผ๋ก ์ฌ์ฉ์๊ฐ ์๋ฒ๋ก ์์ฒญ์ ๋ณด๋์ ๊ฒฝ์ฐ ์์ฒญ์ ๋ํ ์๋ต์ ๋ฆฌํด๋ฐ๊ธฐ ์ ๊น์ง๋ ๋ค๋ฅธ ๊ฒ์ ํ์ง ๋ชปํ๊ณ ๊ธฐ๋ค๋ ค์ผ ํ๋ค. ํน์ ํ๋ก๊ทธ๋จ์ ๊ตฌ๋์ํค๋ ๋ฐ ์๊ฐ์ด 5๋ถ ์์๋๋ค๊ณ ํ๋ฉด, ์ด ํ๋ก๊ทธ๋จ์ด ๊ตฌ๋๋๋ 5๋ถ๋์ ์ปดํจํฐ๋ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ ๋์์ํค์ง ๋ชปํ๊ณ , ๊ตฌ๋๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ ค์ผ ํ๋ค. ์ฅ์ : ์ค๊ณ๊ฐ ๊ฐ๋จํ๊ณ , ์ง๊ด์ ์ด๋ค. ๋จ์ : ์์ฒญ์ ๋ํ ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋๊ธฐ ์ ๊น์ง ๋๊ธฐํด์ผ ํ๋ค. ๋น๋๊ธฐ(Asynchronous) ๋ฐฉ์ ์์ฒญ๊ณผ ๊ฒฐ๊ณผ๊ฐ ๋์์ ์ผ์ด๋์ง ์๋ ๋ฐฉ์์ผ๋ก ์์ฒญ๊ณผ ๊ฒฐ๊ณผ๊ฐ ๋์์ ์ผ์ด๋์ง ์๋๋ค. ์์ฒญํ ๊ณณ์ ๊ฒฐ๊ณผ๊ฐ ๋ํ๋์ง ์์ผ๋ฉฐ, .. 2022. 5. 4. [Spring Framework] CORS ์ ์ฉํ๊ธฐ - @CrossOrigin, <mvc:cors>, Filter CORS๋? test2.com:8080์ฌ์ดํธ์ test.com:18080 ์ฌ์ดํธ๋ ๋๋ฉ์ธ๊ณผ ํฌํธ๊ฐ ๋ค๋ฅด๋ค. ๋ฐ๋ผ์ test.com:18080์์ test2.com:8080์ฌ์ดํธ๋ก ์์ฒญ์ ๋ณด๋ด๊ฒ ๋๋ฉด ์๋์ ๊ฐ์ ์๋ฌ๋ฅผ ๋ง๋ ์ ์๋ค. Access to XMLHttpRequest at 'http://domain1:8080/xxxxx' from origin 'http://test.com:18080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. http://localhost:8080/test/1 ๋ฅผ ๊ธฐ์ค์ผ๋ก ๋น๊ตํด๋ณด๋ฉด URL ์ถ์ฒ ๋น๊ณ http://local.. 2022. 3. 11. [Web] Received fatal alert: handshake_failure ์๋ฌ ์ด ์๋ฌ๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ์ TLS ๋ฒ์ ์ด ๋ฌ๋ผ์ ๋ฐ์ํ๋ ์๋ฌ์ด๋ค. Received fatal alert: handshake_failure ์๋ฒ๋ JDK 1.6์ด๋ผ TLSv1๋ง ์ง์์ ํ๊ณ ์๋ค. ๋ฐ๋ผ์ https.protocols์ TLSv1๋ก ์ง์ ํด์ผ ํ๋ค. jdk ๋ฒ์ Default Other Support 1.6 TLS 1.0 TLS 1.1(111์ดํ ๋ฒ์ ), SSL v3.0 1.7 TLS 1.0 TLS 1.1, TLS 1.2, SSL v3.0 1.8 TLS 1.2 TLS 1.0, TLS 1.1, SSL v3.0 โป JDK 1.6.0_111 ์ดํ TLS1.1 ์ง์, 1.6.0_121 ์ดํ TLS 1.2 ์ง์(๋จ, jsse.enableSNIExtension ๋ฑ์ ์ต์ ์ค์ ์ ๋ถ๊ฐ๋ฅ) ํด๊ฒฐ ๋ฐฉ๋ฒ.. 2022. 3. 8. [Web] Restful API๋? API (Application Programming Interface) ์ํํธ์จ์ด๊ฐ ๋ค๋ฅธ ์ํํธ์จ์ด๋ก๋ถํฐ ์ง์ ๋ ํ์์ผ๋ก ๋ช ๋ น์ ๋ฐ์ ์ ์๋ ์๋จ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ์ผ์ข ์ ํ์ ์ ๋ณด๋ฅผ ์์ฒญํ๋ ์ง์ ๋ ํ์์ด ์์ด์ผ ํจ Restful API ๊ณผ๊ฑฐ์ SOAP๋ผ๋ ๋ณต์กํ ํ์ ๋์ฒด ๊ฐ์ฅ ์ค์ํ ํน์ฑ์ ๊ฐ ์์ฒญ์ด ์ด๋ค ๋์์ด๋ ์ ๋ณด๋ฅผ ์ํ ๊ฒ์ธ์ง ๊ทธ ์์ฒญ์ ๋ชจ์ต ์์ฒด๋ก ์ถ๋ก ์ด ๊ฐ๋ฅํด์ผ ํจ URL๋ง ๋ด๋ ์ด๋ค ์์ฒญ์ ํ๊ธฐ ์ํจ์ธ์ง ํ์ ํ ์ ์์ด์ผ ํจ! - 'https://domain/1, https://domain/hello ' : ๋ฌด์จ ๊ธฐ๋ฅ์ธ์ง ๋ช ํํ ํ์ ํ๊ธฐ ์ด๋ ค์ - https://๋๋ฉ์ธ/classes : class ๋ชฉ๋ก์ ๋ฐ์์ค๋ ์์ฒญ์ด๋ผ๋ ๊ฒ์ ํ์ ํ ์ ์์ { "result":[ {"idx":1,.. 2022. 2. 21. [Spring] Bean ๋ฑ๋ก ๋ฐฉ๋ฒ : @Bean vs @Component ์ฐจ์ด Spring์ด ๊ฐ์ฒด๋ฅผ ์ ์ดํ๊ธฐ ์ํด์๋ ๊ฐ์ฒด๋ค์ด Bean์ผ๋ก ๋ฑ๋ก๋์ด ์์ด์ผ ํ๋ค. ๊ธฐ์กด์ xml์ ํตํด bean์ผ๋ก ๋ฑ๋กํ๋๋ฐ Spring MVC์์๋ @Controller, @Service, @Repository ๋ฑ์ ์ด๋ ธํ ์ด์ ์ ํตํด Spring Container์ Bean์ผ๋ก ๋ฑ๋กํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ Configuration ๊ด๋ จ ๊ฐ์ฒด๋ @Bean๊ณผ @Component ์ด๋ ธํ ์ด์ ์ ํตํด Bean์ผ๋ก ๋ฑ๋กํ ์ ์๋ค. ์ฌ๊ธฐ์ @Bean๊ณผ @Component์ ์ฐจ์ด๋ ๋ฌด์์ผ๊น? @Bean ์ง์ ์ปจํธ๋กคํ ์ ์๋ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ Bean์ผ๋ก ๋ฑ๋กํ๊ณ ์ถ์ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ค. @Target({ElementType.METHOD, ElementType.ANNOTATION_TYPE}) @Retention(Re.. 2022. 2. 3. [Maven] ๋ฉ์ด๋ธ repository์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐํ๊ธฐ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ build.gradle์ด๋ pom.xml์ dependency์ ๋ช ์์ ์ฃผ๊ธฐ๋ง ํ๋ฉด maven repository์์ ์์์ ๊ฐ์ ธ์์ค๋ค. ํ์ง๋ง ํ์ฌ์ ๋ด๋ถ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ฐ์ maven repository์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? ๋ฐฉ๋ฒ1 pom.xml์ ๋จผ์ ๋ช ์ํ์ ๊ฒฝ์ฐ maven repository์ ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์กด์ฌํ์ง ์์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. ๋ก์ปฌ์ maven repository ์ ๊ฐ๋ณด๋ฉด ๋๋ ํ ๋ฆฌ๊ฐ ์์ฑ๋์ด ์๋ค. ์ฌ๊ธฐ์ test-1.0.0.jar ํ์ผ์ ์ถ๊ฐํด์ฃผ๋ฉด pom.xml์ ์๋ฌ๊ฐ ์ฌ๋ผ์ง๋ค. ๋ฐฉ๋ฒ2 mvn install:install-file -Dfile=D:\test-1.0.0.jar -DgroupId=com.test.ynzu -Dartifact.. 2022. 2. 3. [Spring] Spring Boot Admin ์ฌ์ฉํ๊ธฐ - Log, Login ์ ์ฉ 1. ๊ธฐ๋ณธ ์ธํ 1.1 Admin Server maven ํน์ gradle์ spring-boot-admin-starter-server ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ de.codecentric spring-boot-admin-starter-server 2.6.2 // https://mvnrepository.com/artifact/de.codecentric/spring-boot-admin-starter-server implementation 'de.codecentric:spring-boot-admin-starter-server:2.6.2' @EnableAdminServer ์ถ๊ฐ @SpringBootApplication @EnableAdminServer public class AdminApplication { public.. 2022. 1. 25. ์ด์ 1 2 3 ๋ค์ 728x90 ๋ฐ์ํ