Spring Framework/Spring boot: 66개의 글
원문: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.3-Release-Notes스프링부트 1.2이후 업그레이드된 것스프링 부트 1.2에서 제거된것 Deprecations from Spring Boot 1.2스프링 부트 1.2에서 디프리케이트된 클래스, 메소드, 프로퍼티들은 이번 릴리즈에서 제거되었다.업그레이드에 앞서 디프리케이트된 메소드를 호출하는지 먼저 확인해야한다. 잭슨 Jackson스프링 부터 1.2는 어플리케이션 컨텍스트내에 모든 ObjectMapper 를 가지는 잭슨 모듈에 등록했다. 이는 ObjectMapper bean의 모듈을 완전히 제어할수 없게 만들었기 때문에, 스프링 부트 1.3에서는 오직 자동설정된 Jackson..
원문: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.2-Release-Notes스프링 부트 1.1이후 업그레이드 된 것서블릿 3.1, 톰캣8 그리고 제티9 Servlet 3.1, Tomcat 8 and Jetty 9스프링부트는 이제 내장 서블릿 컨테이너로 톰캣8과 제티9를 사용한다. 이들은 서블릿 3.1과 바로 사용가능한 향상된 웹소킷을 제공해준다. 예전 버전을 선호한다면 여전히 톰캣7과 제티8을 쓸수있다 다운그레이드의 예제로 spring-boot-sample-tomcat7-jsp 와 spring-boot-sample-jetty8 을 참고하자. 로깅 출력 Logging output기본 로깅설정이 업데이트되 서 더이상 로그파일을 쓰지..
원문: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.1-Release-Notes스프링 부트 1.0이후 업그레이드된 것테스트 의존성 Test dependencesspring-boot-starter-test POM 은 더이상 spring-boot-starter-parent에 자동으로 포함되어지지 않는다. 부모POM에 테스트 의존성을 기본으로 추가한것은 좋은 아이디어 같았지만, 불행하게도 이들은 쉽게 수정하거나 제거되지않았다.1.0에서 1.1로 업그레이드되면서 이젠 spring-boot-starter-test 의존성을 직접 추가해줘야한다. 레디스 드라이버 Redis Driver스프링 부트 1.0은 Lettuce Redis 드라이버를 사용..
Usage of Swagger 2.0 in Spring Boot Applications to document APIs(원문링크: http://heidloff.net/article/usage-of-swagger-2-0-in-spring-boot-applications-to-document-apis/)IBM VP인 엔젤 디아즈(Angel Diaz)는 SearchCloudComputing의 인터뷰에서 "스웨거Swagger는 대부분의 개발자가 [REST] API를 그려내는 방식"이라고 인용하였다. 2.0버젼에서 확장성과 같은 많은 중요한 기능이 추가되었고 큰 커뮤니티와 많은 개발자들이 이제 이것을 사용하고 있다. 추가적으로 Open API Initiative의 일부로서 리눅스 재단하에 스웨거의 명세서가 열린 정..
Setting Up Swagger 2 with a Spring REST API(원문소스: http://www.baeldung.com/swagger-2-documentation-for-spring-rest-api) 1. 개요 OverviewREST API를 만들 때 문서화를 잘하는 것은 중요하다.더우기 API를 변경할 때마다 레퍼런스 문서에 똑같이 명시해주어야한다. 이것을 수작업으로 반영하는 것은 매우 지루한 일이므로, 이것을 자동화하는 것은 필수다.이 튜토리얼에서 우리는 스프링 REST 웹서비스를 위한 스웨거 2 Swagger 2 for a Spring REST web service를 들여다 볼것이다. 이 문서에서 스웨거 2 명세서의 구현체인 Springfox를 사용할 것이다.스웨거에 익숙하지않은 사용자..
스프링 MVC Test를 통해 자동생성된 코드와 손으로 쓰여진 문서를 합쳐서 REST 서비스를 문서화하기소개 Introduction스프링 REST Docs의 목표는 당신의 RESTful 서비스를 정확하고 읽기 편하게 문서화하는 것을 돕는 것이다.높은 수준의 문서화를 하는 것은 어렵다. 이 작업에 잘 맞는 툴을 사용하는 데 있어서의 어려움을 편리하게 하는 하나의 방법의 끝으로 스프링 REST Docs는 Asciidoctor를 사용한다. 아스키닥터는 평문을 처리하여 당신의 필요에 맞는 스타일과 레이어를 적용한 HTML를 만들어준다.스프링 REST Docs는 Spring MVC Test를 위해 쓰여진 테스트를 통해 만들어진 코드 조각들을 사용한다. 이 테스트 기반의 접근법test-driven approach은..
현재 오픈소스로 개발 중인 설치형 블로그를 서버에 올려서 테스트하기 위해서 jenkins를 사용해 자동 배포 설정을 하고 외장 톰캣을 사용하려고 했는데 문제가 생겼다.현재 개발 중인 프로젝트는 spring boot를 사용하는데 boot 버전마다 기본 톰캣 버전이 다르다.기본적으로 boot는 내장 톰캣을 사용하는데, 서버에 올려서 사용할 때 외장 톰캣을 사용하기 위해서 톰캣7으로 테스트 했는데 위와 같은 에러가 발생했다.정확히 문제가 무엇이냐면 boot가 버전마다 내장 톰캣 버전이 다르기 때문에 발생하는 에러다.spring boot 1.2.4 이상 : 내장 톰캣8spring boot 1.2.4 이하 : 내장 톰캣7 로컬 환경에서 외장 톰캣7을 사용했을 경우 발생한 에러심각: ContainerBase.add..
Spring Data JPA란? Spring Project 중 하나다. Spring Data Project는 여러가지 Data Repository(JPA, mongoDB, Neo4j, Redis, Hadoop 등)를 지원한다. Data JPA는 JPA를 Spring에서 쉽게 사용하게 만든 프로젝트이다. EntityAbstractPersistable : PK Type에 Primary Key가 자동으로 셋팅된다.?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263@Entity(name = "tbl_user")public class User extend..
① Http 요청 Client에서 웹 애플리케이션에 요청을 하기 위해 Http 요청을 한다. 요청을 하기 위한 여러 메타 데이터(URL, 파라미터 정보, Http method, header, cookie 등)를 전달하면 HttpServletRequest라는 객체로 요청 메타 정보를 담는다. HttpServletRequest는 Http 요청 메타 데이터를 담는 객체다. ② Controller 선택 직접 작성한 Controller로 가장 먼저 요청을 받는 것 처럼 보이지만 실제 처음 요청 받는 부분은 DispatcherServlet에서 처리하게 된다. 즉 DispatcherServlet에서 컨트롤러로 Http 요청을 위임하는 것이다. HandlerMapping : DispatcherServlet에서 Cont..
토이 프로젝트를 진행하다가 spring boot로 개발한 restful API에 CORS 적용이 안되서 에러가 났다.WAS를 spring boot에 내장되어 있는 embedded tomcat을 사용했는데 이 내장 톰캣에 어떻게 CORS를 적용하나 찾아보니 금방나왔다.설정으로 해결하지 않고 CORS Filter를 만들어서 사용한다. source?12345678910111213141516171819202122@Componentpublic class CORSFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(Ser..