日期:2014-05-18  浏览次数:20714 次

初学者的问题,请大虾指点,谢拉
源代码:
<%@   page   contentType= "text/html;charset=gb2312 "@%>
<html>
<body   bgcolor=cyan> <font   size=1>
<p> 请输入数字:
<form   action= "tree.jsp "   method=post   name=form>
<input   type= "text "   name= "boy ">
<input   type= "submit "   value= "送出 "   name=submit>
</form>
<p> 获取文本框的名字:
<%
String   strtext=request.getparameter( "boy ");
double   number=0,r=0;
if(strtext==null)
{
textContext= " ";
}
try{
number=Double.parseDouble(strtext);
if(number> =0)
{
r=Math.sqrt(number);
out.print( "br "+String.valueOf(number)+ "的平方根: ");
out.print( " <br> "+String.valueOf(r));
}
}catch(NumberFormatException   e)
{}
%>
</body>
</html>
问题一:为什么要有这段代码?
if(strtext==null)
{
textContext= " ";
}
问题二:
这段代码什么时候执行?
<%
String   strtext=request.getparameter( "boy ");
double   number=0,r=0;
if(strtext==null)
{
textContext= " ";
}
try{
number=Double.parseDouble(strtext);
if(number> =0)
{
r=Math.sqrt(number);
out.print( "br "+String.valueOf(number)+ "的平方根: ");
out.print( " <br> "+String.valueOf(r));
}
}catch(NumberFormatException   e)
{}
%>


------解决方案--------------------
if(strtext==null)
{
textContext= " ";
}//这个不是判断是否为空吗,为空则置为空值 ,主要是为了维护程序的健壮
问题2,应该是在跳转到这个页面的时候执行
------解决方案--------------------
<form action= "tree.jsp " method=post name=form>
当你点提交按钮的时候,会将页面的数据,提交到tree.jsp这个页面。
当你运行你上面的JSP的时候会执行
<%
String strtext=request.getparameter( "boy ");
double number=0,r=0;
if(strtext==null)
{
textContext= " ";
}
try{
number=Double.parseDouble(strtext);
if(number> =0)
{
r=Math.sqrt(number);
out.print( "br "+String.valueOf(number)+ "的平方根: ");
out.print( " <br/> "+String.valueOf(r));
}
}catch(NumberFormatException e)
{}
%>
这段代码