전체 글(83)
-
스프링 AOP 용어 , 스프링 네임스페이스
스프링 AOP 용어 ◆ 타깃부가기능을 부여할 대상이다. 핵심기능을 담은 클래스일 수도 있지만 경우에 따라서는 다른 부가기능을 제공하는 프록시 오브젝트일 수도 있다. ◆ 어드바이스어드바이스는 타깃에세 제공할 부가기능을 담은 모듈이다. 어드바이스는 오브젝트로 정의하기도 하지만 메소드 레벨에서 정의할 수도 있다.어드바이스는 여러가지 동류가 있으며 MethodInterceptor처럼 메소드 호출과정에 전반적으로 참여하는것도 있고, 예외가 발생했을 때만 도작하는 어드바이스처럼 메소드 호출과정의 일부에서만 동작하는 어드바이스도 있다. ◆ 조인 포인트어드바이스가 적용될 수 있는 위치,스프링의 프록시 AOP에서 조인 포인트는 모세도의 실행 단계뿐이며 타깃 오브젝트가 구현한 인터페이스의 모든 메소드는 조인 포인트가 된다..
2018.01.18 -
토비의 스프링 3.1 - 싱글톤, 싱글톤 패턴
토비의 스프링 3.1 - 싱글톤, 싱글톤 패턴 ◈ 자바에서의 싱글톤 패턴* 클래스 밖에서는 오브젝트를 생성하지 못하도록 생성자를 private으로 만든다.* 스태틱 팩토리 메소드인 getInstance()를 만들고 이 메소드가 최초로 호출되는 시점에서 한번만 오브젝트가 만들어지게 한다.* 한번 오브젝트(싱글톤)이 만들어지고 난 후에는 getInstance()메소드를 통해 이미 만들어져 스태틱 필드에 저장해둔 오브젝트를 넘겨준다. - 싱글톤 패던을 적용한 UserDao-12345678910public class UserDao { private static UserDao INSTANCE; private UserDao(ConnectionMaker connectionMaker) { this.connectionM..
2017.12.21 -
객체지향 설계 5대 원칙 (SOLID)
객체지향 설계 5대 원칙 (SOLID) SRP (The Single Responsibility Principle) : 단일 책임 원칙클래스는 단일 책임을 가지고서 다른 클래스와의 의존성을 최대한 줄이는 목적.※ 클래스는 1개의 책임을 가져야 하며, 클래스를 변경하는 이유는 단 1개여야 한다.ex) class MemberFinder { find } (o) class MemberService { find , add, delete } (x) OCP (The Open Closed Principle) : 개방(확장) 폐쇄 원칙기능을 변경,확장은 가능(개방)하나 그 기능을 사용하는 코드는 수정하지 않는다(폐쇄)Interface를 통해 기능을 변경하거나 확장하는것은 가능하나, 외부에서 참조하는 코드는 수정하지 않는다..
2017.12.21 -
토비의 스프링 3.1 - DaoFactory 오브젝트 팩토리와 스프링 애플리케이션 컨텍스트의 동작방식 차이
토비의 스프링 3.1 - DaoFactory 오브젝트 팩토리와 스프링 애플리케이션 컨텍스트의 동작방식 차이 ◈ 의문1DaoFactory의 userDao()를 여러 번 호출했을 때 동일 한 오브젝트 인가?12345DaoFactory factory = new DaoFactory();UserDao dao1 = factory.userDao();UserDao dao2 = factory.userDao();System.out.println(dao1);System.out.println(dao2);cs ◈ 코드 실행 결과 ***.dao.UserDao@118f375 ***.dao.UserDao@128d475 ◈ 결론두 개는 각기 다른 값을 가진, 동일하지 않는 오브젝트. 오브젝트가 두 개가 생겼다.userDao를 매번 호..
2017.12.01 -
토비의 스프링 3.1 - 용어 정리 및 참조
토비의 스프링 3.1 - 용어 정리 및 참조 ◈ 용어싱글톤(singleton)애플리케이션 컨텍스트로 만든 객체 싱글톤 레지스트리(singleton registry)스프링이 직접 싱글톤 형태의 오브젝트를 만들고 관리(싱글톤을 저장하고 관리하는 레지스트리)스프링 컨테이너는 싱글톤을 생성,관리,공급하는 싱글톤 관리 컨테이너이기도 하다. 싱글톤 패턴(Singleton Pattern)어떤 클래스를 애플리케이션 내에서 제한된 인스턴스 개수, 이름처럼 주로 하나만 존재하도록 강제하는 패턴이다.이렇게 하나만 만들어지는 클래스의 오브젝트는 애플리케이션 내에서 전역적으로 접근이 가능하다.단지 오브젝트만 존재해야 하고, 이를 애플리케이션의 여러곳에서 공유하는 경우 주로 사용한다.디자인 패턴중 가장 자주 활용되는 패턴이기도 ..
2017.12.01