二、JSP的四种基本语法
JSP的四种基本语法
1.JSP注释
(1)JSP注释格式:<%-- JSP注释 --%>(注意与HTML注释的区分:<!-- HTML注释 -->)
(2)示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP注释</title> </head> <body> 注释示例: 1.增加JSP注释 <%-- JSP注释部分 --%> 2.增加HTML注释 <!-- HTML注释部分 --> <!-- 通过查看页面源代码结论: JSP注释不会发送到客户端,所以在页面的源代码无法查看到JSP注释 --> </body> </html>
2.JSP声明
(1)JSP声明用于声明变量和方法,JSP声明将会转换成Servlet的成员变量或成员方法,所以JSP声明依然符合Java语法;
(2)示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP声明</title> </head> <!-- JSP声明部分 --> <%! //声明一个成员变量 public int count; //声明一个方法 public String info(){ return "hello"; } %> <body> <!-- 输出count --> <%out.println(count);%> <!-- 输出info方法的返回值 --> <%out.println(info()); %> </body> </html>
(3)在JSP页面声明的变量或方法对应Servlet中的类成员和类方法,可以通过static修饰使其成为类变量或者类方法;
(4)JSP页面会编译成一个Servlet类,每个Servlet类在容器中只有一个实例;
(5)在JSP页面中声明的变量是成员变量,成员变量只在创建实例时初始化,该变量的值将一直保存,直到实例销毁;
3.输出JSP表达式
(1)输出表达式值的格式:<%= 表达式%> (与使用<%out.println(表达式);%>效果相同);
(2)示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP输出表达式</title> </head> <%! public int i; public String info(){ return "hello"; } %> <body> <!-- JSP输出表达式示例 --> <%= i %> <%= info() %> </body> </html>
(3)注意:输出表达式后不能有分号;
4.JSP脚本
(1)JSP脚本中可以包含任何可执行的Java代码,通常来说,所有可执行的Java代码都能通过JSP嵌入HTML页面;
(2)示例1:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP脚本示例1</title> </head> <body> <table bgcolor="#9999dd" border="1" width="300px"> <!-- JSP脚本,这些脚本将会对HTML标签产生作用 --> <% for(int i =0;i<10;i++){ %> <!-- 上面的循环将控制<tr>标签的循环 --> <tr> <td>循环值:</td> <td><%=i %></td> </tr> <% } %> </table> </body> </html>
(3)在JSP脚本中也可以声明变量,但是所声明的变量是局部变量,不能使用public、private等修饰符修饰,也不能使用static修饰符修饰;
(4)JSP脚本中的内容在对应Servlet中的_jspService方法中;