纳闷?帮忙看看,一个小问题

shiqi80 2004-04-16 12:54:22
下面是我的原码,很简单大家一看就明白。可为什么就达不到我想要的效果呢?当我什么也不输入的时候,他还是做 out.print("您的名字是:"+user);

formtest.html
<html>
<head>
<title>提交测试</title>
</head>

<body>
请输入您的名字:<br>
<!-- 添加一个表单 -->
<form method=post action="saveform.jsp">

<input type="text" name="user" size=10 >
<input type="submit" name="submit" value="提交">

</form>

</body>
</html>

saveform.jsp
<%@ page language="java" %>
<html>
<head>
<title>输出用户的名字</title>
</head>

<body>
<!-- 提交表单后的响应 -->
<% String user=request.getParameter("user");%>
<%
if(user==null){
%>
<p>你的名字不能为空
<%
} else {
out.print("您的名字是:"+user);
}
%>
</body>
</html>
...全文
39 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shiqi80 2004-04-19
  • 打赏
  • 举报
回复
I see!thank you
flyforlove 2004-04-16
  • 打赏
  • 举报
回复
不输入,只是说明String对象的内容为空,而不代表user这个引用为空,
也就是说user不为空,它指向了一个内容为空的String对象

这种情况下出现引用为空的原因,要么是你提取的表单字段不存在,要么就是意外出错。
比如你表单里没有username这个字段,那么你这样取
username=request.getParameter("username");
那么这时候username==null
shiqi80 2004-04-16
  • 打赏
  • 举报
回复
flyforlove(为情飞) 多谢多谢,正是如此!!
可我还是不太明白,为什么在什么也不输入的时候,jsp不认为是空呢?能告诉我其中原由吗?
flyforlove 2004-04-16
  • 打赏
  • 举报
回复
if(user==null||user.length()==0)

81,115

社区成员

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

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