BaseApiController.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.goafanti.common.controller;
  2. import java.io.File;
  3. import java.util.ArrayList;
  4. import java.util.Iterator;
  5. import java.util.List;
  6. import javax.servlet.http.HttpServletRequest;
  7. import org.apache.commons.fileupload.servlet.ServletFileUpload;
  8. import org.springframework.beans.factory.annotation.Value;
  9. import org.springframework.web.bind.annotation.RequestMapping;
  10. import org.springframework.web.bind.annotation.RestController;
  11. import org.springframework.web.multipart.MultipartFile;
  12. import org.springframework.web.multipart.MultipartRequest;
  13. @RestController
  14. @RequestMapping(value = "/api")
  15. public class BaseApiController extends BaseController {
  16. @Value(value = "${upload.path}")
  17. private String uploadPath = null;
  18. @Value(value = "${upload.private.path}")
  19. private String uploadPrivatePath = null;
  20. /**
  21. *
  22. * @param request
  23. * @return
  24. */
  25. protected List<MultipartFile> getFiles(HttpServletRequest request) {
  26. if (ServletFileUpload.isMultipartContent(request)) {
  27. Iterator<String> itr = ((MultipartRequest) request).getFileNames();
  28. List<MultipartFile> files = new ArrayList<MultipartFile>();
  29. if (itr.hasNext()) {
  30. files.add(((MultipartRequest) request).getFile(itr.next()));
  31. }
  32. return files;
  33. }
  34. return new ArrayList<MultipartFile>();
  35. }
  36. /**
  37. *
  38. * @param fileName
  39. * @return
  40. */
  41. protected File toFile(String fileName) {
  42. File toFile = new File(uploadPath + fileName);
  43. toFile.mkdirs();
  44. return toFile;
  45. }
  46. /**
  47. *
  48. * @param fileName
  49. * @return
  50. */
  51. protected File toPrivateFile(String fileName) {
  52. File toFile = new File(uploadPrivatePath + fileName);
  53. toFile.mkdirs();
  54. return toFile;
  55. }
  56. }