본문 바로가기

나만의 작업/Spring

[SpringSecurity] Authentication(인증) 관련 클래스와 처리 Spring Security에 대해 큰 흐름은 알지만, 처음부터 적용하는게 아니면 어떤 권한을 주고 권한 체크하는 로직만 추가하거나 수정하며 생각없이 쓰게 되는데,어떤 흐름으로 되는지 전보다 좀 더 살펴볼 기회가 있었고 Spring Security의 각 클래스들이 어떤 일을 하는지에 대해 두서없이 소소하게 정리해봅니다.이 글에서 Spring Security Version은 3.2.5 버전이 기준입니다.1. 인증과 인가란 무엇인가? 인증 절차를 거친후..
[Spring] @Autowired의 Before/After Spring framework 2.5에 추가된 @Autowired annotation에 관한 글을 보고 정리. 알고있는 내용이기에~ 그냥 가볍게 Before 와 After code Before - @Autowired annotation이 없었을 때  applicationContext.xml에서 설정 <bean id="empDao" class="EmpDao" /> <bean id="empManager" class=..
[Spring] 스프링에서 VelocityTools 환경설정 스프링에서 벨로시티 뷰 템플릿 엔진을 사용하고 있는데 여기에 편리한 tools를 사용하기 위해서필요한 설정을 기억하기 위해 기록합니다.VelocityTools는 벨로시티 템플릿에서 숫자나 날짜, url등의 포맷팅을 지원하는 툴이고,VelocityTools프로젝트에는 GenericTools, VelocityView, VelocityStruts 세개의 부분으로 나눠져 있습니다.보통 GenericTools를 많이 쓸일이 많기 때문에~ 조금 정리해보면, ..
[Spring] 스프링 MVC를 이용한 웹 요청 처리 스프링 MVC를 이용한 웹 요청 처리구성요소DispatcherServlet : 클라이언트의 요청을 전달받음. 컨트롤러에게 클라이언트의 요청을 전달하고 컨트롤러가 리턴한 결과 값을 view에 전달하여 알맞은 응답을 생성하도록 한다.HandlerMapping : 클라이언트의 요청 URL을 어떤 컨트롤러가 처리할 지를 결정Controller : 클라이언트의 요청을 처리한 뒤, 그 결과를 DispatcherServlet에 알려줌.ModelAndView : ..
[Spring] Bean과 BeanFactory의 후처리 빈의 후처리 스 프링은 빈의 생명주기에 끼어들어 빈의 설정을 재검토하거나 바꿀 수 있는 2개의 기회를 제공한다. 후처리는 어떤 이벤트가 발생한 후에 처리되는 것이라고 추측할 수 있다. 이벤트란 빈이 설정되거나 인스턴스화되는 것을 말한다. BeanPostProcessor 인터페이스는 빈이 생성되거나 묶인 후에 변경할 수 있는 두개의 기회를 제공 Interface BeanPostProcessor에서는 두개의 메소드를 제공한다 postPr..
[Spring] 자동 묶기(Autowire) 자동 묶기(Autowire) <bean id=”foo” class= ”com.spring.Foo” autowire= ”autowire type” /> 자동 묶기의 네 종류 byName : 묶고자 하는 특성의 이름과 동일한 이름이나 ID를 가진 빈을 컨테이너에서 찾는다. 빈을 찾지 못하면 그 특성을 묶이지 않은 채로 남는다. byType : 묶 고자 하는 특성의 타입과 동일한 타입을 가진 빈을 컨테이너에서 찾는다...
[Spring] 세터 주입(Setter Injection)의 대안 세터 주입(Setter Injection)의 대안 - 생성자 주입(Constructor Injection) 세터 주입은 빈 특성을 설정하고 묶을 수 있는 직관적인 방법이지만, 한 가지 단점은 변경될 수 있는 모든 특성이 세터 메소드를 통해서 사용할 수 있다고 가정하는 것에 있다. 하지만 빈이 이와 같은 방식으로 작동하기를 원하지 않을 때, 이런 유형의 빈이 인스턴스화될 때에는 어떤 특성도 설정될 수 없으며, 따라서 빈이 유효하지 않은 상태로..
[Spring] 빈 묶기(Bean wiring) 빈 묶기(Bean wiring) XML로 묶기 : 다음을 이용해 스프링 컨테이너가 XML을 통한 빈 묶기를 지원한다. XmlBeanFactory ClassPathXmlApplicaionContext FileSystemXmlApplicationContext XmlWebApplicationContext 프로토타입과 싱글톤 비교 스프링의 모든 빈은 싱글톤. getBean()의 호출에 의해서든 묶기를 통해서든 간에, 컨테이너가 빈을 배포..
[Spring] 스프링 컨테이너의 두 종류 스프링 컨테이너의 두 종류 컨테이너 안의 빈(Bean) 컨 테이너는 스프링 프레임워크의 핵심이다. 스프링 컨테이너는 제어 역행(IoC)을 사용해 애플리케이션을 구성하는 컴포넌트들을 관리한다. 여기에는 협력하는 컴포넌트간의 연관관계를 생성하는 것이 포함된다. 그렇게 함으로써 객체는 좀더 명확하게 이해할 수 있고, 재사용이 가능해지며, 단위테스트가 쉬워진다. 스프링 컨테이너의 두 종류 org .springframework.beans.f..
[Spring] Spring 환경설정 /**************************************************************************스프링 공부하면서 정리한 내용을 그냥 올려봅니다.혼자 놀다가 중간에 에러난 부분도 기억삼아 올려놓은것이어서내용이 틀릴수도 있답니다. 이글은 "스프링 인 액션" 책을 열심히 보며 쓴 글입니다~@author 버리**************************************************************..
[Spring] Hitting the database * Hitting the database 1) Spring의 DataAccessException java.sql.SQLException은 checked Exception입니다. 즉, 개발자가 try-catch로 잡아줘야 합니다. 이는 코드를 난잡하게 만들수 있습니다.  그리고 SQLException이 제공하는 예외는 Spring에 비해서 매우 종류가 많지 않습니다.  DataAccessException은 SQLExcept..