jsp九大内置对象

1.out 输出对象

out.print(“hello world”);

   PrintWriter out = response.getWriter();//在servlet中用out对象
   out.println(name);

在idea中这句话可能会标红,但是可以运行出来,暂未解决

2.PageContext对象

 本页面内有效

3.request 请求对象

存储客户端向服务端发送的请求信息

常见方法:

 String getParameter(String name):根据请求的字段名key,返回字段值value

 String[] getParameterValues(String name):根据请求的字段名key,返回多个字段value(checkbox)返回值为数组

 Void setCharacterEncoding(“编码格式UTF-8”):设置请求的编码(request的编码)

 getRequestDispatcher (“b.jsp”).forward(request,response):请求转发,跳转页面

4.servletContext对象(application)

(1)全局变量,同一个项目可以访问

ServletContext servletcontext=this.getServletContext();//在servlet中声明和赋值servletcontext对象
servletcontext.setAttribute("name","zf");
String name=(String) servletcontext.getAttribute("name");

(2)可以在web.xml中写一些属性和属性值,由servletcontext去访问(因为servlcontext是全局的,所以整个项目都可以访问到这个属性),

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <context-param>
        <param-name>name</param-name>
        <param-value>ff</param-value>
    </context-param>
    <context-param>
        <param-name>nameF</param-name>
        <param-value>ff</param-value>
    </context-param>
</web-app>

servlet:     

public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {

        PrintWriter out = response.getWriter();
        ServletContext servletcontext=this.getServletContext();//在servlet中使用servletcontext对象
        Enumeration<String> parameterames= servletcontext.getInitParameterNames();//获取context-param标签的param-name信息

        out.println(parameterames.hasMoreElements());
        while (parameterames.hasMoreElements())
        {String name=parameterames.nextElement();
        String value=servletcontext.getInitParameter(name);
        }

(3)通过servletcontext可以访问项目中的一些配置文件                                                                                                           

5.response对象

提供的方法

 void addCookie (Cookie cookie);服务端向客户端增加cookie对象

 void sendRedirect(string location)throws IOException:页面重定向

 void setContetType(string type):设置服务端响应的编码(设置服务端的content)

6.session

(存在于服务端)中文名叫会话

  客户端第一次请求服务端时,服务端会创建一个session对象(用于保存该客户信息),每个session里都有唯一一个sessionID(用于区别其他session),response将页面返回时,自动返回一个cookie,cookie里自动有个jesssionID属性,他的值是等于sessionID的。因此,客户端的cookie就可以和服务端的session一一对应(jessionid-sessionid)

第二次访问(客户端第二次请求服务端)时:服务端会先用客户端的cookie中的jsessionid去服务端的session中匹配sessionid,如果匹配到了就不需要登录了。

方法:

String getid();获取sessionid

Boolean isNew()判断是否是新用户

Void invalidate()使session失效(退出登录、注销)

Void setMaxInactiveInterval(秒):设置最大有效非活动时间

Int getMaxInactiveInterval()获得最大有效非活动时间(就是人离开,不动网页开始计时的时间)

7.Cookie

(客户端,不是内置对象,需要用new来生成):cookie是由服务端产生的,再发送给客户端保存。

相当于本地缓存,我在一个网站内输了用户名和密码,在一段时间内第二次访问这个页面,就不需要账号输密码了

可以提高二次访问效率,但是安全性差(可以存用户名和密码)。

8.config

获取配置信息

9.exception

页面错误时使用这个对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值