143 lines
3.9 KiB
Java
Raw Normal View History

2020-02-13 10:48:51 +08:00
package com.ruoyi.common.utils;
import cn.hutool.core.convert.Convert;
import cn.hutool.extra.servlet.ServletUtil;
import cn.hutool.http.HttpStatus;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.springframework.http.MediaType;
2020-02-13 10:48:51 +08:00
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;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
2020-02-13 10:48:51 +08:00
/**
* 客户端工具类
*
2020-02-13 10:48:51 +08:00
* @author ruoyi
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class ServletUtils extends ServletUtil {
2021-10-22 10:04:15 +08:00
/**
* 获取String参数
*/
public static String getParameter(String name) {
return getRequest().getParameter(name);
}
/**
* 获取String参数
*/
public static String getParameter(String name, String defaultValue) {
return Convert.toStr(getRequest().getParameter(name), defaultValue);
}
/**
* 获取Integer参数
*/
public static Integer getParameterToInt(String name) {
return Convert.toInt(getRequest().getParameter(name));
}
/**
* 获取Integer参数
*/
public static Integer getParameterToInt(String name, Integer defaultValue) {
return Convert.toInt(getRequest().getParameter(name), defaultValue);
}
/**
* 获取Boolean参数
*/
public static Boolean getParameterToBool(String name) {
return Convert.toBool(getRequest().getParameter(name));
}
/**
* 获取Boolean参数
*/
public static Boolean getParameterToBool(String name, Boolean defaultValue) {
return Convert.toBool(getRequest().getParameter(name), defaultValue);
}
/**
* 获取request
*/
public static HttpServletRequest getRequest() {
return getRequestAttributes().getRequest();
}
2021-10-22 10:04:15 +08:00
/**
* 获取response
*/
public static HttpServletResponse getResponse() {
return getRequestAttributes().getResponse();
}
/**
* 获取session
*/
public static HttpSession getSession() {
return getRequest().getSession();
}
public static ServletRequestAttributes getRequestAttributes() {
RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
return (ServletRequestAttributes) attributes;
}
/**
* 将字符串渲染到客户端
*
* @param response 渲染对象
* @param string 待渲染的字符串
*/
Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev  Conflicts:  .gitignore  ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java  ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/DictUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ExceptionUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUploadUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpHelper.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/Md5Utils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java  ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysRegisterService.java  ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java  ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictDataService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictTypeService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysLogininforService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysLogininforServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java  ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml  ruoyi-ui/src/components/FileUpload/index.vue  ruoyi-ui/src/views/tool/build/index.vue
2022-02-14 14:27:13 +08:00
public static void renderString(HttpServletResponse response, String string) {
2021-10-22 10:04:15 +08:00
try {
response.setStatus(HttpStatus.HTTP_OK);
response.setContentType(MediaType.APPLICATION_JSON_VALUE);
response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
response.getWriter().print(string);
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 是否是Ajax异步请求
*
* @param request
*/
public static boolean isAjaxRequest(HttpServletRequest request) {
String accept = request.getHeader("accept");
Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev  Conflicts:  .gitignore  ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java  ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/DictUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ExceptionUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUploadUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpHelper.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/Md5Utils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java  ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysRegisterService.java  ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java  ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictDataService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictTypeService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysLogininforService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysLogininforServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java  ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml  ruoyi-ui/src/components/FileUpload/index.vue  ruoyi-ui/src/views/tool/build/index.vue
2022-02-14 14:27:13 +08:00
if (accept != null && accept.contains("application/json")) {
2021-10-22 10:04:15 +08:00
return true;
}
String xRequestedWith = request.getHeader("X-Requested-With");
Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev  Conflicts:  .gitignore  ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java  ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/DictUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ExceptionUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUploadUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpHelper.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/Md5Utils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java  ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysRegisterService.java  ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java  ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictDataService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictTypeService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysLogininforService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysLogininforServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java  ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml  ruoyi-ui/src/components/FileUpload/index.vue  ruoyi-ui/src/views/tool/build/index.vue
2022-02-14 14:27:13 +08:00
if (xRequestedWith != null && xRequestedWith.contains("XMLHttpRequest")) {
2021-10-22 10:04:15 +08:00
return true;
}
String uri = request.getRequestURI();
if (StringUtils.equalsAnyIgnoreCase(uri, ".json", ".xml")) {
return true;
}
String ajax = request.getParameter("__ajax");
Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev  Conflicts:  .gitignore  ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java  ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/DictUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ExceptionUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUploadUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpHelper.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/Md5Utils.java  ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java  ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java  ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysRegisterService.java  ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java  ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java  ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictDataService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDictTypeService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysLogininforService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/ISysPostService.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysLogininforServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java  ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java  ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml  ruoyi-ui/src/components/FileUpload/index.vue  ruoyi-ui/src/views/tool/build/index.vue
2022-02-14 14:27:13 +08:00
return StringUtils.equalsAnyIgnoreCase(ajax, "json", "xml");
2021-10-22 10:04:15 +08:00
}
public static String getClientIP() {
return getClientIP(getRequest());
}
2020-02-13 10:48:51 +08:00
}