전체 글
-
자바 SOLID(객체지향 5대원칙)!!Java(자바) 2015. 10. 1. 09:06
SRP(Single Responsibility Principle) 단일책임 원칙 - 책임의 기본 단위는 객체를 지칭한다. 즉, 객체는 단하나의 책임만 가여쟈 한다는 의미이다 (간혹 설계를 하다보면 예측하지 못한 변경사항이 발생하더라도 유연하고 확장성이 있도록 시스템 구조를 설계해야하는데 기존의 기능에 영향을 주는 요소를 적게 해야 한다는 것을 잊지말자) OCP(Open-Closed Principle) 개방-폐쇄 원칙 - 기존의 코드를 변경하지 않으면서 기능을 추가할 수 있도록 설계가 되어야 한다. ( 부모 클래스로 부터 상속받은 메서드등을 오버라이드로 수정하지 않고 확장해 나가야 한다) LSP(Liskov Substitution Principle) 리스코프 치환 원칙 - 프로그램에서 부모 클래스의 인스턴..
-
스프링 시큐리티 - 로그아웃Spring(스프링)/시큐리티 2015. 9. 27. 23:26
로그아웃 동작 원리모든 URL 요청은 서블릿 요청으로 리졸브 되기 전에 항상 스프링 시큐리티의 전체 필터 체인을 통과 시킵니다. 따라서 j_spring_security_logout에 대한 URL 요청이 시스템에 있는 JSP 페이지와 일치하지 않더라도 이 요청을 처리하기 위해 실제 JSP 나 스프링 MVC 대상 URL을 두지 않아도 됩니다.j_spring_security_logout 에 대한 URL 요청은 logoutFilter가 가로챕니다. logout-url 어트리뷰트에 지정한 로그아웃 URL을 감시하고 사용자를 로그아웃 시키는데 이때 다음 과정은 3단계로 나뉘어 집니다.1. HTTP 세션 무효화(invalidate-session이 true로 설정된 경우)2. SecurityContext 초기화(사용자..
-
스프링 viewResolverSpring(스프링) 2015. 9. 25. 14:55
뷰 리졸빙(View resolving) 사용자에게 결과를 랜더링하여 보여주기 위하여 사용 뷰 리졸버 구현체 뷰 리졸버 설명 BeannameViewResolver 논리적 뷰 이름과 동일한 ID를 갖는 으로 등록된 View의 구현체를 찾는다. ContentNegotiatingViewResolver 요청되는 콘텐츠 형식에 기반을 두어 선택한 하나 이상의 다른 뷰 리졸버에 위임한다. FreeMarkerViewResolver FreeMarker 기반의 템플릿을 찾는다. 경로는 논리적 뷰 이름에 접두어와 접미어를 붙여 구성 InternalResourceViewResolver 웹 어플리케이션의 WAR 파일 내에 포함된 뷰 템플릿을 찾는다. 뷰 템플릿의 경로는 논리적 뷰 이름에 접두어와 접미어를 붙여 구성 Jasper..
-
-
스프링 @ResponseBody 어노테이션Spring(스프링) 2015. 9. 15. 17:35
@ResponseBody 이해하기 메소드에 @ResponseBody 로 어노테이션이 되어 있다면 메소드에서 리턴되는 값은 View 를 통해서 출력되지 않고 HTTP Response Body 에 직접 쓰여지게 됩니다. 이때 쓰여지기 전에 리턴되는 데이터 타입에 따라 MessageConverter 에서 변환이 이뤄진 후 쓰여지게 됩니다. MessageConverter 의 종류 - StringHttpMessageConverter - FormHttpMessageConverter - ByteArrayMessageConverter - MarshallingHttpMessageConverter - MappingJacksonHttpMessageConverter Jackson's ObjectMappter 를 사용하여 re..