(技巧,摘抄)
例如在网页中有一个链接,
……/mytest.jsp?id=1&ptdm=a+b
当我提交以后,使用request.getParameter("ptdm")得到的值不是a+b,而是a
如何能得到a+b 呢?
很简单
/mytest.jsp?id=1&ptdm=a%2bb
用%2b代替+号就可以了
+在java中是连接字符串运算符,而在座参数传递时参数不能传递一个表达式。所以如果a+b是表达式,最好先计算结果然后再传。如果就是想传递表达式,可以将这个表达式赋给一个字符串变量,然后传递这个变量,比如String a=a+b 传递用:mytest.jsp?id=1&ptdm=<%=a%>
如果只是传+,应该用下面的字符串代替特殊字符。
特殊特殊字符的含义
————————————————————————————
字符 特殊字符的含义 URL编码
# 用来标志特定的文档位置 %23
% 对特殊字符进行编码 %25
& 分隔不同的变量值对 %26
+ 在变量值中表示空格 %2B
\ 表示目录路径 %2F
= 用来连接键和值 %3D
? 表示查询字符串的开始 %3F
如果+是连接的作用,那就用"mytest.jsp?id=1&ptdm="+a+b,然后传过去