关于getParameterValues的几个问题

handsome1234 2003-03-29 02:54:19
<form action="" method="post">
<tr><td align="right" height="32" width="40%">登录名:</td>
<td>
<input type="text" name="logname" value="">
</td>
</tr>
<tr>
<td align="right" height="32">E_mail:</td>
<td>
<input type="text" name="email">
</td>
</tr>
<tr> <td colspan="2" align="center">
<input type="submit" value="找回密码" name="findpass">
1<form action="" method="post">
这里的action是空的请访问post后是如何运作?是不是本页面自己控制阿如果本页面有getParameterValues之类的东西的话!!
2包含以上代码的页面中也包含如下代码:
<%
String[] b=request.getParameterValues("findpass");
//boolean bb=request.getParameterValues("findpass")[0].trim().equals("找回密码");为什么这里不能执行,一执行就java.lang.NullPointerException,而下面的IF条件判断中就可以执行,并且不发生异常??
String[] cc=request.getParameterValues("logname");
String[] dd=request.getParameterValues("email");
String temp11=request.getParameterValues("findpass")[0].trim();//这句也执行就异常
if(request.getParameterValues("findpass") !=null
&& request.getParameterValues("findpass")[0].trim().equals("找回密码")
&&request.getParameterValues("logname") != null
&&request.getParameterValues("email") != null)

3getParameterValues返回的是一个数组,如何查看他的值,我试过了
String[] b=request.getParameterValues("findpass");
String[] cc=request.getParameterValues("logname");

String temp22=b[0];
String temp33=b[1];

都不行,
...全文
195 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
migrant1119 2003-03-29
  • 打赏
  • 举报
回复
只要判断了,无论是session中还是request中的nullPointerException都不会抛出的。
除非你判断为假了还要去掉用他的方法。
springgwn 2003-03-29
  • 打赏
  • 举报
回复
学习了!
icecloud 2003-03-29
  • 打赏
  • 举报
回复
String[] b=request.getParameterValues("findpass");

//下句执行前应该先判断request.getParameterValues("findpass")!=null

boolean bb=request.getParameterValues("findpass")[0].trim().equals("找回密码");

String[] cc=request.getParameterValues("logname");
String[] dd=request.getParameterValues("email");

//同样下句执行前应该先判断request.getParameterValues("findpass")!=null

String temp11=request.getParameterValues("findpass")[0].trim();

下面这些都是废话了。 不是都已经给了值了么?
if(request.getParameterValues("findpass") !=null
&& request.getParameterValues("findpass")[0].trim().equals("找回密码")
&&request.getParameterValues("logname") != null
&&request.getParameterValues("email") != null)
springgwn 2003-03-29
  • 打赏
  • 举报
回复
boolean bb=b[0].trim().equals("找回密码");

if(request.getParameterValues("findpass") !=null)//这里判断的是整个数组不为空,而判断树组中单个元素时,你那么写是错误的,我认为。
handsome1234 2003-03-29
  • 打赏
  • 举报
回复
为什么这里不能执行,一执行就java.lang.NullPointerException,而下面的IF条件判断中就可以执行,并且不发生异常??
xiaofenguser 2003-03-29
  • 打赏
  • 举报
回复
1、action是空就是指向本身所在的页面
2、因为当你得到的是null时,不能用.trim()等实例方法,用了就会有NullPointerException抛出
3、用for(int i = 0;i < b.length; i++){
out.println(b[i]);
}
你用的不行是因为得到的request.getParameterValues("findpass");不是一个数组,可能是空的原因

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧