Spring
스프링 MVC 2 - 뷰 템플릿에 컨버터 적용하기
스프링 MVC 2 - 뷰 템플릿에 컨버터 적용하기
2022.10.06뷰 템플릿에 컨버터 적용하기 이번에는 뷰 템플릿에 컨버터를 적용하는 방법을 알아보자. 타임리프는 랜더링시에 컨버터를 적용해서 랜더링하는 방법을 편리하게 지원한다. 이전까지는 문자를 객체로 변환했다면, 이번에는 그 반대로 객체를 문자로 변환하는 작업을 확인할 수 있다. ConverterController Model에 숫자 10000와 ipPort 객체를 담아서 뷰 템플릿에 전달한다. resources/templates/converter-view.html 타임리프는 ${{...}}를 사용하면 자동으로 컨버전 서비스를 사용해서 변환된 결과를 출력해준다. 물론 스프링과 통합되어서 스프링이 제공하는 컨버전 서비스를 사용하므로, 우리가 등록한 컨버터들을 사용할 수 있다. 변수 표현식 : ${...} 컨버전 서비스 ..
스프링 MVC 2 - 스프링에 Converter 적용하기
스프링 MVC 2 - 스프링에 Converter 적용하기
2022.10.06스프링에 Converter 적용하기 웹 애플리케이션에 Converter를 적용해보자. WebConfig - 컨버터 등록 스프링은 내부에서 ConversionService를 제공한다. 우리는 WebMvcConfigurer가 제공하는 addFormatters()를 사용해서 추가하고 싶은 컨버터를 등록하면 된다. 이렇게 하면 스프링은 내부에서 사용하는 ConversionService에 컨버터를 추가해준다. 등록한 컨버터가 잘 동작하는지 확인해보자. HelloController - 기존 코드 실행 http://localhost:8080/hello-v2?data=10 실행 로그 ?data=10의 쿼리 파라미터는 문자이고 이것을 Integer data로 변환하는 과정이 필요하다. 실행해보면 직접 등록한 String..
스프링 MVC 2 - 컨버전 서비스 - ConversionService
스프링 MVC 2 - 컨버전 서비스 - ConversionService
2022.10.06컨버전 서비스 - ConversionService 이렇게 타입 컨버터를 하나하나 직접 찾아서 타입 변화에 사용하는 것은 매우 불편하다. 그래서 스프링은 개별 컨버터를 모아두고 그것들을 묶어서 편리하게 사용할 수 있는 기능을 제공하는데, 이것이 바로 컨버전 서비스(ConversionService)이다. ConversionService 인터페이스 package org.springframework.core.convert; import org.springframework.lang.Nullable; public interface ConversionService { boolean canConvert(@Nullable Class sourceType, Class targetType); boolean canConvert..
스프링 MVC 2 - 타입 컨버터 - Converter
스프링 MVC 2 - 타입 컨버터 - Converter
2022.10.05타입 컨버터 - Converter 타입 컨버터를 어떻게 사용하는지 코드로 알아보자. 타입 컨버터를 사용하려면 org.springframework.core.convert.converter.Converter 인터페이스를 구현하면 된다. 주의 Converter라는 이름의 인터페이스가 많으니 조심해야 한다. org.springframework.core.convert.converter.Converter를 사용해야 한다. 컨버터 인터페이스 package org.springframework.core.convert.converter; public interface Converter { T convert(S source); } 먼저 가장 단순한 형태인 문자를 숫자로 바꾸는 타입 컨버터를 만들어보자. StringTolIn..
스프링 MVC 2 - 스프링 타입 컨버터 소개
스프링 MVC 2 - 스프링 타입 컨버터 소개
2022.10.05스프링 타입 컨버터 소개 문자를 숫자로 변환하거나, 반대로 숫자를 문자로 변환해야 하는 것 처럼 애플리케이션을 개발하다 보면 타입을 변환해야 하는 경우가 상당히 많다. 다음 예를 보자. HelloController - 문자 타입을 숫자 타입으로 변경 실행 http://localhost:8080/hello-v1?data=10 분석 String data = request.getParameter("data") HTTP 요청 파라미터는 모두 문자로 처리된다. 따라서 요청 파라미터를 자바에서 다른 타입으로 변환해서 사용하고 싶으면 다음과 같이 숫자 타입으로 변환하는 과정을 거쳐야 한다. Integer intValue = Integer.valueOf(data) 이번에는 스프링 MVC가 제공하는 @RequestPar..
스프링 MVC 2 - 프로젝트 생성(스프링 타입 컨버터)
스프링 MVC 2 - 프로젝트 생성(스프링 타입 컨버터)
2022.10.05프로젝트 생성(스프링 타입 컨버터) 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 https://start.spring.io/ 프로젝트 선택 Project : Gradle Project Language : Java Spring Boot : 2.4.x Project Metadata Group : hello Artifact : typeconverter Name : typeconverter Package name : hello.typeconverter Packaging : Jar Java : 11 Dependencies : Spring Web, Lombok, Thymeleaf build.gradle 동작 확인 기본 메인 클래스 실행(TypeconverterApplication.main()) htt..