From 20dc5afab1b07f18b1ccfa9dc5993b6adb92d31d Mon Sep 17 00:00:00 2001 From: mrag7x26q <2056488384@qq.com> Date: Tue, 1 Mar 2022 15:35:04 +0800 Subject: [PATCH] ADD file via upload --- .../ezzd/top/controller/PhotoController.java | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 src/main/java/top/ezzd/top/controller/PhotoController.java diff --git a/src/main/java/top/ezzd/top/controller/PhotoController.java b/src/main/java/top/ezzd/top/controller/PhotoController.java new file mode 100644 index 0000000..67d9859 --- /dev/null +++ b/src/main/java/top/ezzd/top/controller/PhotoController.java @@ -0,0 +1,100 @@ +package top.ezzd.controller; + +import java.io.File; +import java.io.IOException; +import java.util.UUID; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +import org.apache.commons.io.FileUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.multipart.MultipartFile; + +import top.ezzd.pojo.Photo; +import top.ezzd.pojo.User; +import top.ezzd.service.PhotoService; + +@Controller +public class PhotoController { + private Photo photo = new Photo(); + @Resource + private PhotoService photoServiceImpl; + + /** + * ��ʾ������Ƭ + * + * @param m + * @return + */ + //@RequestMapping("/show") + public String showPhoto(Model m) { + m.addAttribute("photoList", photoServiceImpl.selectPhoto()); + + return "/dispatcher?page=index"; + } + + /** + * �ϴ���Ƭ + * + * @param file + * �ϴ����ļ�(��Ƭ) + * @param session + * �û��ĵ�¼״̬ + * @param req + * �������� + * @return ������Ӧ��ҳ�� + */ + //@RequestMapping("upload") + // MultipartFile file, + public String uploadphoto(MultipartFile file, HttpSession session, HttpServletRequest req) { + // �ж��û��Ƿ��¼ + if (session.getAttribute("user") == null) { + return "redirect:/dispatcher?page=login"; + } else { + // ���û��ϴ����ļ�����Ӳ���� + // System.out.println(file.getOriginalFilename().equals("")); + if (file.getOriginalFilename() != null && file.getOriginalFilename() != "") { + // ��ȡ�ļ�������Դ�ļ�������Ϊ������ɵ�UUID + String fileName = UUID.randomUUID().toString() + + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + // ��ȡͼƬ�洢λ�õ�·�� + String path = req.getServletContext().getRealPath("UpPhoto") + "/" + fileName; + System.out.println(path); + try { + // ���ļ�ת��Ϊ������������Ӳ�� + FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path)); + } catch (IOException e) { + e.printStackTrace(); + } + + // ��photo����Ϣ���� + + User u = (User) session.getAttribute("user"); + int typeId = Integer.parseInt(req.getParameter("typeId")); + String title = req.getParameter("title"); + String shortText = req.getParameter("shortText"); + String multiText = req.getParameter("multiText"); + + photo.setMultiText(multiText); + photo.setShortText(shortText); + photo.setTitle(title); + photo.setTypeId(typeId); + photo.setUid(u.getUid()); + // ֻ��ȡ��webapps�ļ������� + photo.setAddress(fileName); + int index = photoServiceImpl.insertPhoto(photo); + if (index > 0) { + return "redirect:/dispatcher?page=upload"; + } else { + return "redirect:/error.jsp"; + } + } else { + return "redirect:/error.jsp"; + } + + } + } +}