1.表达式标签<%=代码%>
(1)计算表达式的值
<%=1+1%>
(2)在页面显示表达式的值
<%=pageContext.getAttribute("ting")%>
(3)注意事项
- <%=%>不能有分号
- 表达式可以是单纯的一个变量,也可以是加减乘除等式子
2.声明表达式<%!代码%>
(1)声明变量和函数,可以由Java代码调用。
<%! final double PI=Math.PI; //定义常量 double r; //定义变量 double getArea(double a){ //定义方法 return PI*a*a; } double getLength(double a) { //定义方法 return 2*PI*a; } %>
(2)注意事项
- <%! %>中可以出现分号
- 定义的变量是全局变量,用户共用的。方法只能定义在这里面
- 声明脚本可以放在页面的下方,也可以放在页面的上方。
- 不建议在声明脚本中声明变量,这样会导致线程不安全。
3.普通脚本<%代码%>
除了不能声明脚本外,其他java代码都可以放在脚本代码中。可以引用上面定义的变量和方法,Java代码大部分在此处书写,多用于声明变量和控制流程代码。
<% r=100; out.println("调用getArea方法计算半径是"+r+"的园的面积:"); double area=getArea(r); out.println(area); r=50; out.println("<BR>调用getLength方法计算半径是"+r+"的园的周长:"); double length=getLength(r); out.println(length); %>
4.完整示例
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <% String str=request.getParameter("abc"); if(str==null) { str=""; } if(str.equals("yes")) { response.setContentType("text/plain;charset=gb2312"); } %> <html> <head> <title>My JSP 'showInfo.jsp' starting page</title> </head> <body> <form method="get" name="form"> <input type="submit" value="yes" name="abc"/> </form> </body> </html>
参考文档: