1.<%%>定义局部变量,程序语句
<%//局部变量,表示每一次执行页面都要重复声明
int num=10;
%>
<%//一个JSP文件里可以同时编写多个Scriptlet
out.println("<h1>"+ num++ +"</h1>");
%>
2.<%! %>定义全局变量,全局常量,方法,类
定义全局变量
<%! //局部变量,只是在第一次使用时声明
int num=10;
%>
<% //一个JSP文件里可以同时编写多个Scriptlet
out.println("<h1>"+ num++ +"</h1>");
%>
定义全局常量
<%! //局部变量,只是在第一次使用时声明
public static final String DBDRIVER="oracle.jdbc.driver.OracleDriver";
%>
<% //一个JSP文件里可以同时编写多个Scriptlet
out.println("<h1>"+ DBDRIVER +"</h1>");
%>
定义方法和类
<%! //局部变量,只是在第一次使用时声明
class Book{
private String title;
private double price;
public Book(String title,double price){
this.title=title;
this.price=price;
}
public String toString(){
return "title="+this.title+",price="+this.price;
}
}
public static int add(int ... args){
int sum=0;
for(int x=0;x<args.length;x++){
sum+=args[x];
}
return sum;
}
%>
<% //一个JSP文件里可以同时编写多个Scriptlet
out.println("<h1>"+ new Book("yuan",9999) +"</h1>");
out.println("<h1>"+ add(10,20,30) +"</h1>");
%>
3.<%= 变量|常量|方法返回值%>
<%!
public static final String DBDRIVER="oracle.jdbc.driver.OracleDriver";
%>
<%//局部变量,表示每一次执行页面都要重复声明
int num=10;
%>
<h1><%=DBDRIVER %></h1>
<h1><%=num %></h1>
<h1><%=num*2 %></h1>
4.表达式输出和out.println()输出区别?
<% //所有语句都必需在此处编写
out.println("<table border='1'>");
for(int x=1; x<=9;x++){
out.println("<tr>");
for(int y=1;y<=x;y++){
out.println("<td>"+x+"*"+y+"="+(x*y)+"</td>");
}
out.println("</tr>");
}
out.println("</table>");
%>
<table border='1'>
<%
for(int x=1;x<=9;x++){
%>
<tr>
<%
for(int y=1;y<=x;y++){
%>
<td><%=x%>*<%=y%>=<%=x*y%></td>
<%
}
%>
</tr>
<%
}
%>
</table>