formatter: 3개의 글
@ModelAttribute는 어떻게 Formatter 없이 작동할까? @RequestParam 이나 @PathVariable로 들어온 문자열 값을 객체로 받기 위해서는 Formatter 가 필요하다. 아래 예제로 살펴보자. title이라는 String형 변수와 length라는 int형 변수를 가진 DTO이다. @Getter @Setter public class Music { String title; int length; } 만약 @RequestParam이나 @PathVariable로 넘어온 문자열 값을 Music객체로 받고 싶다면 아래와 같이 코드를 작성하면 된다. @ResponseBody @GetMapping("/hello/{title}"){ public String hello(@Pathvariabl..
[Spring] 데이터 바인딩 - PropertyEditor, Converter 그리고 Formatter 1. Data Binding(데이터 바인딩)의 정의 📝 데이터 바인딩 웹에서 사용자가 입력하여 전달되는 값은 주로 문자열이며, 웹 어플리케이션에서는 이 문자열을 도메인 객체의 프로퍼티 타입(int, date, boolean, ... 또는 도메인 객체 타입 그 자체)으로 변환이 필요하다. 이렇게 사용자가 입력한 문자열 값을 프로퍼티 타입에 맞춰 변환하여 할당하는 것을 데이터 바인딩이라 한다. 2. Spring의 데이터 바인딩 Spring은 데이터 바인딩 기능을 여러 인터페이스로 추상화하여 제공한다. 데이터 바인딩 인터페이스는 주로 웹 MVC에서 사용하지만 web에 국한되어 특화된 기능이 아니라 여러 곳..
Formatter 클래스 format() 1. Formatter 클래스 JDK 1.5 버전에서는 C 언어의 printf 문과 같은 출력 형태를 지정하도록 java.util.Formatter 라는 클래스를 제공한다.Formatter 클래스는 형식 문자열을 제공하고 이 문자열에서 지정한 대로 데이터가 형식화 된다. Formatter 클래스를 이용하기 위해서는 형식화된 출력이 지정될 Appendable 인터페이스를 구현한 클래스를 사용해야 한다. Formatter에서 형식화된 문자열을 만들었을 때, 결과가 저장되는 곳이다.Appendable 인터페이스를 구현한 클래스는 StringBuffer, PrintStream,FileWriter 등 약 14개의 클래스가 있다. Formatter f = new Format..