jsp
- 4种基本语法
- 3种编译指令
- 7种动作指令
- 9种内置对象
一、4种基本语法
- 注释
- 声明
- 表达式
- 脚本段
1、注释
<%-- jsp注释 --%>
<!-- html注释 --!>
<% //java注释 %>
2、声明
语法:
<%! 声明部分 !%>
举例:
...
<body>
<%!
public int number;
public string test(){
return "Hello,World!";
}
%>
</body>
...
<%
out.println(number);
out.println(test());
%>
注意在里面声明的变量和方法,是对应的成员变量和成员方法。
3、表达式
语法:
<%= %>
举例:
<%=count%>
//承接上文的声明
4、脚本段
<% for(int i=0;i<5;i++)
{
%> <!-- 通过脚本段内嵌html标签,可以控制静态内容,但比较麻烦 --!>
<tr>
<td>内容</td>
<tr/>
<%
}
%>
二、3种编译指令
- page指令
- include指令
- taglib指令
1、page指令
语法:
<%@ page 属性名="属性值" 属性名="属性值" 属性名="属性值" ……%>
举例:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" errorPage="Error.jsp"%>
page指令通常位于Jsp顶端,针对当前页面。
它通常包含以下属性值:
属性 | 作用 |
---|---|
language | 声明当前jsp页面语法种类,默认为java,通常无须设置 |
extends | 指定本jsp页面对应java类继承的父类,或实现的接口 |
import | 导包 |
session | 设定是否需要导入HTTP Session,设置 true 或者 false |
buffer | 指定输入缓冲区的大小,默认 8KB |
autoFlush | 设置输出缓冲区溢出时,是否正常输出内容。 true:正常输出 false:溢出时产生一个异常 |
info | 设置jsp信息,可以调用 getServletInfo() 方法获取该值 |
errorpage | 指定异常或错误跳转页面 |
isErrorPage | 设置本页面是否为 错误处理页面 |
contentType | 设定网页文件格式和编码字符集,例如 “text/html;charset=utf-8” |
pageEncoding | 指定生成网页的编码字符集,也就是jsp第一次进行的编码 |
2、include指令(静态导入)
语法(静态引入):
<%@ include file="xx.jsp"%>
注意此处的导入为静态导入,将另一个文件的代码直接拼接,只生成一个java文件。(故存在变量干扰等问题)
语法(动态引入):
<jsp:include page="fileURL"></jsp:include>
动态导入,会生成两个java文件,虽然效率不够,但适用于需要经常改变的文件。
三、7种动作指令
指令 | 作用 |
---|---|
jsp:forward | 执行页面转向。转发给下一个页面 |
jsp:param | 配合forwad,可以转发时将参数加入 |
jsp:include | 动态引入 |
jsp:plugin | 下载javaBean或Applet到客户端执行 |
jsp:useBean | 创建一个javaBean实例 |
jsp:setPorety | 设置javaBean属性值 |
jsp:getPorety | 获取javaBean属性值 |
举例:
<jsp:forward page="b.jsp">
<jsp:param name="name" value="Sulin"/>
</jsp:forward>
四、9种内置对象
内置对象 | 作用 |
---|---|
application | 代表JSP所属的web应用本身,全局交换信息 |
config | servletConfig实例 |
exception | 只有当本页面为错误处理页面—isErrorPage=“true” |
out | 页面输出流 |
page | 相当于this,代表页面本身 |
pageContext | 代表页面上下文,可以访问页面中共享数据,getServletContext和getServletConfig |
request | 请求 |
response | 响应 |
session | 一次会话,点开浏览器进入网站,开启会话;关闭浏览器,结束会话 |