본문 바로가기

Programming/Spring27

[spring] Annotation 기반 AOP 설정 [spring] Annotation 기반 AOP 설정 Annotation 사용을 위한 XML 설정 advice, pointcut, aspect 필요 애스팩트 선언 Aspect 선언 @Aspect public class Advice2 {...} 메모리에 띄우기 위해 Component 추가 @Component @Aspect public class Advice2 {...} 포인트컷 선언 pointcut 추가 @Component @Aspect public class Advice2 { @Pointcut("execution(* user.service.*Service.login(..))") public void point(){} // id 역할을 하는 함수 } after-returning 만 결과값 핸들링이 가능하다.. 2016. 4. 22.
[spring] XML 기반 AOP 설정 [spring] XML 기반 AOP 설정 AOP 네임스페이스 선언 xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd 또는aop namespace 체크 AOP 관련 엘리먼트 XML 설정 파일에 여러 개 정의 할 수 있음 id 속성을 통해서 이름값을 명시 해당 이름으로 어드바이스 설정에서 참조함 애스팩트는 포이트컷과 어드바이스를 결합한 개념 AOP에서 가장 중요한 핵심 개념 직접 어드바이스를 정의하고자 하는 목적이 아니고 외부에서 정의한 어드바이.. 2016. 4. 21.
[spring] AOP (Aspect Oriented Programming) [spring] AOP (Aspect Oriented Programming) AOP 개념 관점지향 프로그래밍여러형태의 비즈니스 로직들이 있고, 매번 앞단, 뒷단에서 로그를 남기는 문장이 있는 경우 코드 중복 발생 코드 중복 회피를 위해 모듈화를 하고 호출하는 문장을 넣게 된다.두 가지 개념핵심 관심 (Core Concerns) 횡단 관심 (Crosscutting Concerns) OOP 의 문제점 코드 중복 발생 모듈화 하지만, 연결고리 발생 중복되는 코드 지저분한 코드 생산성의 저하 재활용성의 저하 변화의 어려움 EJB에서의 AOP ApectJ AOP 용어 조인포인트(JoinPoint) 포인트컷(PointCut) : 메소드선택 알고리즘 어드바이스(Advice) : 부가기능 (ex: log, 트랜젝션) .. 2016. 4. 21.
[spring] Annotation 기반 설정 [spring] Annotation 기반 설정 bean 태그를 기술하지 않고 어노테이션을 사용한다. 컴파일을 해도 사라지지 않는 주석 @Component public class UserDAO_JDBC implements UserDAO {...} Bean 태그를 대신하는 @Component 를 넣는다. 클래스명에서 첫글자를 소문자로 바꾼 것이 기본이름으로 들어간다. @Component(“userDAO_JDBC”) @Component 로 마킹함으로써 모두 메모리에 올라가게 된다.이름을 부여한다. @Component("service") public class UserServiceImpl implements UserService { … } Annotation 설정 Namespace 선언 Component 스캔 .. 2016. 4. 20.
[spring] DI 관련 Source 내용 [spring] DI 관련 Source 내용 스프링은 객체를 관리한다. 객체를 관리하는 역할을 스프링에 맡긴다. jar 기반으로 배포된다. 스프링을 사용하기 이전에 스프링이 관리할 클래스를 잘 디자인 해야 한다. context 이므로 환경설정 파일이 필요하다. applicationContext.xml 파일을 생성한다. public static void main(String[] args) { String[] config = {"applicationContext.xml"}; ApplicationContext context = new ClassPathXmlApplicationContext(config); } 스프링안에 설정한 다섯개의 객체가 메모리에 올라가 있다. UserService userService =.. 2016. 4. 20.
[spring] 데이터베이스 연동 [spring] 데이터베이스 연동 테이블 생성 drop table userinfo; create table userinfo ( userid varchar2(15) primary key, username varchar2(20), userpwd varchar2(10), email varchar2(50), phone varchar2(15), address varchar2(100) ); insert into userinfo (userid, username, userpwd, email, phone, address) values ('admin', '관리자', 'a1234', 'admin@mc.co.kr', '02-1234', '서울 역삼'); insert into userinfo (userid, username, .. 2016. 4. 19.