Spring Framework/Spring boot: 66개의 글
스프링부트 : REST어플리케이션에서 예외처리하기(원문소스: http://www.ekiras.com/2016/02/how-to-do-exception-handling-in-springboot-rest-application.html) 기억할 점스프링 부트 어플리케이션에서 예외처리하는 방법은 3가지다: 전역 처리 Global Level using - @ControllerAdvice컨트롤러단에서 처리 Controller Level using - @ExceptionHandler 메소드단위 처리 Method Level using - try/catch REST 어플리케이션에서 예외처리하기 예외처리를 테스트하기위에 3가지 예외를 만들것이다: 모든 커스텀 예외의 부모가 될 BaseException.Base Except..
Global Exception Handling for Spring-Boot Application Using @ControllerAdvice @ControllerAdvice public class GlobalExceptionHandling { protected Logger logger; public GlobalExceptionHandling() { logger = LoggerFactory.getLogger(getClass()); } @ResponseBody public ResponseEntity handleUnauthenticationException(Exception e) { return errorResponse(e, HttpStatus.BAD_REQUEST); } @ExceptionHandler({Da..
Exception Handling in Spring MVC(원문소스: HTTPS://SPRING.IO/BLOG/2013/11/01/EXCEPTION-HANDLING-IN-SPRING-MVC)Spring MVC는 예외처리를 위한 몇가지 훌륭한 접근법을 제공해주지만 Spring MVC를 가르칠때 학생들이 종종 헷갈려하거나 불편해한다는 것을 알았다.이 글에서 이를 위해 사용가능한 다양한 옵션을 보여줄 것이다. 우리의 목표는 가능한한 컨트롤러 메소드에서 명시적으로 예외처리를 하지 않는 것이다. 이들의 횡단관심사cross-cutting concern는 전용코드에서 별도로 처리하는 더 나은 방식을 제공해준다.3가지 옵션이 있다: 예외별, 컨트롤러별, 전역별 per exception, per controller or..
Spring Boot And OAuth2(원문소스: https://spring.io/guides/tutorials/spring-boot-oauth2/) Authorization 서버 돌리기 Hosting an Authorization Server이 섹션에서 우리는 우리가 만들 앱을 여전히 페이스북과 Github을 사용하여 인증이 가능하지만 스스로 억세스 토큰을 만들 수 있는 완전무결fully-fledged한 OAuth2 인가서버Authorization Server로 만들도록 수정할 것이다. 이들 토큰은 이후 보호된secure 백엔드 리소스에서 사용되거나 똑같은 방식으로 보호되고 있는 다른 어플리케이션과의 SSO를 하는데 쓸 수 있다.인증 설정을 정리하기 Tidying up the Authenticatio..
Spring Boot And OAuth2 (원문소스: https://spring.io/guides/tutorials/spring-boot-oauth2/) 목 차1-1) 페이스북으로 싱글사이온하기 Single Sign On With Facebook2-1) 기본 페이지 추가하기 Add a Welcome Page2-2) 로그아웃 버튼 추가하기 Add a Logout Button3-1) OAuth2 클라이언트 수동설정하기 Manual Configuration with OAuth2 Client3-2) Gibhub으로 로그인하기 Login with Github4-1) Authorization 서버 돌리기 Hosting an Authorization Server4-2) 비인증 사용자를 위한 에러페이지 추가하기 Add..
Spring Boot And OAuth2(원문소스: https://spring.io/guides/tutorials/spring-boot-oauth2/)기본페이지 추가하기 Add a Welcome Page이 섹션에서 우리는 '페이스북에 로그인하기'라는 명시적 링크를 추가함으로서 방금 만든 simple앱을 수정할 것이다. 즉시 리다이렉트되는 대신, 새 링크는 홈페이지에 보여져 사용자가 로그인을 할지 안할지 선택할 수 있게 된다. 사용자가 링크를 클릭했을 때만 인증된 컨탠트가 보여질 것이다.홈페이지의 조건적 컨탠트 Conditional Content in Home Page어떠한 컨탠트를 사용자가 인증했을 때 또는 우리가 서버측 랜더링(이를테면 Freemaker또는 Thymeleaf)을 사용하지 않을지 조건적으..
Spring Boot And OAuth2 (원문소스: https://spring.io/guides/tutorials/spring-boot-oauth2/) 목 차1-1) 페이스북으로 싱글사이온하기 Single Sign On With Facebook2-1) 기본 페이지 추가하기 Add a Welcome Page2-2) 로그아웃 버튼 추가하기 Add a Logout Button3-1) OAuth2 클라이언트 수동설정하기 Manual Configuration with OAuth2 Client3-2) Gibhub으로 로그인하기 Login with Github4-1) Authorization 서버 돌리기 Hosting an Authorization Server4-2) 비인증 사용자를 위한 에러페이지 추가하기 Add..
스프링 세션으로 스케일 아웃하기 Scaling out with Spring Session원문: http://www.jayway.com/2015/05/31/scaling-out-with-spring-session/Stateless 아키텍쳐는 근 몇년간 타당한 이유로 꾸준히 인기가 올라왔다. 하지만 stateful 세션기반의 어플리케이션도 꾸준히 중요한 역할을 이어왔다. 예를 들어 더 나은 보안을 위해 CSRF 토큰이 이슈될때처럼. 낮은 부하의 단일 서버를 배포할 때, 세션관리는 당신이 합리적인 타임아웃 유효기간을 사용하고 세션에 많은 양의 데이터를 저장하지 않는 것처럼 매우 직관적이다. 문제는 스케일 아웃하기 더 힘들다는 것이다 각각의 요청은 아마 다른 서버에 있을 지도 모르는 그에 상응하는 세션과 함께 ..
스프링 부트 레퍼런스 11장 첫번째 스프링 부트 어플리케이션 개발하기Developing your first Spring Boot application 원문링크: http://docs.spring.io/spring-boot/docs/current/reference/html/getting-started-first-application.html11. 첫번째 스프링 부트 어플리케이션 개발하기스프링 부트의 핵심기능 일부를 사용해서 자바로 간단한 "Hello World!” 웹 어플리케이션을 개발해보자. 여기선 대부분의 IDE가 지원하는 메이븐을 사용할 것이다.시작에 앞서 터미널을 열고 설치된 자바와 메이븐 버전을 확인해보자 $ java -version java version "1.7.0_51" Java(TM) SE..
스프링 시큐리티와 앵귤러JS Spring Security and AngularJS원문: https://spring.io/guides/tutorials/spring-security-and-angular-js/#_modular_angularjs_application모듈화한 앵귤러 JS 어플리케이션 Modular AngularJS Application이 섹션에서 우리는 어떻게 스프링 시큐티리와 앵귤러JS로 단일 페이지 어플리케이션을 만드는지 계속 얘기해볼 것이다. 이제 우리는 어떻게하면 클라이언트 코드를 모듈화하는지, 어떻게 하면 앵귤러가 기본값으로 사용하지만 대부분의 사용자가 싫어하는 ("/#/login"같은) 파편화된 표기없이 "멋진" URL 경로를 사용할 수 있는지를 보여줄 것이다. 이 글은 시리즈의 일..