1.脚本段:<% ... %>
2.表达式:<%= .. %>
下面,我们举个例子说明一下。
JSP代码如下:
<% int a = 10; %> <%=a%>
相应的转译文件,对应如下代码:
int a = 10;
out.print(a);
可以看出,表达式对应的是输出语句。所以,写成<%=a;%>就相当于out.print(a;);的话,就会报错。
3.声明:<%! ... %>
我们在JSP代码中写下如下语句:
<%! int h = 30; %>
相应的转译文件,对应的代码即是在类声明了一个成员变量
int h = 30;
那么,我们能不能声明一个类呢?
下面,我们试一下,将代码修改如下:
<% test(); %> <%! int h = 30; void test(){ System.out.println(h * 3); } %>
可以看到,test()函数的调用是没有任何问题的,保存刷新页面,能看到在控制台输出了90,所以声明函数是可以的。
对应的转译文件可以看到,声明了该函数,并且在Service类中调用了该方法:
int h = 30;
void test(){
System.out.println(h * 3);
}
...
test();