AssetsController.java 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package com.izouma.awesomeadmin.web;
  2. import com.izouma.awesomeadmin.dto.Result;
  3. import com.izouma.awesomeadmin.service.OSSFileService;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.stereotype.Controller;
  6. import org.springframework.web.bind.annotation.RequestMapping;
  7. import org.springframework.web.bind.annotation.RequestMethod;
  8. import org.springframework.web.bind.annotation.RequestParam;
  9. import org.springframework.web.bind.annotation.ResponseBody;
  10. import org.springframework.web.multipart.MultipartFile;
  11. import org.springframework.web.multipart.MultipartHttpServletRequest;
  12. import org.springframework.web.multipart.commons.CommonsMultipartResolver;
  13. import javax.servlet.http.HttpServletRequest;
  14. import java.io.IOException;
  15. import java.io.UnsupportedEncodingException;
  16. import java.text.SimpleDateFormat;
  17. import java.util.*;
  18. /**
  19. * Created by xiongzhu on 2017/3/8.
  20. */
  21. @Controller
  22. @RequestMapping("/assets")
  23. public class AssetsController {
  24. @Autowired
  25. private OSSFileService OSSFileService;
  26. @RequestMapping(value = "/uploadImg", method = RequestMethod.POST)
  27. @ResponseBody
  28. public Result uploadImg(@RequestParam("base64") String base64) {
  29. try {
  30. String path = OSSFileService.uploadImg(base64);
  31. return new Result(true, path);
  32. } catch (UnsupportedEncodingException e) {
  33. e.printStackTrace();
  34. }
  35. return new Result(false, "上传失败");
  36. }
  37. @RequestMapping(value = "/uploadFile")
  38. @ResponseBody
  39. public Result uploadFile(HttpServletRequest request) {
  40. CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
  41. if (multipartResolver.isMultipart(request)) {
  42. MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
  43. Iterator it = multiRequest.getFileNames();
  44. List<String> paths = new ArrayList<>();
  45. while (it.hasNext()) {
  46. MultipartFile file = multiRequest.getFile(it.next().toString());
  47. if (file != null) {
  48. try {
  49. Random random = new Random();
  50. StringBuilder randomCode = new StringBuilder();
  51. for (int i = 0; i < 8; i++) {
  52. randomCode.append(Integer.toString(random.nextInt(36), 36));
  53. }
  54. String uploadPath = String.format("images/%s-%s.jpg", new SimpleDateFormat("yyyy-MM-dd-hh-mm-ss").format(new Date()), randomCode);
  55. String path = OSSFileService.upload(file.getInputStream(), uploadPath);
  56. paths.add(path);
  57. } catch (IOException e) {
  58. e.printStackTrace();
  59. return new Result(false, "上传失败");
  60. }
  61. }
  62. }
  63. return new Result(true, paths);
  64. }
  65. return new Result(false, "上传失败");
  66. }
  67. }