真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java工具類CookieUtils使用分析

本篇內(nèi)容介紹了“java工具類CookieUtils使用分析”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)公司是專業(yè)的赤峰網(wǎng)站建設(shè)公司,赤峰接單;提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行赤峰網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

package com.hjj.demo.commons.utils;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;

/**
 * Cookie 工具類
 * 

Title: CookieUtils

 * 

Description: 

 *  * @author hjj  * @version 1.0.0  * @date 2019/10/7 22:00  */ public final class CookieUtils {     /**      * 得到Cookie的值, 不編碼      *      * @param request      * @param cookieName      * @return      */     public static String getCookieValue(HttpServletRequest request, String cookieName) {         return getCookieValue(request, cookieName, false);     }     /**      * 得到Cookie的值,      *      * @param request      * @param cookieName      * @return      */     public static String getCookieValue(HttpServletRequest request, String cookieName, boolean isDecoder) {         Cookie[] cookieList = request.getCookies();         if (cookieList == null || cookieName == null) {             return null;         }         String retValue = null;         try {             for (int i = 0; i < cookieList.length; i++) {                 if (cookieList[i].getName().equals(cookieName)) {                     if (isDecoder) {                         retValue = URLDecoder.decode(cookieList[i].getValue(), "UTF-8");                     } else {                         retValue = cookieList[i].getValue();                     }                     break;                 }             }         } catch (UnsupportedEncodingException e) {             e.printStackTrace();         }         return retValue;     }     /**      * 得到Cookie的值,      *      * @param request      * @param cookieName      * @return      */     public static String getCookieValue(HttpServletRequest request, String cookieName, String encodeString) {         Cookie[] cookieList = request.getCookies();         if (cookieList == null || cookieName == null) {             return null;         }         String retValue = null;         try {             for (int i = 0; i < cookieList.length; i++) {                 if (cookieList[i].getName().equals(cookieName)) {                     retValue = URLDecoder.decode(cookieList[i].getValue(), encodeString);                     break;                 }             }         } catch (UnsupportedEncodingException e) {             e.printStackTrace();         }         return retValue;     }     /**      * 設(shè)置Cookie的值 不設(shè)置生效時(shí)間默認(rèn)瀏覽器關(guān)閉即失效,也不編碼      */     public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,                                  String cookieValue) {         setCookie(request, response, cookieName, cookieValue, -1);     }     /**      * 設(shè)置Cookie的值 在指定時(shí)間內(nèi)生效,但不編碼      */     public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,                                  String cookieValue, int cookieMaxage) {         setCookie(request, response, cookieName, cookieValue, cookieMaxage, false);     }     /**      * 設(shè)置Cookie的值 不設(shè)置生效時(shí)間,但編碼      */     public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,                                  String cookieValue, boolean isEncode) {         setCookie(request, response, cookieName, cookieValue, -1, isEncode);     }     /**      * 設(shè)置Cookie的值 在指定時(shí)間內(nèi)生效, 編碼參數(shù)      */     public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,                                  String cookieValue, int cookieMaxage, boolean isEncode) {         doSetCookie(request, response, cookieName, cookieValue, cookieMaxage, isEncode);     }     /**      * 設(shè)置Cookie的值 在指定時(shí)間內(nèi)生效, 編碼參數(shù)(指定編碼)      */     public static void setCookie(HttpServletRequest request, HttpServletResponse response, String cookieName,                                  String cookieValue, int cookieMaxage, String encodeString) {         doSetCookie(request, response, cookieName, cookieValue, cookieMaxage, encodeString);     }     /**      * 刪除Cookie帶cookie域名      */     public static void deleteCookie(HttpServletRequest request, HttpServletResponse response,                                     String cookieName) {         doSetCookie(request, response, cookieName, "", -1, false);     }     /**      * 設(shè)置Cookie的值,并使其在指定時(shí)間內(nèi)生效      *      * @param cookieMaxage cookie生效的最大秒數(shù)      */     private static final void doSetCookie(HttpServletRequest request, HttpServletResponse response,                                           String cookieName, String cookieValue, int cookieMaxage, boolean isEncode) {         try {             if (cookieValue == null) {                 cookieValue = "";             } else if (isEncode) {                 cookieValue = URLEncoder.encode(cookieValue, "utf-8");             }             Cookie cookie = new Cookie(cookieName, cookieValue);             if (cookieMaxage > 0)                 cookie.setMaxAge(cookieMaxage);             if (null != request) {// 設(shè)置域名的cookie                 String domainName = getDomainName(request); //                System.out.println(domainName);                 if (!"localhost".equals(domainName)) {                     cookie.setDomain(domainName);                 }             }             cookie.setPath("/");             response.addCookie(cookie);         } catch (Exception e) {             e.printStackTrace();         }     }     /**      * 設(shè)置Cookie的值,并使其在指定時(shí)間內(nèi)生效      *      * @param cookieMaxage cookie生效的最大秒數(shù)      */     private static final void doSetCookie(HttpServletRequest request, HttpServletResponse response,                                           String cookieName, String cookieValue, int cookieMaxage, String encodeString) {         try {             if (cookieValue == null) {                 cookieValue = "";             } else {                 cookieValue = URLEncoder.encode(cookieValue, encodeString);             }             Cookie cookie = new Cookie(cookieName, cookieValue);             if (cookieMaxage > 0)                 cookie.setMaxAge(cookieMaxage);             if (null != request) {// 設(shè)置域名的cookie                 String domainName = getDomainName(request); //                System.out.println(domainName);                 if (!"localhost".equals(domainName)) {                     cookie.setDomain(domainName);                 }             }             cookie.setPath("/");             response.addCookie(cookie);         } catch (Exception e) {             e.printStackTrace();         }     }     /**      * 得到cookie的域名      */     private static final String getDomainName(HttpServletRequest request) {         String domainName = null;         String serverName = request.getRequestURL().toString();         if (serverName == null || serverName.equals("")) {             domainName = "";         } else {             serverName = serverName.toLowerCase();             serverName = serverName.substring(7);             final int end = serverName.indexOf("/");             serverName = serverName.substring(0, end);             final String[] domains = serverName.split("\\.");             int len = domains.length;             if (len > 3) {                 // www.xxx.com.cn                 domainName = "." + domains[len - 3] + "." + domains[len - 2] + "." + domains[len - 1];             } else if (len <= 3 && len > 1) {                 // xxx.com or xxx.cn                 domainName = "." + domains[len - 2] + "." + domains[len - 1];             } else {                 domainName = serverName;             }         }         if (domainName != null && domainName.indexOf(":") > 0) {             String[] ary = domainName.split("\\:");             domainName = ary[0];         }         return domainName;     } }

“java工具類CookieUtils使用分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


標(biāo)題名稱:java工具類CookieUtils使用分析
標(biāo)題來源:http://weahome.cn/article/jdpjsd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部