日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java ssm如何上传图片_ssm整合-图片上传功能(转)

發布時間:2023/12/1 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java ssm如何上传图片_ssm整合-图片上传功能(转) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文介紹 ssm (Spring+SpringMVC+Mybatis)實現上傳功能。

以一個添加用戶的案例介紹(主要是將上傳文件)。

一、需求介紹

我們要實現添加用戶的時候上傳圖片(其實任何文件都可以)。

文件名:以 博客名+日期的年月日時分秒毫秒形式命名

如 言曌博客2017082516403213.png

路徑:上傳到 uploads 文件夾,并 生成相應的 年和月 子文件夾

如 uploads/2017/8/言曌博客2017082516403213.png

數據庫:將"年/月/"+文件名 存儲到數據表中

如?2017/8/言曌博客20170825164809907.jpg

二、導入 Jar 包

上傳功能需要額外的兩個 jar 包,如下

導入 環境中

我這里使用是 Maven,添加依賴

1

2

3 commons-fileupload

4 commons-fileupload

5 1.2.2

6

7

8 commons-io

9 commons-io

10 2.4

11

三、代碼結構

文件上傳到如圖 uploads,如果你和博主也是使用了 Maven,文件其實是上傳到

ForestBlog\target\ForestBlog\resource\uploads\2017\8 里面,這個沒影響的。

但是要要記得在 clean 之前把 \target\ForestBlog\resource\uploads 文件復制到

src\main\ForestBlog\resource\uploads 中

四、代碼實現

我們這里主要看上傳部分代碼,其他的配置文件也貼一下吧

1、springmvc 配置 (springmvc.xml部分代碼)

1

2

3

4

5

6

7

2、jsp 頁面 (createUser.jsp部分代碼)

1

2 method="post" enctype="multipart/form-data" >

3

4

5

3、控制器代碼(UserController.java 中 添加用戶類)

//添加用戶提交

@RequestMapping(value = "/createUserSubmit",method =RequestMethod.POST)public String createUserSubmit(UserCustom userCustom,MultipartFile upload_avatar ) throwsException {//上傳圖片

if(upload_avatar.getSize()!=0) {

String newFileName=functions.uploadFile(request,upload_avatar);

userCustom.setAvatar(newFileName);

}

userCustom.setLastloginip(functions.getIpAddr(request));

userService.createUser(userCustom);return "redirect:userList.action";

}

4、上傳文件代碼 (functions.java 記得要注入)

1 //上傳文件

2 public String uploadFile(HttpServletRequest request,MultipartFile uploadFile) throwsIOException {3 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSS");4 String res = sdf.format(newDate());5 //uploads文件夾位置

6 String rootPath =request.getServletContext().getRealPath("/resource/uploads/");7 //原始名稱

8 String originalFilename =uploadFile.getOriginalFilename();9 //新的文件名稱

10 String newFileName = "言曌博客"+res+originalFilename.substring(originalFilename.lastIndexOf("."));11 //創建年月文件夾

12 Calendar date =Calendar.getInstance();13 File dateDirs = newFile(date.get(Calendar.YEAR)14 + File.separator + (date.get(Calendar.MONTH)+1));15 //新文件

16 File newFile = new File(rootPath+File.separator+dateDirs+File.separator+newFileName);17 //判斷目標文件所在的目錄是否存在

18 if(!newFile.getParentFile().exists()) {19 //如果目標文件所在的目錄不存在,則創建父目錄

20 newFile.getParentFile().mkdirs();21 }22 System.out.println(newFile);23 //將內存中的數據寫入磁盤

24 uploadFile.transferTo(newFile);25 //完整的url

26 String fileUrl = date.get(Calendar.YEAR)+ "/"+(date.get(Calendar.MONTH)+1)+ "/"+newFileName;27 returnfileUrl;28 }

主要關注 上傳文件的方法,屬性注入這里就不贅述了

寫的步驟很完整、清晰

https://liuyanzhao.com/5989.html

總結

以上是生活随笔為你收集整理的java ssm如何上传图片_ssm整合-图片上传功能(转)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。