package com.lunhan.xxx.host; import com.lunhan.xxx.common.ExecutedResult; import com.lunhan.xxx.common.config.SysConfig; import com.lunhan.xxx.common.jwt.JWTUtil; import com.lunhan.xxx.common.jwt.LoginUserDTO; import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 基础controller */ public class BasicController { /** * 获取当前请求上下文的“HttpServletRequest”对象 */ protected HttpServletRequest ServletRequest() { RequestAttributes reqAttributes = RequestContextHolder.currentRequestAttributes(); if (null == reqAttributes) { return null; } ServletRequestAttributes servletReqAttributes = (ServletRequestAttributes)reqAttributes; return servletReqAttributes.getRequest(); } /** * 获取当前请求上下文的“HttpServletResponse”对象 */ protected HttpServletResponse ServletResponse() { RequestAttributes reqAttributes = RequestContextHolder.currentRequestAttributes(); if (null == reqAttributes) { return null; } ServletRequestAttributes servletReqAttributes = (ServletRequestAttributes)reqAttributes; return servletReqAttributes.getResponse(); } protected String getToken() { return this.ServletRequest().getHeader(SysConfig.getTokenHeader()); } protected String getHeader(String key) { return this.ServletRequest().getHeader(key); } protected LoginUserDTO getTokenUser() { return JWTUtil.getUser(this.getToken()); } protected ExecutedResult success(T data) { return ExecutedResult.success(data); } protected ExecutedResult failed(String msg) { return ExecutedResult.failed(msg); } }