TIL
103
EngineeringTILCloud Infrastructure
Docker 시작하기
Windows 10과 맥에서 docker를 설치하고 WSL과 통합하여 기본적인 컨테이너를 올려보는 기회. 현 시점에서 WSL2+Ubuntu는 기본 사양이므로 넘어가도록 하겠다. 필요하면 이 링크 참고. 바쁜 사람들을 위한 짧은 코드 (powershell에서 실행해야된다) WSL 설치 후 MS스토어에서 Ubuntu를 받으면 된다. 대부분 Ubuntu를 많이 쓴다. 추후 wsl을 사용하기 위해 Windows Terminal도 설치하면 좋다. 여기서는 생략. 이제 윈도우에 도커를 설치 하자. 맥은 여기 설치 후 확인은 docker 명령어
BlogTILThink
2021 1/4 중간점검 part3
자바 다시 보기 로드맵 짜기 디자인 패턴 책 비교 C 다시보기 로드맵 짜기 → Do it 자바 프로그래밍 (우테코 할 때 보던거 마저 보기) [ ] Class Object String Wrapper [ ] ⭐️ Generics [ ] Collection → 아는 내용이니 간략하게만 지나가겠음 List ArrayList LinkedList Set HashSet TreeSet Map HashMap TreeMap [ ] 내부클래스 익명 내부 클래스 [ ] ⭐️ Lambda Functional programming Lambda
EngineeringTILWeb application
Maven과 gradle의 차이
두 빌드 툴의 사용법은 인터넷에 잘 정리된 글이 많으니 차이점에 대해서 설명해보고자 한다. Apache에서 만든 소프트웨어 프로젝트 관리 및 comprehension 툴이다. POM 개념을 기반으로 프로젝트의 빌드, 보고 및 문서를 중앙 관리할 수 있다. → 프로젝트의 빌드 Lifecycle 기반 프레임워크. mvn 명령어로 관리한다. XML기반의 pom.xml파일로 설정한다. Maven을 대체할 수 있는 프로젝트 구성 관리 및 범용 빌드 툴이다. gradle 명령어로 관리한다. 스크립트 기반의 build.gradle파일로 관리한다
FundamentalTIL
REST의 의미와 연결된 지식들
REpresentational State Transfer, Roy Fielding REpresentational State Transfer → 표현 상태 전송 월드 와이드 웹(World Wide Web a.k.a WWW)과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식으로 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반에 대한 패턴이다. REST가 디자인 패턴이다, 아키텍처다 많은 이야기가 존재하는데, 하나의 아키텍처로 볼 수 있다. 좀 더 정확한 표현으로 말하자면, REST 는 Resource Orie
FundamentalTILNetwork
RESTful API 가이드
REpresentational State Transfer, Roy Fielding REST는 하나의 아키텍처로 볼 수 있다. 좀 더 정확한 표현으로 말하자면, REST 는 Resource Oriented Architecture 이다. API 설계의 중심에 자원(Resource)이 있고 HTTP Method 를 통해 자원을 처리하도록 설계하는 것이다. 1) URI는 정보의 자원을 표현해야 한다. → 리소스명은 동사보다는 명사를 사용 2) 자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE 등)로 표현 3
Java EcoTILSpring Framework
Spring Boot; Exception
아래의 3가지 방법이 있다. 자바의 방법 : try/catch 사용 컨트롤러 단위 : 각각의 컨트롤러에서 @ExceptionHandler 사용 전역 처리 : @ControllerAdvice을 사용한 전역 예외처리 @ExceptionHandler는 중복코드가 발생한다고 한다.. 여기서 나올 중복 코드가 그 중복이 아닐텐데.. 스프링 3.2에서 추가됨. Annotation만으로 추가 설정없이 예외 처리 가능. @ControllerAdvice : 예외처리 객체임을 알림. @org.springframework.web.bind.annotat
Java EcoTILSpring Framework
Spring Boot; AOP
스프링 부트에서의 AOP도 역시 마찬가지로 적용할 수 있다. slf4j 로깅을 aspect로 등록하는 코드. 예제로써 보자.. 모르는 내가 봐도 좋은 코드는 아닌 것같음. 책에 또 코드 빠져있음…. 따로 bean등록을 하지 않았기 때문에 component scan으로 잡는다. AOP를 사용하기 위해 Aspect 어노테이션을 붙인다. Slf4j 어노테이션으로 slf4j 객체를 주입받는다. (log) Around로 aspect가 작동할 범위를 execution 필터 지정한다. execution : 하위 또는 지정된 클래스나 메소드에 필
Java EcoTILSpring Framework
Spring Boot; Interceptor
스프링의 인터셉터는 어떤 URI를 호출했을 때 요청 컨트롤러가 처리되기 전 또는 후 작업을 하기 위해 사용 된다 (프록시 패턴) 이런 역할은 Filter와 Interceptor로 수행할 수 있다. filter는 dispatcher servlet 앞 단에서 동작 interceptor는 handler로 가기 전 동작 filter는 servlet의 일부 기능이다. interceptor는 spring framework내에 있기 때문에 bean을 사용할 수 있다. filter는 웹 전반에 사용되는 기능을 구현 → RESTful interce