Developer/Spring
-
[Spring] 의존성 주입 방법Developer/Spring 2018. 8. 10. 12:22
Spring 의 Dependency Injection 의존성의 주입 방식은 대표적으로 3가지가 있다. 1. Constructor Injection Spring 4.3에서 단일 생성자의 경우 @Autowired가 필요가 없다. @Component public class ConstructorInjection { private final LoginService loginService; private final SignupService signupService; @Autowired public ConstructorInjection(LoginService loginService, SignupService signupService) { this.loginService = loginService; this.signu..
-
[Spring] DI 개념Developer/Spring 2013. 3. 13. 09:38
스프링 프레임워크의 가장 큰 특징 중 하나가 DI를 지원한다는 것입니다. DI(Dependency Injection), 한글로 하면 ‘의존성 주입’ 이라는데.. 이름만 봐서는 뭘 해주는 녀석인지 이해가 가지 않습니다. DI(Dependency Injection) ? 제가 생각할 때 DI를 사용하는 가장 큰 목적은 다음 한 줄로 나타낼 수 있을 것 같습니다. 코드 의존성 제거 - 수정 사항이 있을 때 손이 덜 가게 하고 싶다. 예를 들어 프로그램 시작 시, 동작하는 곳의 IP address를 알아야 한다고 가정합시다. IP address를 코드상에 기록한다면 설치할 때마다 매번 코드를 수정해야 하지요. 하드코딩된 IP address를 찾는 것도 일입니다. 파일에 IP address를 적어두고 프로그램이 실..
-
[Spring] 주요 모듈 구성Developer/Spring 2013. 2. 28. 13:55
1. 스프링 주요 모듈 목록 모듈명 설명 Core DI 기능을 비록한 프레임 워크의 기반을 제공 Beans BeanFactory 인터페이스를 통해 구현 expression 객체에 접근하고 객체를 조작하기 위한 언어를 제공 context spring-core와 spring-beans 모듈을 확장해, 국제화, 이벤트 처리, 리소스 로딩, 서블릿 컨테이너를 위한 컨텐스트 생성 등의 기능을 추가로 제공ApplicationContext 인터페이스를 통해 구현 context.support Ehcache, 메일, 스케줄링, UI의 Velocity 기능 지원 aop AOP Alliance에 호환되는 AOP 구현 aspects AspectJ와 통합을 제공 web 파일 업로드, locale 처리 등 웹 통합 기능 제공원격..
-
[Spring] AOPDeveloper/Spring 2013. 2. 28. 13:34
1. Spring AOP 개요- 관점1) 핵심 관심 사항(core concern)2) 공통 관심 사항(cross-cutting concern)- 특징 : 기존 OOP(객체지향) 의 공통 관심사항을 여러 모듈에서 적용하는데 한계가 존재, AOP는 핵심 관심 사항과 공통 관심 사항을 분리하여 구현 2. AOP 용어 - Target : 핵심사항(core)가 구현된 객체- Join Point : 공통 관심사항이 적용될 수 있는 지점- Point cut : Join Point 중 실제 공통 사항이 적용될 대상을 지정 - Advice 1) 공통 관심사항 구현 코드 + 적용시점 2) 적용 시점 : 핵심 로직 실행 전, 후, 정상종료 후, 비정상종료 후, 전/후 3) Weaving : JoinPoint의 Advice에..
-
[ibatis] Transaction txAdvice 옵션Developer/Spring 2012. 11. 2. 16:27
1 transaction (트랜젝션) 2 (1) ACID : 트랜젝션에서 추구했던 기본 4요소 (다 수행되던가 없던일 하던가) 3 2) Consistency : 일관성 DB가 트랜젝션 작업중 일관된 데이터를 유지해야 한다 4 3) Isolation : 독립성 다른 트랜젝션과 독립적으로 작업이 수행되어야 한다. 5 4) Durability : 내구성 일단 커밋된 데이터는 계속해서 유지되어야 한다. 시스템 오류라 할지라도... 6 (2) 프로그램적인 트랜젝션 7 1) TransactionTemplate을 사용하거나 PlatformTransactionManager를 직접 상속받아서 쓰는 방법이 있다. 8 2) RuntimeException 이 던져지면 rollback 이 된다. (그 외의 exception 은..