Spring74 뷰 템플릿에 컨버터 적용하기 이번에는 뷰 템플릿에 컨버터를 적용하는 방법을 알아보겠습니다. 타임리프는 렌더링 시에 컨버터를 적용해서 렌더링 하는 방법을 편리하게 지원합니다. 이전까지는 문자를 객체로 변환했다면, 이번에는 그 반대로 객체를 문자로 변환하는 작업을 확인할 수 있습니다. 아래와 같이 뷰를 반환하는 컨트롤러를 만듭니다. model에 정수 number(10000)와 ipPort객체를 담았습니다. converter-view.html은 다음과 같습니다. 밑줄을 보시면 어떤곳은 ${ }로 대괄호가 한짝만 쓰였고, 어떤 부분은 ${{ }}로 대괄호가 두짝이 쓰였습니다. 결론부터 말하자면 ${{ }}처럼 대괄호 두짝을 쓰면 Converter가 적용됩니다. 이제 /convert-view에 요청을 해보겠습니다. 특히 네번째를 보면 컨버터.. 2021. 7. 18. 컨버젼 서비스 컨버전 서비스 - ConversionService 이렇게 타입 컨버터를 하나하나 직접 찾아서 타입 변환에 사용하는 것은 매우 불편합니다. 그래서 스프링은 개별 컨버터를 모아두고 그것들을 묶어서 편리하게 사용할 수 있는 기능을 제공하는데, 이것이 바로 컨버전 서비스( ConversionService )입니다. 컨버전 서비스 인터페이스는 단순히 컨버팅이 가능한가? 확인하는 기능(canConvert)과, 컨버팅 기능(convert)을 제공합니다. 또한 추가로 컨버터를 등록하는 기능(addConverter)도 있어서 우리는 아래와 같이 컨버터를 등록하면 됩니다. 위에서 지금까지 만든 4개의 컨버터를 등록했습니다. 사용은 아래와 같이 합니다. 위와 같이 첫번째 인자로 타입이 변경되길 원하는 값, 두번째로 인자로 .. 2021. 7. 18. 타입 컨버터 스프링 타입 컨버터 소개 문자를 숫자로 변환하거나, 반대로 숫자를 문자로 변환해야 하는 것 처럼 애플리케이션을 개발하다 보면 타입을 변환해야 하는 경우가 상당히 많습니다. 아래의 컨트롤러를 보면 쿼리스트링 data를 숫자로 변경해줍니다. @RequestParam같이 문자를 편하게 숫자로 변경하는 것은 스프링이 중간에서 타입을 변경해줬기 때문입니다. 이러한 예는 @ModelAttribute, @PathVariable에서도 마찬가지입니다. 이렇게 타입을 변환하는 기능을 개발자가 직접 만들 수 있습니다. 아래의 컨버터 인터페이스를 implements하면 됩니다. 우선 문자->숫자 , 숫자->문자로 변경해주는 컨버터를 만들어보겠습니다. Integer -> String String -> Integer 아래와 같이.. 2021. 7. 17. 12 Bean Validator3 - 등록용, 수정용 Item분리 이제 코드로 보자 먼저 기존의 Item클래스에서 validation어노테이션을 모두 삭제한다. 그리고 등록용 Item클래스와 수정용 Item클래스를 만든다. 등록용: ItemSaveForm 수정용: ItemUpdateForm 둘의 validation어노테이션이 다른 것을 알 수 있다!!! 이제 컨트롤러의 addItem, edit메소드를 수정해주자. 49라인의 @ModelAttribut("item")은 html을 수정하지 않기 위해 넣어줬다. 만약 이게 없다면 html로 itemSaveForm으로 날라간다. 현재 post로 날라온 회웡ㄴ 정보를 ItemSaveForm으로 받고 있다. 67~70라인은 ItemSaveForm객체를 Item객체로 수정해주는 내용이다. 수정용 메소드 edit도 거의 같다. 역시 .. 2021. 7. 8. 이전 1 ··· 5 6 7 8 9 10 11 ··· 19 다음