JSP是java服务器动态页面,是一种Java servlet ,也是Java后台最常用的页面展示。
jsp就大内置对象可以进行如下分类:
1、输入输出:out、request,response
2、通信控制对象:pageContext、session、application
3、servlet对象:config、page
4、错误处理对象:exception
九种对象详情及常用方法:
1、 out主要用于web浏览器输出信息。
out.print("hello");//输出
out.close();//关闭输出流
2、 request主要是HttpServletRequest类型的对象,代表客户端请求信息。request作用域为一次请求信息。
request.getParameter("username");//获取POST/GET传递的参数值,只在web容器内部流转,一般表单和链接传递的参数,重定向传值接收数据。
request.getAttribute("xiaosan");//获取得想容器中的数据,可以用get/set这个方法来接受对象,获取的是队形容器中的数据值,可以获取session的值。
request.getContextPath();//拿到项目的根路径
3、 response主要是HttpServletResponse类型的对象,代表服务端返回信息。最常用的是设置头信息、cookie、跳转。
response.setHeader("refresh","1");//每隔一秒刷新一次页面
response.sendRediret("hello.jsp");//页面执行完成后进行跳转
4、 pageContext主要是页面上下文对象,也叫域对象(范围是当前jsp页面)。提供转发、包含的方法。在自定义标签中要使用jsp内置对象需要用pageContext来获取隐式对象。
pageContext.forward("url");//重定向
pageContext.include("url");//包含
pageContext.getSession();//获取jsp内置对象
pageContext.findAttribute();//能从四个域(page,request,session,context)寻找到存储的数据,查找顺序也是从小到大(page,request,session,context)。
5、session这个是保存会话信息。这个session的信息保存在服务端,sessionId会保存在客户端也就是浏览器的Cookie中。浏览器支持cookie就直接用cookie,如果浏览器禁用cookie,那么session就失效了。此时解决会话标识可以放在url上或是放到表单中。
session.getId();//常用的session获取对象编号
session.getAttribute("key");//获取对象的属性key,同样这个还有个setAttribute("","")
6、application,ServletCotext类的实例。其将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。与session相比application对象生命周期更长,类似于系统的全局变量。
7、config主要作用是却得服务器配置信息。ServletConfig类的实例。
8、page类似于Java中this关键字。
9、exception这个就是异常项,Exception类的对象,只有在包含isErrorPage="true"的页面才会用。通常在在项目中jsp这个也不怎么用。