Java Web 学习 : JSP

  • JSP 简介:

JSP 全名为 Java Server Pages,其根本是一个简化的 Servlet 设计,他实现了在 java 中使用 HTML 标签。JSP 是一种动态网页技术标准,也是 JAVA EE 标准。JSP 与 Servlet 一样,实在服务器端执行的。

  • JSP 基础语法:

Java Web 学习 : JSP_第1张图片
JSP 页面元素构成
  • JSP 指令

page 指令:
通常位于 JSP 页面的顶端,同一个页面可以有多个 page 指令。

page 指令语法:

<%@ page 属性1="属性值" 属性2="属性值1,属性值2"... 属性n="属性n" %>

属性 描述 默认值
language 制定 JSP 页面使用的脚本语言 java
import 通过该属性来应用脚本语言中使用到的类文件
contentType 用来制定 JSP 页面所采用的编码方式 text/html,ISO-8859-1

include 指令:将一个外部文件嵌入到 JSP 文件中,同时解析这个页面中的 JSP 语句。
taglib 指令:使用标签库定义新的自定义标签,在 JSP 页面中启用定制行为。

  • JSP 注释

在 HTML 的注释:

//客户端可见

JSP 注释:
> <% --html 注释 --%> //客服端不可见

JSP 脚本注释:

//单行注释
/**/多行注释

  • JSP 脚本

在 JSP 页面中执行的 java 代码
语法:

<% java 代码 %>

在 JSP 页面中定义变量或者方法
语法:

<%! Java代码%>

JSP 表达式
语法:

<% =表达式 %> //注意:表达式不已分号结束

  • JSP 生命周期

Java Web 学习 : JSP_第2张图片






  • JSP 内置对象

内置对象简介:
JSP 内置对象是 Web 容器创建的一组对象,不适用 new 关键字就可以使用内置对象。

Example:

<%
int[] value = {60,70,80};
for(int i : value){
    out.println(i);
}
%>
Java Web 学习 : JSP_第3张图片
  • out 对象:
    out 对象是 JspWriter 类的实例,是向客户端输出输出内容常用的对象。
    常用的方法如下:
1. void println() 想客户端打印字符串
2. void clear() 清除缓冲区的内容,如果在 flush 之后调用会抛出异常
3. void clearBuffer 清除缓冲区的内容,如果在 flush() 方法之后调用不会抛出异常
4. void flush() 将缓冲区内容输出到客户端
5. int getBufferSize() 返回缓冲区一字节数的大小,如不设缓冲区则为 0 
6. int getRemainning() 返回缓冲区剩余多少可用
7. boolean isAutoFlush() 返回缓冲区满时,是自动清空还是抛出异常
8. void close() 关闭输出流
  • request 对象:
    客户端的请求信息被封装在 request 对象中,通过它才能了解到客户端的需求,然后做出响应。他是 HttpServletRequest 类的实例。request 对象具有请求域,即完成客户端的请求之前,该对象一直有效。常用方法如下:
1. String getParameter(String name) 返回 name 指定的参数值
2. String[] getParameterValues(String name) 返回包含参数 name 的所有值的数组
3. void setAttribute(String,Object); 存储指定的属性值
4. getAttribue(String name) 返回指定属性的属性值
5. getContentType() 得到请求体的 MIME 类型
6. getProtocal() 返回请求用的协议类型及版本号
7. String getServerName() 返回接受请求的服务器主机名
8. int getServerPort() 返回服务器接受次请求所用的端口号
9. String getCharacterEncoding() 返回字符编码方式
10. void setCharacterencoding() 设置支付编码方式
11. int getContentLength() 返回请求体的长度(byte)
12. String getRemoteAddr() 返回发送此请求的客户端 IP 地址
13. String getRealPath(String path) 返回此虚拟路径的真是路径
14. String request.getContextPath() 返回上下文路径
  • request 对象:

response 对象包含了相应客户端请求的有关信息,但在 JSP 中很少直接用到它。它是 HttpServletResponse 类的实例。response 对象具有页面作用域,即访问一个页面时,该页面的 response 对象只能对这次访问有效,其他页面的 response 对象对当前页面无效。常用方法如下:

1. String getCharacterEncoding() 返回响应用的是何种字符编码
2. void setContentType(String type) 设置响应的 MIME 类型
3. PrintWriter getWriter() 返回可以向客户端输出支付的一个对象(注意比较:PrintWriter 与内置 out 对象的区别)
4. sendRedirect(String location) 重新定向客户端的请求


  • 请求转发与请求重定向

请求重定向:
客户端行为,response.sendRedirect(),本质上讲等同于两次请求,前一次的请求对象不会保存,地址栏 URL 地址会改变。

请求转发:
服务器行为,request.getRequestDispatcher().forward(req.resp); 是一次请求,转发后请求对象会保存,地址栏的 URL 地址不会改变

  • application 对象
    application 对象实现了用户间数据共享,可存放全局变量。
    application 开始与服务器的启动,终止于服务器的关闭。
    在用户前后连接或不同用户之间的连接中,可以对 application 对象的同意属性进行操作
    服务器的启动和关闭决定了 application 对象的生命
    application 对象是 ServletContext 类的实例

application 常用方法:

public void setAttribue(String name, Object value) // 使用指定名称将对象绑定到此会话
public Object getAttribue(String name) //返回于此会话中的指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回 null
Enumeration getAttribueNames() //返回所有可用属性的枚举
String getServerInfo() //返回 JSP(SERVLET) 引擎及版本号
  • Exception 对象
    exception 对象是一个异常对象,当一个页面在运行过程中发生了异常,就产生这个对象。如果一个 JSP 页面要应用此对象,就必须把 isErrorPage 设为 true,否则无法便宜。他实际是 java.lang.Throwable 的对象,常用方法如下:
String getMessage() //返回描述异常的消息
String toString() //返回关于一场的简短描述消息
void printStackTrace() //显示异常及其轨迹
Throwable FillInStackTrace() //重写异常的行为轨迹


你可能感兴趣的:(Java Web 学习 : JSP)