게시판 이미지 업로드 설정

JEONG SUJIN·2022년 12월 30일
0
  • 작성한 게시글을 저장
  • 파일(이미지)를 선택했을 경우 파일업로드
  • 이전 파일 업로드 StandardServletMultipartResolver 를 사용

이미지 업로드 방법

  1. entype="multipart/form-data"를 write.jsp 폼 태그에 적용
  2. 스프링에서는 StandardServletMultipartResolver 빈등록

ServletAppContext.java

//파일업로드 빈등록
		@Bean
		public StandardServletMultipartResolver multipartResolver() {
			return new StandardServletMultipartResolver();
		}

SpringConfigClass.java

//파일 업로드 설정 
	@Override
	
	protected void customizeRegistration(Dynamic registration) {
		
		super.customizeRegistration(registration);
		//이미지나 파일의 용량을 하나는 5메가바이트 한번에 업로드 가능 50메가
		
		MultipartConfigElement config1 = new MultipartConfigElement(null, 5242880, 52428800, 0);
		registration.setMultipartConfig(config1);
	}

50메가바이트 = 52428800바이트

  • location = 파일 업로드시 임시로 저장하는 절대 경로이다.
    • 디폴트 값 : null일때 톰캣의 지정된 경로
  • maxFileSize = 파일당 최대 파일 크기
    • 디폴트값 : 제한없음
  • maxRequestSize = 파일 한개의 용량이 아니라 multipart/form-data 요청당 최대 파일 크기이다.(여러개의 파일업로드 시 총 크기로 보면 된다)
    • 디폴트 값: 제한없음
  • fileSizeThreshold = 업로드하는 파일이 임시로 파일로 저장되지 않고 메모리에서 바로 스트림으로 전달되는 크기의 한계를 나타낸다.
    • 디폴트 값: 0

ContentBean.java

private String content_file; //파일의 이름을 넣을 문자열 변수
private MultipartFile upload_file;  //업로드 한 파일을 담을 객체 추가하기

write.jsp

enctype="multipart/form-data"추가 ,첨부이미지 upload_file로 수정

 <form:form action="${root }board/write_pro"  enctype="multipart/form-data" modelAttribute="writeContentBean">
 
 <!--생략-->
 
<div class="form-group">
     <form:label path="content_file">첨부 이미지</form:label>
     <form:input type="file" path="upload_file" class="form-control" accept="image/*" />
 </div>
profile
기록하기

0개의 댓글