jsp内置对象

application:

  让jsp、Servlet共享数据:application.setAttribute(String name,Object value)设置共享属性,application.getAtrribute(String name)获取共享属性的值

  获取Web应用配置参数

config:当前jsp配置信息

exception:仅在异常处理页面中才有效

out:页面输出流

pageContext:访问jsp之间的共享数据,包括page、request、session、application范围的数据

  设置共享属性:setAttribute(String name ,Object value,int scope)

  getAttribute(String name,int scope),scope取值范围有四个,分别对应page、request、session、application:

    page:PageContext.PAGE_SCOPE

    request:PageContext.REQUEST_SCOPE

    session:PageContext.SESSION_SCOPE

    application:PageContext.APPLICATION_SCOPE

  获取属性所在的范围值:pageContext.getAttributesScope(String name)

request:每个对象封装一次用户请求

  1.可以获取请求的参数、请求头:(POST方法提交)

  获取请求头的名称:

    Enumeration<String> headerNames=request.getHeaderNames();     while(headerNames.hasMoreElements()){        String headerName=headerNames.nextElement();        out.println(headerName+"-->"+request.getHeader(headerName)+"<br/>");     }

   获取form表单提交的数据:

    String name=request.getParameter("name");//name、color为form表单中各数据的name属性

    String[] color=request.getParameterValues("color");//请求参数有多个值时的获取方法

  GET方法提交:传递的参数为字符串并且传递的参数少  用URL方式传递参数,解析字符串中带中文的参数:(问题还没有解决)  String rawQueryStr = request.getQueryString();  String queryStr = java.net.URLDecoder.decode(rawQueryStr,"utf-8");  String[] paramPairs=queryStr2.split("&");  for(String paramPair:paramPairs){      String[] nameValue=paramPair.split("=");      out.println(nameValue[0]+"参数值:"+nameValue[1]+"<hr/>");         }

 String mytext = java.net.URLEncoder.encode("中国","utf-8");    String mytext2 = java.net.URLDecoder.decode(mytext,"utf-8");//mytext的结果为乱码而mytext2的结果为“中国”

 2.操作request范围的参数:      setAttribute(String name,Object value);      getAttribute(String name);

 3.执行forward或include:(path路径必须以斜线开头)      getRequestDispatcher(String path).include(request,respose);      getRequestDispatcher(String path).forward(request,response);

response:生成非字符响应、重定向、增加Coolie  重定向后生成第二次请求并且原来请求的参数、request范围的属性全部丢失  增加Cookie:  String name=request.getParameter("name");  Cookie c = new Cookie("usename",name);  c.setMaxAge(24*3600);//设置Cookie为24小时  response.addCookie(c);//增加Cookie对象

 读取Cookie数组:  Cookie[] cookies = request.getCookies();  for(Cookie c:cookies){      if(c.getName().equals("usename")){   out.println(c.getValue());      }  }

session:该对象代表一次用户会话  setAttribute(String name,Object value);  getAttribute(String name);

 

转载于:https://www.cnblogs.com/hj-lxp/p/5011163.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值