filter와 interceptor filter 와 interceptor 는 AOP 와 함께 공통 기능을 모아서 처리할 수 있는 방법을 제공한다. filter 는 Dispatcher Servlet에 요청이 전달되기 전/후 로 스프링 컨테이너가 아닌 톰캣과 같은 웹 컨테이너 에 의해 관리된다. interceptor 는 Controller 를 호출하기 전/후에 스프링 컨텍스트 에서 동작한다. 필터는 다음 필터를 호출하기 위해 chain.doFilter 로 request, response 객체를 넘겨주기 때문에 원하는 객체를 넣어서 조작할 수 있지만 인터셉터는 디스패처 서블릿이 인터셉터 목록을 for문으로 돌면서 true 혹은 false를 반환해 동작을 제어하기 때문에 객체를 조작할 수 없다는 점에서 필터와 ..
Spring WEb MVC의 Dispatcher Servlet 동작원리 클라이언트의 요청을 Dispatcher Servlet이 최초로 받고 요청 정보를 통해 위임할 컨트롤러를 찾아서 HandlerMapping 에 전달한다. HandlerMapping 에서 Contoller 에 처리를 요청하고 controller가 처리한 요청을 HandlerAdapter 에서 ModelAndView 객체로 변환하여 dispatcher servlet 에 전달한다. dispatcher servlet은 전달받은 ModelAndView 객체를 이용해 매핑되는 view를 검색한다. ViewResolver 에서 처리 결과를 view에 전달하고 결과물을 dispatcher servlet에 전달한다. dispatcher servlet에..
JPA와 ORM JPA는 자바 언어를 DB가 이해할 수 있도록 하는 번역기라고 할 수 있다. 원래 DB는 SQL이라는 언어를 사용해서 객체를 저장하거나 불러올 수 있는데 매번 DB와 소통할 때 SQL을 작성하게 되면 객체지향적으로 프로그래밍을 할 수가 없다. 이러한 객체지향과 관계형 DB간 패러다임 불일치를 해결하기 위한 기술이 ORM 프레임워크이고 자바 진영의 ORM 기술 표준이 JPA이다. JPA는 개발자가 SQL을 작성하지 않아도 적절한 SQL을 생성해서 DB와 소통하고 객체를 Mapping해주기 때문에 생산성을 크게 높일 수 있고 DB를 바꾼다고 해도 매핑 정보가 class로 명시되어 있기 때문에 쿼리를 수정할 필요가 없어 유지보수에 유리하다. 그러나 쿼리가 자동으로 생성되는 만큼 개발자가 의도하..
문제링크 📝 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 입력 1 3 1 예제 출력 1 1 2 3 예제 입력 2 4 2 예제 출력 2 1 2 1 3 1 4 2 1 2 3 2 4 3 1 3 2 3 4 4 1 4 2 4 3 예제 입력 3 4 4 예제 출력 3 1 2 3 4 1 2 4 3 1 3 2 4 1 3..
문제링크 📝 문제 신종 바이러스인 웜 바이러스는 네트워크를 통해 전파된다. 한 컴퓨터가 웜 바이러스에 걸리면 그 컴퓨터와 네트워크 상에서 연결되어 있는 모든 컴퓨터는 웜 바이러스에 걸리게 된다. 예를 들어 7대의 컴퓨터가 과 같이 네트워크 상에서 연결되어 있다고 하자. 1번 컴퓨터가 웜 바이러스에 걸리면 웜 바이러스는 2번과 5번 컴퓨터를 거쳐 3번과 6번 컴퓨터까지 전파되어 2, 3, 5, 6 네 대의 컴퓨터는 웜 바이러스에 걸리게 된다. 하지만 4번과 7번 컴퓨터는 1번 컴퓨터와 네트워크상에서 연결되어 있지 않기 때문에 영향을 받지 않는다. 어느 날 1번 컴퓨터가 웜 바이러스에 걸렸다. 컴퓨터의 수와 네트워크 상에서 서로 연결되어 있는 정보가 주어질 때, 1번 컴퓨터를 통해 웜 바이러스에 걸리게 되는..
- Total
- Today
- Yesterday
- 정렬
- BFS
- 형변환
- 타입스크립트
- 알고리즘
- 자바트리
- 프로그래머스
- CS
- Queue
- 자바bfs
- Algorithm
- 리액트
- JavaScript
- 자바dp
- 스프링부트
- 자바
- DP
- Comparator
- java
- Nest
- 자바스크립트
- JPA
- 해시맵
- dfs
- SQL
- 스프링
- Spring
- 백준
- SQLD
- 이분탐색
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |