package com.utils;
|
|
import java.io.PrintWriter;
|
|
import javax.servlet.ServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
|
import com.entity.ResponseResult;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
/**
|
*
|
* @项目名称:wyait-manager
|
* @类名称:ShiroFilterUtils
|
* @类描述:shiro工具类
|
* @创建人:wyait
|
* @创建时间:2018年4月24日 下午5:12:04
|
* @version:
|
*/
|
public class ShiroFilterUtils {
|
private static final Logger logger = LoggerFactory
|
.getLogger(ShiroFilterUtils.class);
|
private final static ObjectMapper objectMapper = new ObjectMapper();
|
/**
|
*
|
* @描述:判断请求是否是ajax
|
* @创建人:wyait
|
* @创建时间:2018年4月24日 下午5:00:22
|
* @param request
|
* @return
|
*/
|
public static boolean isAjax(ServletRequest request){
|
String header = ((HttpServletRequest) request).getHeader("X-Requested-With");
|
if("XMLHttpRequest".equalsIgnoreCase(header)){
|
logger.debug("shiro工具类【wyait-manager-->ShiroFilterUtils.isAjax】当前请求,为Ajax请求");
|
return Boolean.TRUE;
|
}
|
logger.debug("shiro工具类【wyait-manager-->ShiroFilterUtils.isAjax】当前请求,非Ajax请求");
|
return Boolean.FALSE;
|
}
|
|
/**
|
*
|
* @描述:response输出json
|
* @创建人:wyait
|
* @创建时间:2018年4月24日 下午5:14:22
|
* @param response
|
* @param result
|
*/
|
public static void out(HttpServletResponse response, ResponseResult result){
|
PrintWriter out = null;
|
try {
|
response.setCharacterEncoding("UTF-8");//设置编码
|
response.setContentType("application/json");//设置返回类型
|
out = response.getWriter();
|
out.println(objectMapper.writeValueAsString(result));//输出
|
logger.error("用户在线数量限制【wyait-manage-->ShiroFilterUtils.out】响应json信息成功");
|
} catch (Exception e) {
|
logger.error("用户在线数量限制【wyait-manage-->ShiroFilterUtils.out】响应json信息出错", e);
|
}finally{
|
if(null != out){
|
out.flush();
|
out.close();
|
}
|
}
|
}
|
|
}
|