티스토리 뷰

package hello.typeconverter;

import hello.typeconverter.converter.IntegerToStringConverter;
import hello.typeconverter.converter.IpPortToStringConverter;
import hello.typeconverter.converter.StringToIntegerConverter;
import hello.typeconverter.converter.StringToIpPortConverter;
import hello.typeconverter.formatter.MyNumberFormatter;
import org.springframework.context.annotation.Configuration;
import org.springframework.format.FormatterRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addFormatters(FormatterRegistry registry) {
        //주석처리 우선순위
        registry.addConverter(new StringToIpPortConverter());
        registry.addConverter(new IpPortToStringConverter());
        //registry.addConverter(new IntegerToStringConverter());
        //registry.addConverter(new StringToIntegerConverter());

        //포메터 추가
        registry.addFormatter(new MyNumberFormatter());

    }
}

 

    @GetMapping("/converter-view")
    public String converterView(Model model){
        model.addAttribute("number",10000);
        model.addAttribute("ipPort", new IpPort("127.0.0.1",8080));

        return "converter-view";
    }

 

 

포메터가 작동해서 ${{}} 안의 숫자는 이쁜 문자열로 사용 된다.

http://localhost:8080/hello-v2?data=10,000 호출 할 경우

@GetMapping("/hello-v2") //문자 10,000 넘어
public String helloV2(@RequestParam Integer data){
    System.out.println("data= " + data);
    return "ok";

}

 

 

이렇게 파라미터를 받을 때 포메터가 작동하며 Integer로 변경해준다.

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함