본문 바로가기

분류 전체보기72

[TIL] #36. AOP [ Spring AOP ] AOP (Aspect Oriented Programming): 관점 지향 프로그래밍: 어떤 로직을 핵심적인 관점/부가적인 관점으로 나누어서 보고, 그 관점을 기준으로 각각 모듈화하는 것    (모듈화 : 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것) 주요 개념Aspect : JointPoint + Advice -> 객체. 흩어진 관심사를 모듈화 한 것 (주로 부가기능을 모듈화 한다)Target : Aspect를 적용하는 곳Advice : 실질적으로 어떤 일을 해야할 지에 대한 것. 실질적인 부가기능을 담은 구현체JointPoint : Advice가 적용될 위치, 끼어들 수 있는 지점. 메서드 진입 지점, 생성자 호출 시점, 필드에서 값을 꺼내올 때 등 다양한 시점에 적용.. 2024. 6. 13.
[TIL] #35. Test Code - 단위테스트 [ 단위테스트 ] : 작은 단위로 잘게 쪼개서 해당 단위가 잘 작동하는지를 검사Junit 5 : 자바용 단위 테스트 프레임워크 Before - Afterpublic class BeforeAfterTest { @BeforeEach void setUp() { System.out.println("각각의 테스트 코드가 실행되기 전에 수행"); } @AfterEach void tearDown() { System.out.println("각각의 테스트 코드가 실행된 후에 수행\n"); } @BeforeAll static void beforeAll() { System.out.println("모든 테스트 코드가 실행되기 전에 최초로 수행\n.. 2024. 6. 12.
[TIL] #34. Web Application, Servlet [ Web ] : HTTP 기반으로 동작 Web Server: HTTP 기반으로 동작하는 서버로, 정적 리소스를 제공  ex) NGINX, Apache WAS (Web Application Server): HTTP 기반으로 동작 + 웹 서버의 기능  ex) Tomcat, Jetty, Undertow 웹 시스템 구성WAS와 DB만으로 서버를 구성하면  - WAS가 너무 많은 역할을 담당 (서버 과부하)  - 실행에 가장 중요한 로직인 Application 로직이 정적 리소스로 인해 실행되지 않음  - WAS에 장애가 생기면 오류 페이지가 없어서 아무 화면도 보여주지 않음 웹 구성의 장점1. 효율적인 리소스 관리2. 오류화면 제공  [ Servlet ] : HTTP 프로토콜 기반 요청 및 응답을 처리하는데 .. 2024. 6. 10.
[TIL] #33. ResponseEntity [ ResponseEntity란 ] HttpEntity를 상속받아 구현한 클래스이다. HttpEntity : HTTP 요청 혹은 응답에 해당하는 HttpHeader, HttpBody를 포함하는 클래스이다.ResponseEntity : 사용자의 HttpRequest에 대한 응답 데이터를 포함하는 클래스이다.  => HttpStatus, HttpHeaders, HttpBody를 포함한다.   [ ResponseEntity를 쓰는 이유 ] 서버 간의 통신에 필요한 정보를 제공할 수 있는 방법이다.적절한 상태 코드와 응답 헤더 및 응답 본문을 생성해서 클라이언트에 전달할 수 있다.    [ ResponseEntity를 잘 쓰는 법 ] 1. return : new 보다 builder패턴 사용하기// 생성자 패턴r.. 2024. 6. 10.