[セットトップ]javaによるクッキーの操作
4872 ワード
JAvaはクッキーの操作が簡単で、主にクッキーの確立とクッキーの読み取り、クッキーのライフサイクルとクッキーのパスを設定する方法について紹介します.
無ライフサイクルのクッキーを作成します.つまり、ブラウザが閉じるにつれて消えてしまうクッキーです.コードは次のとおりです.
1
2
3
4
ライフサイクルのあるクッキーを作成し、ライフサイクルを設定します.
1
2
3
4
5
6
7
8
次に、クッキーを読み取る方法について説明します.クッキーコードを読み取るには、次のようにします.
1
2
3
4
5
上は基本的な読み書きクッキーの操作です.私たちは実際にパッケージを行ったほうがいいです.例えば、クッキーを追加します.私たちはクッキーのname、value、ライフサイクルに注目しています.だから、関数をパッケージします.もちろん、responseオブジェクトも入ります.addCookie()コードは以下の通りです.
1
2
3
4
5
6
7
8
9
10
11
12
13
クッキーを読み取るとき、私たちの操作を便利にするために、私たちは関数をカプセル化したいと思っています.クッキーの名前を提供すれば、クッキーのvalueを取得することができます.この考えを持って、クッキーをMapにカプセル化することを容易に考えて、次のカプセル化を行います.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
無ライフサイクルのクッキーを作成します.つまり、ブラウザが閉じるにつれて消えてしまうクッキーです.コードは次のとおりです.
1
2
3
4
HttpServletRequest request
HttpServletResponse response
Cookie cookie =
new
Cookie(
"cookiename"
,
"cookievalue"
);
response.addCookie(cookie);
ライフサイクルのあるクッキーを作成し、ライフサイクルを設定します.
1
2
3
4
5
6
7
8
cookie =
new
Cookie(
"cookiename"
,
"cookievalue"
);
cookie.setMaxAge(
3600
);
// , cookie , cookie
cookie.setPath(
"/"
);
response.addCookie(cookie);
次に、クッキーを読み取る方法について説明します.クッキーコードを読み取るには、次のようにします.
1
2
3
4
5
Cookie[] cookies = request.getCookies();
// cookie
for
(Cookie cookie : cookies){
cookie.getName();
// get the cookie name
cookie.getValue();
// get the cookie value
}
上は基本的な読み書きクッキーの操作です.私たちは実際にパッケージを行ったほうがいいです.例えば、クッキーを追加します.私たちはクッキーのname、value、ライフサイクルに注目しています.だから、関数をパッケージします.もちろん、responseオブジェクトも入ります.addCookie()コードは以下の通りです.
1
2
3
4
5
6
7
8
9
10
11
12
13
/**
* cookie
* @param response
* @param name cookie
* @param value cookie
* @param maxAge cookie
*/
public
static
void
addCookie(HttpServletResponse response,String name,String value,
int
maxAge){
Cookie cookie =
new
Cookie(name,value);
cookie.setPath(
"/"
);
if
(maxAge>
0
) cookie.setMaxAge(maxAge);
response.addCookie(cookie);
}
クッキーを読み取るとき、私たちの操作を便利にするために、私たちは関数をカプセル化したいと思っています.クッキーの名前を提供すれば、クッキーのvalueを取得することができます.この考えを持って、クッキーをMapにカプセル化することを容易に考えて、次のカプセル化を行います.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/**
* cookie
* @param request
* @param name cookie
* @return
*/
public
static
Cookie getCookieByName(HttpServletRequest request,String name){
Map<String,Cookie> cookieMap = ReadCookieMap(request);
if
(cookieMap.containsKey(name)){
Cookie cookie = (Cookie)cookieMap.get(name);
return
cookie;
}
else
{
return
null
;
}
}
/**
* cookie Map
* @param request
* @return
*/
private
static
Map<String,Cookie> ReadCookieMap(HttpServletRequest request){
Map<String,Cookie> cookieMap =
new
HashMap<String,Cookie>();
Cookie[] cookies = request.getCookies();
if
(
null
!=cookies){
for
(Cookie cookie : cookies){
cookieMap.put(cookie.getName(), cookie);
}
}
return
cookieMap;
}