본문 바로가기

Spring/spring mvc 심화9

스프링 파일 업로드 스프링이 제공하는 파일업로드 기능을 사용하면 서블릿의 기능을 사용할 때보다 훨씬 쉽게 파일 업로드가 가능합니다. MultipartFile 이라는 인터페이스로 멀티파트 파일을 매우 편리하게 지원합니다. saveFile메소드를 보면 @RequestParam으로 MultipartFile을 받고 있습니다. @RequestParam MultipartFile file : 업로드하는 HTML Form의 name에 맞추어 @RequestParam 을 적용하면 됩니다. 추가로 @ModelAttribute 에서도 MultipartFile 을 동일하게 사용할 수 있습니다. MultipartFile 주요 메서드 : file.getOriginalFilename() : 업로드 파일 명 file.transferTo(...) : 파.. 2021. 7. 20.
서블릿 파일 업로드 파일 업로드 HTML Form을 통한 파일 업로드에는 다음 두 가지 방식이 있습니다. • application/x-www-form-urlencoded • multipart/form-data application/x-www-form-urlencoded 방식은 HTML 폼 데이터를 서버로 전송하는 가장 기본적인 방법입니다. Form 태그에 별도의 enctype 옵션이 없으면 웹 브라우저는 요청 HTTP 메시지의 헤더에 다음 내용을 추가합니다. Content-Type: application/x-www-form-urlencoded 그리고 폼에 입력한 전송할 항목을 HTTP Body에 문자로 username=kim&age=20 와 같이 & 로 구분해서 전송합니다. 파일을 업로드 하려면 파일은 문자가 아니라 바이너.. 2021. 7. 20.
포맷터 - Formatter 이전까지 학습한 Converter 는 입력과 출력 타입에 제한이 없는, 범용 타입 변환 기능을 제공합니다. 일반적인 웹 애플리케이션 환경을 생각해보면 불린 타입을 숫자로 바꾸는 것 같은 범용 기능 보다는 개발자 입장에서는 문자를 다른 타입으로 변환하거나, 다른 타입을 문자로 변환하는 상황이 대부분입니다. 앞서 살펴본 예제들을 떠올려 보면 문자를 다른 객체로 변환하거나 객체를 문자로 변환하는 일이 대부분입니다. 웹 애플리케이션에서 객체를 문자로, 문자를 객체로 변환하는 예 : • 화면에 숫자를 출력해야 하는데, Integer String 출력 시점에 숫자 1000. 문자 "1,000" 이렇게 1000 단위에 쉼표를 넣어서 출력하거나, 또는 "1,000" 라는 문자를 1000 이라는 숫자로 변경해야 합니다... 2021. 7. 18.
뷰 템플릿에 컨버터 적용하기 이번에는 뷰 템플릿에 컨버터를 적용하는 방법을 알아보겠습니다. 타임리프는 렌더링 시에 컨버터를 적용해서 렌더링 하는 방법을 편리하게 지원합니다. 이전까지는 문자를 객체로 변환했다면, 이번에는 그 반대로 객체를 문자로 변환하는 작업을 확인할 수 있습니다. 아래와 같이 뷰를 반환하는 컨트롤러를 만듭니다. model에 정수 number(10000)와 ipPort객체를 담았습니다. converter-view.html은 다음과 같습니다. 밑줄을 보시면 어떤곳은 ${ }로 대괄호가 한짝만 쓰였고, 어떤 부분은 ${{ }}로 대괄호가 두짝이 쓰였습니다. 결론부터 말하자면 ${{ }}처럼 대괄호 두짝을 쓰면 Converter가 적용됩니다. 이제 /convert-view에 요청을 해보겠습니다. 특히 네번째를 보면 컨버터.. 2021. 7. 18.