JSP简单介绍(一)

前言

    这次来和大家说下jsp的相关内容。

正文

JSP(Java server Pages) 概念

    JSP 是Sun公司推出的构建在Servlet规范提供的功能之上的动态网页技术。
    JSP通过动态代码嵌入到静态的HTML(或xml)中,从而产生动态的输出。

JSP中的编译

  • JSP的页面代码不能直接运行
  • JSP的页面代码被编译成Java的源代码
  • 编译生成的Java类实现javax.servlet.jsp.HttpJspPage接口

JSP的方法VS Servlet

这里写图片描述

HttpJspPage接口 Servlet接口 方法说明
jspInit init 创建实例后被调用
_jspService service 处理请求时被调用
jspDestroy destroy 生存期结束前被调用

JSP的九大内置对象

为了方便JSP程序员访问一些常用的对象,在JSP规范中定义了九种内置对象,不用声明即可使用,由容器实现和管理。

  • 输入输出对象
    request 、response、out
  • 作用域通信对象
    session、application、pageContext
  • Servlet 对象
    page 、config
  • 错误对象
    exception
对象名称 类型 作用域
request javax.servlet,http.HttpServletRequest Request
response javax.servlet,http.HttpServletResponset Page
pageContext javax.servlet.jsp.PageContext Page
session javax.servlet.http.HttpSession Session
application javax.servlet.ServletContext Application
out javax.servlet.jsp.jspWriter Page
config javax.servlet.ServletConfig Page
page java.lang.Object Page
exception java.lang.Throwable Page

request 对象

    表示客户端对网页的请求
    request对象的常用方法

// 根据页面表单组件名称获取请求页面提交数据
String getParameter(String name)
// 获取页面请求总有个表单组件对应多个值时的用户的请求数据
String[] getParameterValues(String name)
// 解决提交表单时中文乱码问题,因为服务器默认的编码为:iso-8859-1
request.setCharacterEncoding("GBK")

response 对象

     处理JSP 生成的响应,将响应发送给客户端
    response对象的常用方法

//设置作为响应生成的内容的类型和字符编码
void setContentType(String type);
//实现客户请求的重定向
void sendRedirect(String location);
//动态添加新的HTTP响应头和HTTP的响应头值,并将这些HTTP响应头发送给客户的浏览器
void setHeader(String headName,String value)

out 对象

    out 对象等同于Servlet中的PrintWriter对象,表示在JSP中的标准输出。
    out 对象的常用方法

//输出数据
void print();
//输出空格
 void println();
 //清除输出缓冲区的内容,但不会把数据输出到客户端
 void clear();
 //清除输出缓冲区的内容,同上把数据输出到客户端
 void clearBuffer();
 // 刷新流,把流中的内容送到客户端,并把流清空
 void fiush();
 //关闭输出流,清除所有内容
 void close();

session 对象

    session 对象用于保存与客户端有关的状态信息,实现同意客户在不同页面间的数据共享。
    session对象的常用方法

//设置名称为name,值为value的属性
void setAttribute(String name,Object value);
//获取指定名称的属性值
Object getAttribute(String name);
// 删除指定的属性
void removeAttribute(String name);
// 销毁session 对象
void invalidate();
//判断当前session是否为新的session 
boolean isNew();
//获得当前session的ID号
String getId();
// 设置当前会话的失效时间,以秒为单位,如果值为零或负数,则表示会话将永远不会超时
void setMaxInactiveInterval(int interval);

application 对象

    application 对象用于多个程序或者多个用户之间共享数据,对于一个容器而言,每个用户都是一个application。
    application 对象的常用方法

// 以键/值的方式,将一个对象的值存放到application中
void  setAttribute(String name,Object value);
//获取属性值
void getAttribute(String name);

pageContext 对象

    使用这个对象可以管理其他8个内置对象,可以通过它来获得与JSP 内置对象对应的Servlet对象。
    pageContext 对象的常用方法

 // 获得当前网页的异常(exception)
Exception getException();
//获得当前网页的输出流(out)
JspWriter getOut();
//获得当前网页的Servlet 实例(page);
Object getPage();
// 获得当前网页的请求(request)
ServletRequest getRequest();
// 获得当前网页的响应(response)
Servlet getResponse();
//获得当前网页的ServletConfig实例(config)
ServletConfig getServletConfig();
//获得当前网页的执行环境上下文(application)
ServletContext getServletConfig();
//获得和当前网页相关联的会话(session)
HttpSession getSession();
//***使用pageContext统一管理application、session、request、page 的属性设置***//
// int参数指明范围(1-4)
getAttribute(String name,int scope);
setAttribute(String name,Object value,int scope);
removeAttribute(String name,int scope);

page对象 和 config对象

    page 对象表示的是jsp 页面本身
    config 对象表示本jsp页面的配置对象

扫描二维码关注公众号,回复: 2522850 查看本文章

JSP的四种属性范围

对象名称 作用域
application 被整个web应用所引用
session 在同一个会话进程之中共享它的属性
request 同一个请求
page 同一个页面

作用范围:application > session > request > page

总结

    JSP 的一些内容先介绍到这里,希望对您有所帮助!

猜你喜欢

转载自blog.csdn.net/zt15732625878/article/details/80981947