SpringMVC 에서 파일 을 업로드 하 는 간단 한 인 스 턴 스
springMVC 를 사용 하여 시스템 을 실현 할 때 springMVC 의 기본 해상도 기 에는 파일 업로드 에 대한 분석 이 추가 되 지 않 았 습 니 다.이것 은 우리 가 자신의 파일 업 로드 를 편리 하 게 할 수 있 습 니 다.그러나 파일 업 로드 를 위해 springMVC 를 사용 하려 면 springMVC 가 제공 하 는 Multipart Resolver 의 설명 을 spring 의 applicationContext 에 추가 해 야 합 니 다.그 후에 클 라 이언 트 가 요청 할 때마다 springMVC 는 request 에 멀티미디어 정보 가 포함 되 어 있 는 지 확인 합 니 다.포함 되 어 있 으 면 Multipart Resolver 를 사용 하여 분석 합 니 다.springMVC 는 파일 처 리 를 지원 하 는 Multipart Http ServletRequest 를 사용 하여 현재 Http ServletRequest 를 패키지 합 니 다.그리고 MultipartHttp ServletRequest 를 사용 하면 파일 을 처리 할 수 있 습 니 다.Spring 은 이미 우리 에 게 Multipart Resolver 의 실현 을 제공 하 였 습 니 다.우 리 는 가 져 와 서 만 사용 하면 됩 니 다.그것 이 바로 org.spring from work.web.mlipart.comons.Comms Multipart Resolver 입 니 다.springMVC 의 Multipart Resolver 바 텀 은 Commons-fileupload 를 사용 하기 때문에 Commons-fileupload.jar 에 대한 지원 도 필요 합 니 다.
Xml 코드
<!-- id multipartResolver -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="100000"/>
</bean>
Commons Multipart Resolver 에서 설정 할 수 있 는 속성 은 다음 과 같 습 니 다.default Encoding:request 요청 을 분석 하 는 기본 인 코딩 형식 을 표시 합 니 다.지정 되 지 않 았 을 때 Servlet 규범 에 따라 기본 값 ISO-8859-1 을 사용 합 니 다.request 가 인 코딩 형식 을 가리 키 면 지정 한 default Encoding 을 무시 합 니 다.
upload TempDir:파일 을 업로드 할 때 임시 디 렉 터 리 를 설정 합 니 다.기본 값 은 Servlet 용기 의 임시 디 렉 터 리 입 니 다.
max Upload Size:업로드 할 수 있 는 최대 파일 크기 를 설정 하고 바이트 단위 로 계산 합 니 다.-1 로 설정 하면 무제 한 을 표시 합 니 다.기본 값 은-1 입 니 다.
max InMemory Size:파일 업로드 시 메모리 에 쓸 수 있 는 최대 값 을 설정 합 니 다.바이트 단위 로 계산 합 니 다.기본 값 은 10240 입 니 다.
다음은 간단 한 예 이다.
.html 파일
<html>
<head>
<title>Upload a file please</title>
</head>
<body>
<h1>Please upload a file</h1>
<!-- enctype( ) multipart/form-data -->
<form method="post" action="/form" enctype="multipart/form-data">
<input type="text" name="name"/>
<input type="file" name="file"/>
<input type="submit"/>
</form>
</body>
</html>
대응 하 는 action controller:자바 코드
@Controller
public class FileUpoadController {
@RequestMapping(value = "/form", method = RequestMethod.POST)
public String handleFormUpload(@RequestParam("name") String name,
@RequestParam("file") MultipartFile file) {
//MultipartFile , , MultipartFile
if (!file.isEmpty()) {
byte[] bytes = file.getBytes();
// store the bytes somewhere
// file ,
return "redirect:uploadSuccess";
} else {
return "redirect:uploadFailure";
}
}
}
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ssm 프레임워크 업로드 이미지 로컬 및 데이터베이스에 저장 예시본고는 ssm 프레임워크 업로드 이미지를 로컬과 데이터베이스에 저장하는 예시를 소개하고 주로 Spring+SpringMVC+MyBatis 프레임워크를 사용하여 ssm 프레임워크 업로드 이미지의 실례를 실현했다. 구체...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.