一个令人困惑的servlet简单例子

morningnet 2011-11-25 12:23:02
输入一个数,用servlet求它的平方根,如果输入一个两位数,程序运行正常;如果输入一位整数,程序出错:empty string.输入一位整数时,需在数前加一个空格才能使程序正确运行.请高手指点迷津!!!代码如下

inputNum.jsp:
<%@page contentType="text/html;charset=GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE> sqrt </TITLE>

</HEAD>

<BODY>
输入一个数,用servlet求这个数的平方根:
<form method="post" action="sqrt/">
<input type="text" name="num">
<input type="submit" value="提交">
</form>
</BODY>
</HTML>

sqrt.java:

package org.mhn.test;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class sqrt extends HttpServlet

{
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void service(HttpServletRequest req,HttpServletResponse rsp) throws IOException
{
PrintWriter out=rsp.getWriter();
rsp.setContentType("text/html;charset=GB2312");
out.println("<html><body>");
String number=req.getParameter("num");
double n=0;
try
{
n=Double.parseDouble(number);
out.println("<br>"+ Math.sqrt(n));
}
catch (NumberFormatException e)
{
out.print("<h1>"+ e.toString() +"</h1>");
}
out.println("</html></body>");
}
}

配置文件:
<servlet>
<servlet-name>sqrt</servlet-name>
<servlet-class>org.mhn.test.sqrt</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>sqrt</servlet-name>
<url-pattern>/sqrt/*</url-pattern>
</servlet-mapping>
...全文
238 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
lt766054432 2012-09-07
  • 打赏
  • 举报
回复
out.println("</html></body>");这一句结束反了吧
应该是这样的吧out.println("</body></html>");
任第一 2012-09-07
  • 打赏
  • 举报
回复
程序确实没有问题。呵呵。把你的工程clean 一下。
Yalonexm 2012-09-07
  • 打赏
  • 举报
回复
已撸!
dw_java08 2012-09-07
  • 打赏
  • 举报
回复
楼主把tomcat清空一下,找到work那个文件夹,删除掉里面所有的东西,重新部署启动试试。
cxw3152 2012-09-07
  • 打赏
  • 举报
回复
没问题呀。。
AlenOU 2012-09-07
  • 打赏
  • 举报
回复
没问题啊!清理一下工程,tamcat,关闭浏览器重试下看!
jya126 2012-09-07
  • 打赏
  • 举报
回复
程序没啥问题,可能是你浏览器缓存的事
FChengLiang 2011-11-25
  • 打赏
  • 举报
回复
肯定没问题的
alexander2 2011-11-25
  • 打赏
  • 举报
回复
经过测试,完全没问题
Super_Ninja 2011-11-25
  • 打赏
  • 举报
回复
没有问题!我帮你测试过的。你重启web容器试下。只有当你没有输入任何值的时候才报出“empty String”的错误,其他情况下都是可以正常运行的!
xxdewws 2011-11-25
  • 打赏
  • 举报
回复
没有问题啊。。。
你试试把项目重新部署,外部容器重启再试试。
adrian_it 2011-11-25
  • 打赏
  • 举报
回复
看着没问题。
amier_one 2011-11-25
  • 打赏
  • 举报
回复
我看着也行,
仙之色兮 2011-11-25
  • 打赏
  • 举报
回复
我按照你的代码部署了一下。。完全没问题的啊!?
rockay2006 2011-11-25
  • 打赏
  • 举报
回复
看不出来问题

81,092

社区成员

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

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