Spring(스프링)
-
스프링 시큐리티 설정 이모저모Spring(스프링)/시큐리티 2018. 9. 5. 09:10
#시큐리티 설정 1.1) login-processing-url => RequestMapping처럼 action url과 연결됨2) authentication-success-handler-ref => 로그인 성공 시 호출됨가) 인증 성공 후 핸들러를 SavedRequestAwareAuthenticationSuccessHandler 상속나) onAuthenticationSucess를 오버라이드A) Authentication 메소드는 회원정보 제공 (principal, redential)->해당 메소드는 SecurityContext에 보관된다.->SecurityContext는 SecurityContextHolder에 담아 보관하게 된다.->최종적으로 SecurityContextHolder.getContext(..
-
스프링 AOP 용어 짚고 넘어가기Spring(스프링)/AOP 2016. 9. 25. 20:23
Aspect - 공통 관심사에 대한 추상적인 명칭. 예를 들어 로깅이나 보안, 트랜잭션과 같은 기능자체에 대한 용어 Advice - 실제로 기능을 구현한 객체 Join points - 공통 관심사를 적용할 수 있는 대상. Spring AOP에서는 각 객체의 메소드가 이에 해당 Pointcuts - 여러 메소드 중 실제 Advice가 적용될 대상 메소드 target - 대상 메소드를 가지는 객체 Proxy - Advice가 적용되었을 때 만들어지는 객체 Introduction - target에는 없는 새로운 메소드나 인스턴스 변수를 추가하는 기능 Weavcing - Advice와 target이 결합되어서 프록시 객체를 만드는 과정
-
스프링 Log4j 다루기Spring(스프링) 2016. 4. 13. 18:11
※ 해당 게시글은 DispatchServlet(Interceptor)을 통한 로그를 남기는 용도가 아닌 자바에서 사용하던 방식을 스프링 프로젝트에 구성한것을 토대로 작성하였음을 알려 드립니다 자 항상 더 좋은? 개발자가 되기 위해서 노력하는것도 좋지만 사용하기 앞서 왜 사용하는지 그리고 내가 사용할려고하는것의 구조 및 핵심 내용을 알고 넘어가기 바란다.. 그렇다고 내 글이 어마어마한 도움을 주는 정도가 아니다. 내가 알고 있는 정보를 공유하며 피드백을 받고 더불어 문제가 발생해서 어려움을 겪는 사람들에게 희망을 주고자 작성을 했다. 우선 우리가 무심코 사용하는 System.out.println();
-
CGLIB 란?Spring(스프링)/AOP 2016. 2. 17. 17:32
CGLib 소개 CGLIB는 코드 생성 라이브러리로서(Code Generator Library) 런타임에 동적으로 자바 클래스의 프록시를 생성해주는 기능을 제공한다. CGLIB를 사용하면 매우 쉽게 프록시 객체를 생성할 수 있으며, 성능 또한 우수하다. 더불어, 인터페이스가 아닌 클래스에 대해서 동적 프록시를 생성할 수 있기 때문에 다양한 프로젝트에서 널리 사용되고 있다. 예를 들어, Hibernate는 자바빈 객체에 대한 프록시를 생성할 때 CGLIB를 사용하며, Spring은 프록시 기반의 AOP를 구현할 때 CGLIB를 사용하고 있다. 아래는 CGLib를 이용한 객체 만들기 자료가 링크되어있다. CGLIB를 이용한 프록시 객체 만들기
-
스프링 컴포넌트 스캔(component-scan) 짚고 넘어가기Spring(스프링) 2016. 1. 2. 11:25
2015년..시간 진짜 빨리 지나갔네요 벌써 2016년이라니..새해 복 많이 받으세요 ^^오늘도 기초 공부중 짚고 넘어갈게 있어서 정리해보는 겸 글을 올립니다 ㅎㅎ 그냥 흔히들 사용하고 있는 어노테이션을 이용한 자동 스캔 인데요 스프링 2.5 부터는 태그를 추가하면 스프링은 지정한 패키지에@Component 어노테이션이 적용되어 있을경우 클래스를 자동으로 빈으로 등록하는 기능을 제공 하고 있는데요 좀더 자세히 짚고 넘어가자면 는 다음과 같이 BeanPostPRocessor를 등록해 줍니다 - RequiredAnnotaionBeanPostProcessor- AutowiredAnnotaionBeanPostProcessor- CommonAnnotaionBeanPostProcessor- Configuration..
-
스프링 ApplicationContext 동작방식Spring(스프링) 2015. 12. 31. 16:20
Singleton Registry Spring의 Application Context는 기본적으로 bean 생성에 있어 다음과 같이 동작한다. Spring 은 디폴트로 내부에서 생성하는 Bean object 를 singleton으로 만든다. 이것은 디자인 패턴의 싱글톤과 비슷한 개념이지만, java 의 일반 구현방법은 확연히 다르다.(참고: Singleton Pattern)즉, Spring container 에서 object 를 singleton registry 에 관리하며 singleton으로 동작하도록 제어한다.Spring의 ApplicationContext 는 Singleton을 저장하고 관리하는 Singleton registry 이다. * 왜 Spring 은 default로 bean을 singlet..
-
스프링 url-pattern 설정(/ 와 *.) 차이에 대한 개념!!Spring(스프링) 2015. 12. 1. 09:46
[*.do에서 /* 로 바꾸게 된 이유]스프링 3.1 샘플 프로젝트의 web.xml(DD) 구성 시 url-pattern을 *.do와 같이 설정하였다.이유는 단순하다.프로젝트를 진행할 때 항상 *.do를 사용했기 때문이다. 하지만 REST 방식의 웹 어플리케이션을 구성하기 위해서는 다음과 같은 URL 형식을 제공해야 하는데 현재는 *.do와 같이 되어 있기 때문에 pattern을 /* 와 같이 변경해야만 했다.http://localhost:8080/user/list [현상]이제 내가 만들어 놓은 프로젝트는 REST 방식을 지원하는 spring web application이 되었다.허나 controller mapping url을 호출하면 404 에러가 발생하면서 아래와 같은 로그가 찍힌다.No mappin..