1.概念:jsp实际上就是一个特殊的servlet,在jsp中可以实现html代码和java代码嵌套书写
用:
<%%> :这个符号里面就可以写Java代码(在Java代码中,定义的方法中能写什么java代码,这个符号中就能写什么java代码)
<%!%> :这个符号中写的代码就是Java代码中的成员变量
<%=%> :这个符号就相当于一个输出符号,例如:<%=hello%> 就会在页面上输出hello
2.指令
*作用:用于配置jsp页面,导入资源文件
*格式:
<%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ...%> 主义之间用空格隔开
*分类:
1.page :配置jsp页面的
*contentType:等同于response.setContentType()
1.设置响应体的mime类型以及字符集
2.设置当前jsp页面的编码(只能是高级的IDE才能生效,如果使用低级工具,则需要设置pageEncoding属性设置当前页面的字符集)
*import:导包
*errorPage:当前页面发生异常后,会自动跳转到指定的错误页面(这样就可以避免客户端看到一堆看不懂的错误信息,可以让错误页面好看一些,如:设置错误页面只显示 服务器正忙。。。)
*isErrorPage:标识当前的页面是否是错误页面
*ture:是,可以使用其中的一个内置对象exception
*false:否,默认值,不可使用内置对象exception
2.include:页面包含的。导入页面的资源文件(就是把多个页面都需要用的相同代码代码段写成一个 名称.jsp,然后直接把这个页面导入即可避免写重复代码)
例如:* <%@include file="top.jsp"%> 这里的top.jsp就是一个重复代码段的jsp
3.taglib:导入资源
* <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
* uri="http://java.sun.com/jsp/jstl/core" 这是引入的资源
* prefix="c" 这是一个前缀 是自定义的(也可以说是给这个引入的资源取一个一个名称)
3. 注释:
1. html注释:
<!-- -->:只能注释html代码片段
2. jsp注释:推荐使用
<%-- --%>:可以注释所有
4.内置对象
*在jsp页面中不需要创建就可以直接使用的对象
*一共有九个:
变量名 真实类型 作用
* pageContext PageContext 在当前页面共享数据,还可以获取其他八个内置对象
* request HttpServletRequest 一次请求访问的多个资源(转发)
* session HttpSession 一次会话的多个请求间
* application ServletContext 所有用户间共享数据
* response HttpServletResponse 响应对象
* page Object 当前页面(Servlet)的对象 this
* out JspWriter 输出对象,数据输出到页面上
* config ServletConfig Servlet的配置对象
* exception Throwable 异常对象,只有在jsp页面中设置了isErrorPage=“ture” 属性,才能使用