분류 전체보기49 Open Session in View Open Session in View 패턴은 영속성 컨텍스트의 생존 범위를 HTTP 요청( Request) 범위로 한정하는 방식이다. 기본적으로 웹 애플리케이션에서는 요청 단위로 영속성 컨텍스트를 열고 닫는다. 하지만 이 방식에서는 *뷰 렌더링 과정에서 지연 로딩이 발생하면 예외가 발생할 수 있다. 왜냐하면 요청이 끝나면서 영속성 컨텍스트가 이미 닫혀있기 때문이다.* 뷰 렌더링 과정 : 서버 측에서 HTML 페이지를 생성하는 과정 Open Session in View 패턴은 이러한 문제를 해결하기 위해 등장했다. 이 패턴을 사용하면 영속성 컨텍스트를 뷰 렌더링이 완료될 때까지 유지할 수 있다. 이를 통해 뷰 렌더링 중에도 지연 로딩이 가능해진다. 하지만 이 패턴은 주의해야 할 점이 있다. 동시성 문제:.. 2024. 4. 25. [토비의 스프링] 스프링의 이해와 원리 스프링이란 어떻게 오브젝트가 설계되고, 만들어지고, 어떻게 관계를 맺고 사용되는지에 관심을 갖는 프레임워크 - 143p 프로그래밍 모델 스프링이 제공하는 편리함은 객체지향 설계 원칙과 디자인 패턴의 핵심 원리를 갖고 있는 IoC/DI에서 온다. 또한 AOP를 이용하여 독립적으로 모듈화 할 수 있다. 왜 스프링이여야만 할까 싱글톤의 장점을 빼내오고자 추상 클래스의 중복 멤버 통합과 인터페이스의 다중 상속기능을 동시에 이용할 수 있다. 이 을 같이 사용하는 여러가지 코드 패턴들이 나왔고, 이것이 디자인 패턴의 근간이 될 수 있다. 1. 싱글톤 패턴 메모리 절약을 위해, 인스턴스가 필요할 때 똑같은 인스턴스를 새로 만들지 않고 기존의 인스턴스를 가져와 활용하는 기법을 말한다. 싱글콘 클래스는 고정된 메모리 영.. 2024. 3. 23. [나머지 연산] BOJ4375 문제 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 각 자릿수가 모두 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다. 출력 각 자릿수가 모두 1로만 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다. 예제 입력 1 3 7 9901 예제 출력 1 3 6 12 요약 : 2와 5로 나누어 떨어지지 않는 정수 N이 주어졌을 때, 1로만 이루어진 N의 배수를 찾는 문제 문제가 발생했다. 처음에 무작정 n을 구하려 하니 시간 초과가 났다. sum을 구하는 시간이 커지면서 발생하는 것이므로 반드시 sum을 구하는 시간을 단축해야 한다. import .. 2024. 3. 14. static 과 Bean 처음 Bean을 책으로나 강의 접했을 때 정말 와닿지 않았다. 실제 개발을 하다보니 의문점이 생겼고 역으로 이해를 하게 되어 공유하고 싶어졌다. 나의 경우는 static과의 차이점을 알아내니 이해하기 쉬웠다. 시작하기 앞서 선지식이 필요하다. 선지식으로 1.객체지향 개발의 지향점과 2.static과 instance의 메모리 할당 시점을 알아야 한다. 1.객체간의 결합은 약하고 유연성은 높게 2.메모리 할당 시점: static은 메소드 영역에 할당되고, instance 힙에 할당 된다. 스택은 메서드 호출과 관련된 정보를 저장하는 데 사용되며, 메서드 호출이 끝나면 해당 프레임이 스텍에서 제거된다. 본론으로 돌아가서 static을 사용하지 않고 Spring Bean을 사용하면 왜 객체지향 적개발이 될까??.. 2024. 2. 15. 이전 1 ··· 3 4 5 6 7 8 9 ··· 13 다음