인프런 커뮤니티 질문&답변

재영님의 프로필 이미지

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

스프링이 제공하는 기본 포맷터

view - ${} 질문

해결된 질문

작성

·

159

·

수정됨

0

view 파일에서 ${}는 포맷터가 적용이 안되고,

${{}}는 포맷터가 적용이 된다고 말씀해주셨습니다. - 8:12~

 

개발자 도구에서 localhost:8080/formatter/edit에서 제출 버튼을 누르면 payload에 문자열 10,000과 2024-05-20 22:47:53이 담겨서 요청되는 것을 확인할 수 있었습니다.

 

이 값들이 뷰의 ${}에 도달하게 되서, 10000이 된다고 하면

이는 포맷터가 적용되어서 요청값 문자열인 10,000이 10000으로 출력되게 되는 것 아닌가요?

포맷터가 적용이 안된거라면 요청값 그대로 10,000이 출력되어야한다고 생각됩니다.

 

혹시 제가 잘못 이해하고 있는 부분이라면 보충설명 부탁드립니다!

+ 추가 질문

th:field=*{}는 자동 컨버팅이 되지만(중괄호 하나씩)

th:text=${}는 자동 컨버팅이 되지 않는 게 맞나요?(중괄호 하나씩)

헷갈릴 수 있는 부분 같아서 확인차 여쭤봅니다!

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 재영님

formatter/edit의 뷰 파일인 formatter-form.html을 열어보시면 궁금한 내용이 다 이해가 되실거에요 🙂

추가로 질문하신 부분은 강의에서 이미 설명한 부분인데요 🙂 개발자는 이런 궁금증이 있을 때 머리속으로 너무 고민하는 것 보다는 직접 실행해서 그 결과를 직접 확인할 때 가장 많이 성장할 수 있습니다.

추가 질문 하신 부분은 꼭 한번 실행해보시고, 또 정리해서 남겨주시면 다른 분들께도 도움이 되실거에요.

감사합니다.

 

재영님의 프로필 이미지
재영
질문자

답변 감사드립니다 영한님!

해당 내용에 대해서 정리해보면 다음과 같습니다.

  • ${}: 모델 속성에 접근할 때 사용 / 포맷터 적용 x

  • ${{}}: 포맷터 적용 o

 

  • th:field=*{}: 폼 필드와 관련된 속성 / 자동 컨버팅 o

  • th:text=${}: 단순히 모델 속성 값을 출력할 때 사용 / 자동 컨버팅 x

재영님의 프로필 이미지

작성한 질문수

질문하기