jsp语法:
<!-- jsp语法分为三大内容:
1.jsp的脚本语法
2.jsp的编译器指令
3.jsp的动作语法
jsp的九大内置对象
-->
一.JSP脚本语法:
JSP脚本语法又分为以下几部分:
1.jsp注释(jsp注释的内容不会出现在生成的servlet中):<% -- 注释的内容 -- %>
2.jsp脚本段(会生成在_jspService方法中,写java代码片段需满足java方法书写规范 ,不要漏写“;”):<% %>
3.jsp声明(会生成在该servlet的类体中,写java代码需要满足java类体书写规范,不要漏写“;”):<%! %>
4.jsp表达式(将表达式(变量,方法的调用)输出在页面中,不能写“;”):<%= %>
<%
//java代码片段
int a = 123;
System.out.println("haha");
%>
<%!
private int a = 456;
public int add(int a,int b){
return a + b;
}
%>
<%=a%>
<%=add(3,4)%>
二.2.jsp的编译器指令:
编译器指令的种类?
1.page指令
属性:
pageEncoding:设置jsp页面的字符集
contentType:设置jsp的响应类型
import:导包
errorPage:当页面执行代码出现异常时,跳转的页面
session:表示当请求到本页面时,是否为其创建一个session对象
2.include指令
file:用来将一个页面包含在本页面(将两个jsp混合编译成一个java文件,注意不要两个页面中相同的变量名),我们把这样导入jsp页面称为:静态导入!
3.taglib指令
用于导入jsp标准标签库
三.jsp的动作语法:
<%-- jsp动作语法就是jsp中新添加的一些标签,这些标签是为了在JSP中消灭java代码
<jsp:include> 动态导入一个页面
<jsp:forward> 请求转发
--%>
四.九大内置对象:
这九大内置对象,都是位于_jspService方法中可以直接使用的对象,记忆时使用4+2+3
pageContext --- javax.servlet.jsp.PageContext
request --- javax.servlet.http.HttpServletRequest
session --- javax.servlet.http.HttpSession
application --- javax.servlet.ServletContext
out --- javax.servlet.jsp.JspWriter
response --- javax.servlet.http.HttpServletResponse
以下三项不常用:
page --- 本质就是当前servlet对象,java.lang.Object
config --- javax.servlet.ServletConfig
exception --- java.lang.Throwable