Hello

파일첨부_첨부파일 요청보내기

by 볼빵빵오춘기

board2save.html

  • form 태그안에 input type="file" 을 추가한다.
  • form에서 file을 보낼 때는 form 속성에 enctype="multipart/form-data" 추가한다.
    enctype="multipart/form-data" 이 속성을 넣지 않으면 파일이 제대로 넘어가지않는다.
<!-- action속성: 목적지(서버주소), method속성: http request method(get, post) -->
<form action="/board2/save" method="post" enctype="multipart/form-data">
    writer: <input type="text" name="boardWriter"> <br>
    pass: <input type="text" name="boardPass"> <br>
    title: <input type="text" name="boardTitle"> <br>
    contents: <br>
    <textarea name="boardContents" cols="30" rows="10"></textarea> <br>
    file: <input type="file" name="boardFile"> <br>
    <input type="submit" value="글작성">
</form>

 

Board2DTO

  • 파일 관련 dto 추가 및 메소드 수정한다.
  • MultipartFile (인터페이스)
    스프링에서 제공하는 인터페이스 실제 파일을 담아줄 수 있는 역할을 한다.(save.html에서 controller로 보낼 때 controller에서 DTO로 텍스로 받아왔었는데 이제는 파일도 받아와야한다. 이때 그 file은 MultipartFile을 통해 받아 올 수 있다. )
  • 서버 저자용 파일 이름을 따로 넣는 이유는 예를 들어 어제 ‘myPhoto.jpg’ 라는 이미지를 올렸고 오늘 ‘myPhoto.jpg’라는 이미지를 올린다고 하면 이름이 같기 때문에 서버에서는 어떤 파일이 오늘 올린건지 확인 불가하기 때문이다.
// 파일 첨부 시 필요한 부분
private MultipartFile boardFile; // save.html -> Controller 파일 담는 용도
private String originalFileName; // 원본 파일 이름
private String storedFileName; // 서버 저장용 파일 이름
private int fileAttached; // 파일 첨부 여부(첨부 1, 미첨부 0)

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기