BaseController.java 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package com.fdkankan.manage_jp.controller;
  2. import com.fdkankan.common.util.DateEditor;
  3. import com.fdkankan.common.util.JwtUtil;
  4. import com.fdkankan.manage_jp.entity.User;
  5. import com.fdkankan.manage_jp.service.IUserService;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.beans.propertyeditors.StringTrimmerEditor;
  8. import org.springframework.web.bind.WebDataBinder;
  9. import org.springframework.web.bind.annotation.InitBinder;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12. import java.io.*;
  13. import java.util.Date;
  14. public class BaseController {
  15. @Autowired
  16. protected HttpServletRequest request;
  17. @Autowired
  18. protected HttpServletResponse response;
  19. @Autowired
  20. IUserService userService;
  21. @InitBinder
  22. protected void initBinder(WebDataBinder webDataBinder) {
  23. webDataBinder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
  24. webDataBinder.registerCustomEditor(Date.class, new DateEditor(true));
  25. }
  26. public static void output(HttpServletResponse resp, File file) {
  27. OutputStream os = null;
  28. BufferedInputStream bis = null;
  29. byte[] buff = new byte[1024];
  30. try {
  31. os = resp.getOutputStream();
  32. bis = new BufferedInputStream(new FileInputStream(file));
  33. int i = 0;
  34. while ((i = bis.read(buff)) != -1) {
  35. os.write(buff, 0, i);
  36. os.flush();
  37. }
  38. } catch (IOException e) {
  39. e.printStackTrace();
  40. } finally {
  41. try {
  42. bis.close();
  43. } catch (IOException e) {
  44. e.printStackTrace();
  45. }
  46. }
  47. }
  48. protected String getToken(){
  49. return request.getHeader("token");
  50. }
  51. protected User getUser(){
  52. String token = getToken();
  53. String username = JwtUtil.getUsername(getToken());
  54. return userService.getByUserName(username);
  55. }
  56. }