Spring Boot 15

@RequestMapping과 객체 전달

1. @RequestMapping @RequestMapping은 Mapping 주소를 통일시켜주는 역할을 한다. 가령 /api/v1이라는 mapping을 여러 메소드에 사용하고 싶을 때 하나하나 입력하는 것이 아닌, @RequestMapping를 통해 모든 url에 /api/v1 을 붙여주는 역할을 한다. 위와 같이 분명 url Mapping을 각각 user와 signin만 썼는데 @RequestMapping에 의해 해당 Controller내에는 무조건 /api/v1 이 다 포함되어 있게끔 설계가 되는 것이다. 이런식으로 설계시에 필요하다면 같은 url을 쓰게 될 경우 불편하게 다 입력하는 것이 아닌, 통일된 부분은 @RequestMapping을 활용해 좀 더 편리하게 사용할 수 있다. 객체 전달 위에서..

Spring Boot 2023.02.14

Spring Boot의 @Controller와 @RestController 의 차이

Spring Boot에서의 Controller는 크게 @Controller와 @RestController 두 가지가 있다. Controller는 이전 포스트에서 간단하게 설명했지만 여기서 @RestController와 @ResponseBody를 이해하기 위해서 다시 한번 언급해보도록 하겠다. 1. @Controller 앞서 말했듯이 @Controller는 thymeleaf를 사용하는 경우 templates 엔진을 이용해 View를 내부에 만들어 return값으로 필요한 파일을 불러오는 역할을 한다. 이때 View Resolver에 의해 경로를 앞과 뒤를 자른 후 return으로 파일을 불러오는게 특징이다. 2. @ResponseBody @RestController를 설명하기 이전에 @ResponseBod..

Spring Boot 2023.02.14

Spring Presentation Layer

Spring Boot에서 효율적인 개발을 위해 위와 같은 Presentation Layer패턴으로 개발한다. 오늘은 이 Layer에 대해서 알아보도록 하자. 먼저 Layer에 나와있는 각자의 역할은 아래와 같다. Client - 클라이언트, 서버가 제공하는 서비스를 요청하고, 서버로부터 받은 응답을 사용자에게 보여주는 역할을 한다. Dispatcher servlet - Spring MVC Framework의 Front Controller로써 웹요청과 응답의 사이클을 주도하는 역할을 한다. HadlerMapping - 요청시에 받은 URL을 어떤 Controller로 전달하여 처리할 지 결정한다. Controller - 비지니스 로직을 수행한 후 그 결과 데이터를 ModelAndView에 담아 전달한다. ..

Spring Boot 2023.02.08

Spring Boot 기능들과 테스트

이전 블로그에서 쓴 대로 생성하게 되면, 처음 본 것들이 쭉 나열된다. 이를 뜯어보면서 Spring boot에는 어떤 기능들을 지원하는지 하나하나 알아본 후 테스팅과 사용법을 알아보도록 하자. 1.pom.xml 이전에 서블릿 및 JSP를 할 때 DB와 연결하거나, lombok사용 등 라이브러리를 사용하고 싶을 때, Maven Dependency에 직접 다운로드를 받는 등 불편한 점이 여러가지 있었지만, Spring boot 의 경우 간단하게 사용하고 싶은 라이브러리를 가져올 수 있다. pom.xml이란 파일을 들어가보면 다음과 같이 나온다. 여기서 필요하다면 위에 version을 바꿔서 사용할 수 있거나, 필요한 라이브러리를 가져와서 dependencies 안에 넣기만 해주면 간단하게 라이브러리를 사용할..

Spring Boot 2023.02.06

Spring initializr 로 프로젝트 생성하기

Spring Boot를 배우기 앞서 먼저 프로젝트를 만드는 방법부터 배워야 한다. Spring Boot 는 간단하게 만들 수 있는데 툴 내에서 JSP프로젝트를 생성하듯이 만들어도 되지만, 우리는 Spring.io라는 홈페이지에서 프로젝트를 생성하는 법에 대해 알아볼것이다. https://start.spring.io/ 위 링크를 따라가보면 이렇게 나올것이다. 1. Project Project부분을 보면 먼저 Gradle과 Maven 부분이 있다. Maven의 경우 스프링 프로젝트의 pom.xml이란 이름으로 쓰이며 Gradle 은 안드로이드에서 많이 쓰인다.우리는 Maven을 골라 사용할 것이다. Maven Maven을 생성하면 앞서 말했듯이 pom.xml이란 것이 나오는데, 이는 Dependency를 통..

Spring Boot 2023.01.18