该用户从未签到
|
1)如何获得请求参数值。. n2 ]) D! o4 c, K: m, V
a,String request.getParameter(String paraName);
8 a5 V8 I1 z b. C. v( Y 要注意的问题:: C+ _$ Q- W5 _9 T5 } f
如果paraName与实际的请求参数名不一致,
! S8 ?& c0 ~0 c) g* A& _ 则返回null。
" F3 n5 B4 [8 O# T# U% e3 F5 w 如果没有输入参数值,则返回""。' ~; ^1 E- u2 ] V0 E% s
b,String[] request.getParameterValues(String0 W+ m0 J2 B6 y9 N% ]
paraName);
: |+ D1 S' u9 P9 P: T 用在有多个请求参数名相同的情况下使用。
7 `0 N* X6 C1 @, c6 p; W8 D5 Y 比如 ?interest=fishing&interest=cooking
7 m8 S9 G4 v! D) ]5 O# v* E 2)如何处理表单中的中文 i/ e4 B% Y% o7 i, g) h
a,浏览器会如何对表单中的数据进行
r, n5 `" {) z" a, P 编码?3 z+ Q3 V% X" _$ ?* w9 C
当表单采用post方式提交时,浏览器会按照' Z( I( w$ O( D7 D/ N8 k
打开该表单所在的页面的编码来对表单中的8 a8 ~: W. T3 P2 a: E
数据进行编码。2 k( @( d$ ?2 _7 v- q
b,在html文件当中,添加以下代码的作用, x* [* J z6 ^$ t
<meta http-equiv="content-type" content=3 G, v3 Y& [& [6 }/ @
"text/html;charset=utf-8">$ ]; H) X6 \9 ?" N
作用1:模拟http消息头(content-type),# x( t+ m3 G3 H( p8 d2 m
让浏览器以utf-8的编码格式来打开该页面
# g( n" \& v' V0 m% [) L$ ~ (要确保html文件本身确定是使用utf-8保存的)。+ Z3 ~0 ^7 X3 ]6 T- L
作用2: 确保浏览器按指定的编码来对
" I$ r6 n5 g v% S6 x, O. s 表单中的数据进行编码。5 u: p! {3 g& t y% x5 q
c,解决方案:
# P; k5 d3 Z- h3 X step1:3 c, c; U9 y2 U' `& A
在html文件中,添加! k! A. V& D* b$ O' X
<meta http-equiv="content-type" content=
; J) e, s @1 H1 B* ~- E# N) E "text/html;charset=utf-8">6 d6 ^! N% W4 i8 m4 ~0 d3 H
另外,表单的提交方式必须是post。
9 v$ X# z6 o* P/ F/ `' S, n step2:
6 v& B$ E9 o1 o3 o& @7 z% G1 i: V! N, W 在服务器端,使用servlet读取表单中的
+ E" F9 T; N) |4 m 请求参数时:
8 _# i* u5 G! Q5 @$ H# s& r0 O& u request.setCharacterEncoding("utf-8");: w. {: q/ S9 L3 u1 M
这行代码的作用:设置解码时的编码格式。% M* k+ D) E2 N8 ~7 R6 h' j
) I7 P8 g1 d/ j" Z 如果servlet输出中文,要添加如下代码。
2 \: F6 e, v& V2 w" ?$ {! |) q response.setContentType(
9 S1 I1 S) P4 j "text/html;charset=utf-8");
1 R0 ^5 t: ?# {3 J' [+ U, r- H 这行代码的作用:7 K3 {+ W8 X: ^9 @, X! _
作用1:指定out.println输出时所使用的编码。) w4 X" {4 \% n; U8 `
作用2:生成一个消息头 T5 P. W; O& V% }) n" b
content-type:text/html;charset=utf-8! W% K2 a- E$ `6 O+ I4 L
告诉浏览器,返回的数据类型是html,编码是
, W) p9 F' m$ O2 v+ ]- I+ c utf-8。这样,浏览器一定会以指定的编码来+ z4 [. R$ W: G- C$ _) o; L
显示该页面。3 F3 y# W5 N* _# u/ X+ V+ ~# T1 N
' R2 W* O3 g+ s) O |
|