首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

简单jsp有关问题

2012-03-11 
简单jsp问题%@ page contentTypetext/htmlcharsetGB2312 %HTMLBODY BGCOLORcyan%! double x,

简单jsp问题
<%@ page contentType="text/html;charset=GB2312" %>
<HTML><BODY BGCOLOR=cyan>
  <%! double x,y;
  double multi(double x,double y)
  {return x*y;}
  double div(double x,double y)
  {return x/y;}
  %>
  x=127.0;
  y=18.0;
  out.println("调用multi方法计算"+x+"与"+y+"之积:");
  double a=multi(x,y);
  out.println(a);
  x=a;
  out.println("调用div方法计算"+x+"除以"+y+"的商:");
  double b=div(x,y);
  out.println(b);
  %>
</BODY></HTML>




为什么显示的是代码中x=127.0之后的部分呢?再加一个<% ...%>之后显示错误

[解决办法]
<% 这里是java代码,百分号开始,百分号结束 ,百分号之后不用 感叹号了%> 
x=127.0之前java代码已经结束,之后就是html代码了,所以......你懂的。
[解决办法]
你的<%! %>这个算是定义、声明,在html中这些标识符都是成对出现的,你看你后面那个%>和那个对应啊。应该把 {return x/y;}
%>
改成
{return x/y;}
%>
<%

因为你这个是在body里面,所以<% %>或者<%! %>里面的是执行,不在这个标识符里的就会打印。不信你试试,例子,直接放在body之间,
<% int i=3 int j=5 int k=i+j out.print(k); %> 效果为: out.print(k);

运行结果为:

8 效果为: out.print(k);
[解决办法]

探讨
<% 这里是java代码,百分号开始,百分号结束 ,百分号之后不用 感叹号了%>
x=127.0之前java代码已经结束,之后就是html代码了,所以......你懂的。

[解决办法]
当然可以运行啊,后面的是当做Html代码,直接显示在页面上了,而不是作为java代码,当然不会编译出错了。
[解决办法]
中间都是Java代码
把中间那个%>去掉
[解决办法]
这种学习中练习的代码为什么不写在类里面呢?写个带main方法的类测试不就行了么!一般项目开发中不允许在jsp里面出现<%=%>这种代码的。最基本的也要用EL表达式,或自定义标签
[解决办法]
探讨

中间都是Java代码
把中间那个%>去掉

[解决办法]
四楼的是对的,去掉中间那个%>也是对的。
楼主一定要注意这些符号的配对情况。
[解决办法]
探讨
这种学习中练习的代码为什么不写在类里面呢?写个带main方法的类测试不就行了么!一般项目开发中不允许在jsp里面出现<%=%>这种代码的。最基本的也要用EL表达式,或自定义标签

热点排行