-
Spring Bean
Spring Bean 나는 Spring Boot를 시작하면서 Bean이라는 녀석을 처음 접하게 되었다. 생소하기도 하였고, 개념에 쉽게 접근하기 어려웠다. Bean에 대해 설명하기에 앞서, 먼저 알아야 하는 녀석들이 있다. IOC(Inversion Of Control) Inversion of Control : 제어권 역전(의존관계) 즉, 어떤 객체가 사용할 객체를 직접 선언하는 것이 아닌, 외부에서 사용할 객체를 주입받아 객체간의 의존도를 낮추어 준다. 아래의 예시를 보자. 일반적인 제어권 @Service public class UserService { private UserRepository u...
-
Scala
Scala Java와 Scala를 비교하였을 때 표현, 문법 등에서 대표적으로 다른 점을 정리하였습니다. 1. Scala는 순수한 객체지향적 언어이다. Java에서는 기본적인 타입과 참조 가능한 타입이 분리되어 있지만, scala는 숫자와 함수를 포함한 모든 것이 객체이다. 1 + 2 * 3 사실 이 표현식은 1.+(2.*(3)) 함수 호출로만 이루어져있다. 위처럼 +, * 는 scala에서의 식별자가 된다. 2. 하나의 인자를 가지는 함수는 이항연산자처럼 표현 위에서의 +, * 의 경우와 같이, 다른 함수들도 하나의 인자를 가질 경우에, 이항연산자처럼 표현이 가능하다. Thread.sle...
-
특정 요청에 대한 CORS 비허용
api 연동을 하는데, 특정 경로에서만 CORS(교차 출처 리소스 공유)가 허용되지 않는 오류가 떴다. 분명히 WebMvcConfigurer를 상속받아 모든 경로와 Origin에 대해서 모두 허용하였지만, 오류가 났었다. 해결 방법 curl로 OPTIONS 메소드로 요청을 날려보자. -> 이때 401 에러가 뜬다면, SecurityConfig에서 OPTIONS 또한 permitAll을 해주어야 한다. 원인 POST 메소드에 대해서만 permitAll을 하였더니, OPTIONS는 권한이 부족해 접근하지 못하는 문제가 생겼다. 이로 인해, OPTIONS 요청으로 Cross...