목록BE/Spring (178)
오봉이와 함께하는 개발 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dkJetZ/btrJBk8NXwt/fltN3g78gkG9KzRiFTyLJk/img.png)
요청 매핑 요청이 왔을 때 어떤 컨트롤러가 호출이 되어야 하는지를 매핑하는 것이다. 단순하게 URL을 가지고 매핑하는 방법만 사용하는 것이 아니라 여러 정보를 조합해서 매핑할 때 사용한다. MappingController @RestController @Slf4j public class MappingController { @RequestMapping("/hello-basic") public String helloBasic() { log.info("hello basic"); return "ok"; } } @RestController @Controller는 반환 값이 String이면 뷰 이름으로 인식한다. 뷰를 찾고 뷰가 렌더링 된다. @RestController는 반환 값으로 뷰를 찾는 것이 아니라 HTTP..
로깅 간단히 알아보기 운영 시스템에서는 System.out.println()같은 시스템 콘솔을 사용해서 필요한 정보를 출력하지 않는다. 별도 로깅 라이브러리를 사용해서 로그를 출력한다. 로깅 라이브러리 스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리(spring-boot-starter-logging)가 함께 포함된다. 스프링 부트 로깅 라이브러리는 기본으로 다음 로깅 라이브러리를 사용한다. SLF4J - http://www.slf4j.org Logback - http://logback.qos.ch 로그 라이브러리는 Logback, Log4J, Log4J2 등등 수 많은 라이브러리가 있는데, 그것을 통합해서 인터페이스로 제공하는 것이 바로 SLF4J 라이브러리다. 쉽게 이야기해서 SLF4J는..
프로젝트 생성 프로젝트 선택 Gradle Java 2.7.2 Metadata Group : hello Artifact : springmvc Name : springmvc Package name : hello.springmvc Packaging : Jar Java : 11 Dependencies Spring Web Thymeleaf lombok 참고 War가 아니라 Jar를 선택한 이유는 JSP를 사용하지 않는다. 또 War를 사용할 때는 WAS를 별도로 설치해서 배포할 때 사용한다. Jar는 내장 WAS를 사용할 때 사용하며 webapp 경도로 사용하지 않는다. 하지만 War를 사용해도 내장 톰캣을 사용할 수는 있다. build.gradle plugins { id 'org.springframewo..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qz54A/btrJABwEFIL/LsuLi5PWJnQ0MSEjvKslh1/img.png)
스프링 MVC - 실용적인 방식 MVC 프레임워크 만들기에서 v3은 ModelView를 개발자가 직접 생성해서 반환했기 때문에 불편했다. v4로 바꿔 개선하며 편했던 기억이 있기 때문에 변경해보자. 실무에서 주로 사용하는 방식이다. SpringMemberControllerV3 @Controller @RequestMapping("/springmvc/v3/members")// @RequestMapping 클래스 레벨과 메서드 레벨 조합 public class SpringMemberControllerV3 { private MemberRepository memberRepository = MemberRepository.getInstance(); @GetMapping("/new-form") public String..
스프링 MVC - 컨트롤러 통합 @RequestMapping 을 잘 보면 클래스 단위가 아니라 메서드 단위에 적용된 것을 확인할 수 있다. 따라서 컨트롤러 클래스를 유연하게 하나로 통합할 수 있다. SpringMemberControllerV2 @Controller @RequestMapping("/springmvc/v2/members")// @RequestMapping 클래스 레벨과 메서드 레벨 조합 public class SpringMemberControllerV2 { private MemberRepository memberRepository = MemberRepository.getInstance(); @RequestMapping("/new-form") public ModelAndView newForm(..