文件上傳

一、文件上傳

1、在springmvc.xml中配置----Mutilpart解析器

<!-- Mutilpart解析器 -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"></bean>

2、在jsp文件中編寫

enctype="multipart/form-data"的作用:聲明表單中數據包含二進制文件名
注意:千萬不要忘記設置它

<body>
<form action="login" method="post" enctype="multipart/form-data">
	用戶名:<input type="text" name="username"/><span></span><br/>
	密碼:<input type="password" name="password"/><span></span><br/>
	確認密碼:<input type="password" name="passwordSure"/><span></span><br/>
	圖片:<input type="file" name="file"/><br/>
	<input type="submit" value="註冊"/>
</form>
</body>

3、導入jar包

在這裏插入圖片描述

3、編寫服務

4、編寫控制器

@RequestMapping("login")
	public String register(Users users,MultipartFile file,HttpServletRequest req){
		//UUID.randomUUID()返回類型是UUID型
		//得到要輸入數據庫的文件名(UUID.後綴名)
		String fileName = UUID.randomUUID().toString()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
		//設置文件要上傳的位置
		String path = req.getServletContext().getRealPath("images")+"/"+fileName;
		try {
			//文件上傳
			FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path));
		} catch (IOException e) {
			e.printStackTrace();
		}
		//只是將文件名傳入到數據庫中去
		users.setPhoto(fileName);
		int index = usersServiceImpl.insRegister(users);
		if(index>0){
			req.getSession().setAttribute("user", users);
			return "redirect:/show";
		}else{
			return "redirect:/register.jsp";
		}
	}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章