zoukankan      html  css  js  c++  java
  • java Cookie 获取历史记录列表(三)

     
    1. /** 
    2.      * 获取Cookie里面的东西 
    3.      */  
    4.     protected List<String> getCookieList() {  
    5.         Cookie[] cookies = null;  
    6.         Cookie cookie = null;  
    7.         String cookieValue = null;  
    8.         String cookieName = null;  
    9.         cookies = request.getCookies();  
    10.         if(cookies==null){  
    11.             return null;  
    12.         }  
    13.   
    14.         List<String> cookieList = new ArrayList<String>();  
    15.         for (int i = cookies.length - 1; i >= 0; i--) {  
    16.             cookie = cookies[i];  
    17.             try {  
    18.                 cookieValue = URLDecoder.decode(cookie.getValue(),"UTF-8");  
    19.             } catch (UnsupportedEncodingException e) {  
    20.                 e.printStackTrace();  
    21.             }  
    22.             cookieName = cookie.getName();  
    23.             int cookieNameIndex = 0;  
    24.             cookieNameIndex = cookieName.indexOf("search");  
    25.             if (cookieNameIndex != -1 && cookieValue!= null && StringUtils.isNotBlank(cookieValue)) {  
    26.                 cookieList.add(cookieValue);  
    27.             }  
    28.         }  
    29.         //去重  
    30.         removeDuplicate(cookieList);  
    31.         //取记录  
    32.         List<String> searchList = new ArrayList<String>();  
    33.         int index = 0;  
    34.         for(int i=0;i< cookieList.size(); i++){  
    35.             if(index< Constants.COOKIES_NUM){  
    36.                 searchList.add(cookieList.get(i));  
    37.             }  
    38.             index++;  
    39.         }  
    40.         return searchList;  
    41.     }  
    42.     //去重  
    43.     private static void removeDuplicate(List list) {  
    44.         for (int i = 0; i < list.size() - 1; i++) {  
    45.             for (int j = list.size() - 1; j > i; j--) {  
    46.                 if (list.get(j).equals(list.get(i))) {  
    47.                     list.remove(j);  
    48.                 }  
    49.             }  
    50.         }  
    51.     }  
    52. //设置  
    53.     protected void setCookie(String keyWord){  
    54.         try {  
    55.             //关键点  
    56.             keyWord = URLEncoder.encode(keyWord,"UTF-8");  
    57.         } catch (UnsupportedEncodingException e) { }  
    58.         Cookie cookie = new Cookie("search"+new Date().getTime(), keyWord);  
    59.         cookie.setPath("/");  
    60.         cookie.setMaxAge(60 * 60 * 24 * 365 * 1);  
    61.         response.addCookie(cookie);  
    62.     }  
    63. //删除  
    64.     protected void removeCookie(){  
    65.         Cookie[] cookies = request.getCookies();  
    66.         for (Cookie cookie:cookies){  
    67.             cookie.setMaxAge(0);  
    68.         }  
    69.     }  



    如果cookie 考虑前端被禁掉的话可以考虑参考这段代码

  • 相关阅读:
    WinAPI: ExtractIcon 获取 EXE、DLL 或 ICO 文件中的图标
    WinAPI: LoadLibrary、FreeLibrary 载入与载卸模块
    WinAPI: LoadCursor 从资源中载入光标
    WinAPI: LoadIcon 从资源中载入图标
    WinAPI: LoadString 从资源中载入字符串
    学习使用资源文件[9] WAVE 资源
    学习使用资源文件[11] DLL 中的资源文件
    WinAPI: LoadBitmap 从资源中载入位图
    学习使用资源文件[10] 嵌入和提取任何类型的文件
    肛男四代
  • 原文地址:https://www.cnblogs.com/MaxElephant/p/8252215.html
Copyright © 2011-2022 走看看