首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

Web操作工具种

2012-11-23 
Web操作工具类package com.zhangsx.util.webimport javax.servlet.http.Cookieimport javax.servlet.htt

Web操作工具类

package com.zhangsx.util.web;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Web相关的工具方法。 * 提供获取用户的实际IP地址、获取请求中指定名称的Cookie、失效掉指定名称的Cookie。 *  * @version 1.00 2010-1-15 * @since 1.5 * @author ZhangShixi */public class WebUtil {    /**     * 获取实际用户的ip访问地址。     * @param request Http请求。     * @return 客户端ip地址。     */    public static String getIpAddress(HttpServletRequest request) {        if (request == null) {            return null;        }                String ips = request.getHeader("x-forwarded-for");        if (ips == null || ips.isEmpty() || "unknown".equalsIgnoreCase(ips)) {            ips = request.getHeader("Proxy-Client-IP");        }        if (ips == null || ips.isEmpty() || "unknown".equalsIgnoreCase(ips)) {            ips = request.getHeader("WL-Proxy-Client-IP");        }        if (ips == null || ips.isEmpty() || "unknown".equalsIgnoreCase(ips)) {            ips = request.getRemoteAddr();        }        String[] ipArray = ips.split(",");        String clientIp = null;        for (String ip : ipArray) {            if (!"unknown".equalsIgnoreCase(ip)) {                clientIp = ip;                break;            }        }        return clientIp;    }    /**     * 获取请求中指定的名称的Cookie。     * @param request Http请求。     * @param name cookie名称。     * @return 如果请求中有相应名称的Cookie,则返回相应的Cookie实例;否则返回null。     */    public static Cookie getCookie(HttpServletRequest request, String name) {        if (request == null || name == null || name.isEmpty()) {            return null;        }        Cookie[] cookies = request.getCookies();        if (cookies != null && cookies.length > 0) {            for (Cookie cookie : cookies) {                if (cookie != null && name.equals(cookie.getName())) {                    return cookie;                }            }        }        return null;    }    /**     * 失效掉指定名称的Cookie。     * @param request 请求。     * @param response 相应。     * @param name cookie名称。     */    public static void invalidCookie(            HttpServletRequest request,HttpServletResponse response, String name) {        if (request == null || response == null || name == null || name.isEmpty()) {            return;        }        Cookie cookie = getCookie(request, name);        if (cookie != null) {            cookie.setMaxAge(0);            cookie.setPath(request.getContextPath());            response.addCookie(cookie);        }    }}
?

热点排行