该用户从未签到
|
1)如何获得请求参数值。9 n& Y- x1 }7 E9 d/ V+ K$ u+ |# Z) ^
a,String request.getParameter(String paraName);
# e/ B, W$ z9 L7 O% X 要注意的问题:
' \. l$ M/ J) D% X 如果paraName与实际的请求参数名不一致,
" F5 u& K3 O8 i& D 则返回null。: g. g7 w/ l! P" S
如果没有输入参数值,则返回""。3 G0 g [5 d. B" }1 g- ] `
b,String[] request.getParameterValues(String
; v- P" p t9 r- J5 @ paraName);6 S7 g$ O4 U; {! S" {; `
用在有多个请求参数名相同的情况下使用。
3 V4 n; q! Y4 Q! s 比如 ?interest=fishing&interest=cooking
" a+ s) n* z$ k+ C& ]( W) I 2)如何处理表单中的中文; Z; G2 A+ t( P
a,浏览器会如何对表单中的数据进行( Q- q. ~0 b+ q8 m7 S+ ?
编码?
1 C, r6 B; \: ~7 C. y& S6 x: u 当表单采用post方式提交时,浏览器会按照
; i' I4 t: u* V# c9 ]+ S. V 打开该表单所在的页面的编码来对表单中的& R w- @* K2 g% u6 O/ C. x
数据进行编码。
) [& Q9 X1 [) v7 L$ l$ P" x- s3 ? b,在html文件当中,添加以下代码的作用
: a) L4 ^$ ]# Q <meta http-equiv="content-type" content=6 r" D) v- q% @/ D9 \) c# u
"text/html;charset=utf-8">1 Q/ M6 x0 ^: r& ~5 O# u- `
作用1:模拟http消息头(content-type),: y% ]2 W# W" m7 ]9 X
让浏览器以utf-8的编码格式来打开该页面
" o& [ E" ?/ r4 @- y7 n (要确保html文件本身确定是使用utf-8保存的)。
/ E9 Y; l5 ^- K$ H 作用2: 确保浏览器按指定的编码来对
. y% k6 ~; n7 p$ w; q 表单中的数据进行编码。2 ] O$ A/ y' G, A: f* u
c,解决方案:
3 G: j! M8 T7 Y/ K4 |: U# }! n/ C3 D step1:
/ b- U1 `9 { Z# B7 e% d5 ? 在html文件中,添加# a$ ~$ U6 n* K$ u) s
<meta http-equiv="content-type" content=6 L$ m0 u3 S& S5 w$ u9 P( z
"text/html;charset=utf-8">+ d' e; Z& S0 ?( [& I1 ^0 t
另外,表单的提交方式必须是post。- u9 r! q; u/ g3 |& L
step2:
( V* p$ P. O% q) F+ Q; R 在服务器端,使用servlet读取表单中的5 o% `- n* M- d& W
请求参数时:
6 q/ q) Z' S! M request.setCharacterEncoding("utf-8");
/ U2 ]/ A! u: R; ^2 X5 u' c, O$ t 这行代码的作用:设置解码时的编码格式。
% S. z: T& D" j F+ b9 z + |: V# t* v3 k" H& }
如果servlet输出中文,要添加如下代码。
2 g7 A1 Y; a7 M& g* U response.setContentType(
5 o& E0 x0 }" n( x "text/html;charset=utf-8");
. e, i: K# q: N2 m: n, L 这行代码的作用:
8 Y: H, R# q9 l! N! k 作用1:指定out.println输出时所使用的编码。
4 H" t" H7 k6 O* n) {+ L/ t" K 作用2:生成一个消息头
7 G2 C' s; ]( T( Y content-type:text/html;charset=utf-8) `9 X4 n1 V6 }# j) ^9 U
告诉浏览器,返回的数据类型是html,编码是5 D. c2 D4 I+ R+ r( F5 I% S+ j
utf-8。这样,浏览器一定会以指定的编码来
, s( b I" T' @( v9 {7 N1 H) Y 显示该页面。4 i) ^2 |5 s) L4 T
9 f" ]0 S* q1 ^( [4 {' U
|
|