60 likes | 191 Views
Spring. ㅇ 스프링을 사용하는 이유 - 개발시 테스트하기 쉬운 구조로 개발하는 것이 가능하도록 지원 - 유지보수와 확장성에 큰 효과 ㆍ인스턴스 생성과 클래스간의 의존관계에 대한 고민을 줄여줌 ㆍ유지보수 및 확장성이 좋으려면 디자인 패턴까지 확실히 이해한 상황에서 설계 및 구현이 진행되어야 하지만 쉽지 않은 현실 .. 스프링은 개발자가 의도하지 않더라도 인스턴스 생성부터 의존관계를 관리하는 것이 가능하도록 지원. Spring.
E N D
Spring ㅇ 스프링을 사용하는 이유 - 개발시 테스트하기 쉬운 구조로 개발하는 것이 가능하도록 지원 - 유지보수와 확장성에 큰 효과 ㆍ인스턴스 생성과 클래스간의 의존관계에 대한 고민을 줄여줌 ㆍ유지보수 및 확장성이 좋으려면 디자인 패턴까지 확실히 이해한 상황에서 설계 및 구현이 진행되어야 하지만 쉽지 않은 현실.. 스프링은 개발자가 의도하지 않더라도 인스턴스 생성부터 의존관계를 관리하는 것이 가능하도록 지원
Spring ㅇ IoC (Inversion of Control) : 제어의 역전 클래스의 생명주기를 개발자가 제어하는 것이 아니라 스프링이 제어 ※ 일반 클래스(POJO)까지 생명주기를 스프링이 제어하면서 이슈가 되었지만 Tomcat을 사용하면서 IoC의 개념이 적용되고 있음 ※ POJO (Plain Old Java Object) : 오래된 방식의 자바 클래스 ㅇ DI (Dependency Injection) : 의존성 주입 사용할 클래스/메소드를 인터페이스로 미리 받아놓음 클래스 내에서 직접 인스턴스를 생성하지 않음
Spring public class MemberManager { // 회원 정보 입력 public void insertMember(MemberDto mDto) { MemberDao mDao = new MemberDao(); mDao.insertMember(mDto); } } public class MemberManagerImpl implements MemberManager { private MemberDao mDao = null; MemberManagerImpl(MemberDao mDao) { this.mDao = mDao; } // 회원 정보 입력 public void insertMember(MemberDto mDto) { mDao.insertMember(mDto); } } MemberDao / MemberManager interface 구현 후 외부 조립기를 사용하여 주입 스프링에서는 xml 설정으로 외부 조립기 기능 수행
Spring ㅇ AOP (Aspect Oriented Programming) : 관점 지향 프로그래밍 기능을 핵심 비지니스 로직과 공통 모듈로 구분하고, 핵심 로직에 영향을 미치지 않게 사이사이에 공통 모듈을 효과적으로 끼워넣는 개발 방법 공통 모듈(보안 인증, 로그 등)을 만든 후 작성하는 코드 밖에서 이 모듈을 비지니스 로직에 삽입하는 것
Spring 공통 모듈을 사용하는 일반 방식 List Log Module Write Modify Security Module Download
Spring AOP 적용 L o g S e c u r i t y List Write Modify Download