ImageController.java
Upload User: jiancairen
Upload Date: 2007-08-27
Package Size: 26458k
Code Size: 2k
Category:

Java Develop

Development Platform:

Java

  1. package org.springframework.samples.imagedb.web;
  2. import javax.servlet.http.HttpServletRequest;
  3. import javax.servlet.http.HttpServletResponse;
  4. import org.springframework.samples.imagedb.ImageDatabase;
  5. import org.springframework.web.multipart.MultipartFile;
  6. import org.springframework.web.multipart.MultipartHttpServletRequest;
  7. import org.springframework.web.servlet.ModelAndView;
  8. import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
  9. import org.springframework.web.servlet.view.RedirectView;
  10. /**
  11.  * MultiActionController for the image list/upload UI.
  12.  * @author Juergen Hoeller
  13.  * @since 07.01.2004
  14.  */
  15. public class ImageController extends MultiActionController {
  16. private ImageDatabase imageDatabase;
  17. public void setImageDatabase(ImageDatabase imageDatabase) {
  18. this.imageDatabase = imageDatabase;
  19. }
  20. public ModelAndView showImageList(HttpServletRequest request, HttpServletResponse response) throws Exception {
  21. return new ModelAndView("imageList", "images", this.imageDatabase.getImages());
  22. }
  23. public ModelAndView streamImageContent(HttpServletRequest request, HttpServletResponse response) throws Exception {
  24. this.imageDatabase.streamImage(request.getParameter("name"), response.getOutputStream());
  25. return null;
  26. }
  27. public ModelAndView processImageUpload(HttpServletRequest request, HttpServletResponse response) throws Exception {
  28. String name = request.getParameter("name");
  29. String description = request.getParameter("description");
  30. MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
  31. MultipartFile multipartFile = multipartRequest.getFile("image");
  32. this.imageDatabase.storeImage(name, multipartFile.getInputStream(), (int) multipartFile.getSize(), description);
  33. return new ModelAndView(new RedirectView("imageList"));
  34. }
  35. public ModelAndView clearDatabase(HttpServletRequest request, HttpServletResponse response) throws Exception {
  36. this.imageDatabase.clearDatabase();
  37. return new ModelAndView(new RedirectView("imageList"));
  38. }
  39. }