JSP第三章

原创 2007年09月28日 11:02:00
内部对象
out(向客户端输出各种数据类型)
重要方法:
out.print(类型) 或 out.println(类型):换行输出

out.newLine():输出一个换行符号

out.flush():输出缓冲区的数据

out.close():关闭输出流

out.clearBuffer():清除缓冲区里的数据,并把数据写到客户端

out.clear():清除缓冲区里的数据,但不把数据写到客户端

out.getBufferSize():获得缓冲区的大小,缓冲区的大小可用<%@page buffer=”size”%>设置

out.getRemaining():获得缓冲区没有使用的空间的大小

out.isAutoFlush():返回布尔值,若auto flush则返回true,否则返回false。是否auto fush我们可用%@page is AutoFlush=”true/false”%来设置

注意:中文显示问题

若是直接赋值的中文字符串,用<%@ page contentType=”text/html;charset=gb2312”%>就可正常显示。但不能用getStr(String name)函数或类似的函数转换内码,否则不能正常显示中文。

若是request传过来的中文字符串,必须要用getStr(String name)函数或类似的函数转换内码,否则不能正常显示中文。
如:String aa=str;
byte[] aa=aa.getBytes(“ISO8859-1”);
String bb=new String(aa);
在不同平台、不同的服务器jsp中文问题的解决方法各不相同,可自行试验。


request(接受客户端输入的信息)
作用:主要用于接受客户端通过http协议连接传输到服务器端的数据。
方法:
getCookies():返回客户端的cookie对象,结果是一个cookie数组

getHeader(String name):获得http协议定义的传送文件头信息,
如:request.getHeader(“User-agent”)返回客户端浏览器的版本号、类型

getAttribute(String name):返回name指定的属性值,若不存在指定的属性,就返回空值(null)。

getattributeNames():返回request对象所有属性的名字,结果集是一个Enumeration(枚举)类的实例

getHeaderNames():返回所有request header的名字,结果集是一个Enumeration(枚举)类的实例

getHeaders(String name):返回指定名字的request header的所有值,结果集是一个Enumeration(枚举)类的实例

getMethod():获得客户端向服务器端传送数据的方法有GET、POST、PUT等类型

getParameter(String name):获得客户端传送给服务器端的参数值,该参数由name指定

get parameterNames():获得客户端传送给服务器端的所有的参数名,结果集是一个
Enumeration(枚举)类的实例

getParameterValues(String name):获得指定参数所有值

getQueryString()获得查询字符串,该串由客户端以GET方法向服务器端传送

getRequestURI():获得发出请求字符串的客户端地址

getServletPath():获得客户端所请求的脚本文件的文件路径

setAttribute(String name,Java.lang.Object o):设定名字为name的request参数值,该值由Object类型的o指定

getServerName():获得服务器的名字

getServerPort():获得服务器的端口号

getRemoteAddr():获得客户端的IP地址

getRemoteHost():获得客户端电脑的名字,若失败,则返回客户端电脑的IP地址

getProtocol():获取客户端向服务器端传送数据所依据的协议名称,如http/1.1


application(保存用户信息)
作用:一旦创建,除非服务器关闭,否则将一直保持下去
application.setAttribute(“name”,val)
request.setAttribute(“name”,val)
方法:
getAttribute(String name):返回由name指定名字的application对象属性的值,这是个Object对象

getattributeNames():返回所有application对象属性的名字,结果集是一个Enumeration(枚举)类的实例

getInitParameter(String name): 返回application栽个属性的初始值,此属性由name指定

getServerInfo():获得当前版本Servlet编译器的信息

setAttribute(String name,Object object):用object来初始化某个属性,该属性由name指定

response(控制http连接)作用:向客户端发送数据,如Cookie、HTTP文件关信息等。方法:addCookie(Cookie cookie):添加1个Cookie对象,用来保存客户端的用户信息。用request的getcookies()方法可获得这个Cookie
如:<% Cookie mycookie=new Cookie(“uname”,”wsr”);
response.addCookie(mycookie);
Cookie delmycookie=new cookie(“mycookie”,null);
delmycookie .setMaxAge(0);
delmycookie .setPath(/”);
response.addCookie(delmycookie);
%>

addHeader(String name,String value):添加HTTP文件头,该header将会传到客户端,若同名的header存在,原来的header会被覆盖

containsHeader(String name):判断指定名字的HTTP文件头是否存在并返回布尔值

sendError(int sc):向客户端发送错误信息,如:505:服务器内部错误;404:网页找不到错误
如:response.sendError(response.SC_NO_CONTENT);
setHeader(String name,String value):设定指定名字的HTTP文件头的值,若该值存在,它将会被新值覆盖
如1:让网页每隔5秒刷新一次
<% response.setHeader(“Refresh”,”5”);%>
the current dateis:<%=new Date()%>

如2:利用response对象设定HTTP头
<% response.setContentType(“Application/pdf”);
response.setHeader(“content-disposition”,”attachment;filename=/”syntax.pdf/””);
%>

sendRedirect(“error.html”) //重定向功能exception(处理异常和错误) 作用:处理JSP文件在执行时所有发生的错误和异常。有3个内建方法。注意:必须在<%@ page isErrorPage=”true”%>的情况下才可以使用Exception对象getMessage():返回错误信息

printStackTrace():以标准错误的形式输出一个错误和错误的堆栈

toString():以字符串的形式返回1个对异常的描述
session(保存用户信息)作用:分别保存每一个用户的信息session.putValue(“name”,val)session.getValue(“name”)注意:session中保存和检索的信息不能是基本数据类型,而必须是JAVA的相应的Object对象。方法:getAttribute(String name):获得指定名字的属性,若该属性不存在,将返回null

getattributeNames():返回session对象中存储的第一个属性对象,结果集是一个Enumeration类的实例

getCreationTime():返回该session对象创建的时间,以毫秒计,从1970年1月1日起

getId():每生成一个session对象,服务器都会给其一个不会重复的编号,此方法返回当前session的编号

getLastAccessedTime():返回当前session对象最后1次被操作的时间,返回自1970年1月1日起至今的毫秒数

getMaxInactiveInterval():获得session对象的生存时间

removeAttribute(String name):删除指定的属性(包括属性名、属性值)

setAttribute(String name,Java.lang.Object value):设定指定名字的属性值,并将其存储在session对象中  

Head First Servlets&Jsp 读书摘记1——【Web应用体系结构 & 迷你MVC】

Head First 的风格让我欲罢不能,读起来又少些上瘾的感觉,技术书会读着读着忽有喷饭的效果实属难得。 下面是第三次读Servlets&JSP的一些摘记,纯属节约纸张,供自己参考使用。...
  • tool163
  • tool163
  • 2010年06月21日 00:17
  • 1709

[HeadFirst-JSPServlet学习笔记][第三章:实战MVC]

第三章 实战MVCJ2EE如何集成一切 Java2企业版(Java 2 Enterprise Editon,J2EE)是一种超级规范。规定了servlets2.4,JSP2.0,EJB2.1(Ente...
  • zy691357966
  • zy691357966
  • 2016年04月03日 10:42
  • 711

第三章 JSP

一. JSP JSP是为弥补 Servlet 的缺陷而产生的 Servlet 的不足之处: 1. 在 servlet 中编写页面必须将 HTML 标签卸载 java 字符串中, Http 响应十分...
  • cuanfuchu6411
  • cuanfuchu6411
  • 2018年01月26日 14:49
  • 14

《快学Scala》第三章习题解答

RT。 package com.scalalearn.scala.main //java中的List转为scala buffer至关重要的引入 import scala.collection.Jav...
  • rongyongfeikai2
  • rongyongfeikai2
  • 2016年05月14日 16:29
  • 934

python自然语言处理学习笔记第三章

从本章开始往后我们的例子程序将假设你以下面的导入语句开始你的交 互式会话或程序: >>> from __future__ import division >>> import nltk, re,...
  • huang2009303513
  • huang2009303513
  • 2013年11月09日 10:19
  • 1401

第三章_JSP

3.1、JSP概述 Jsp页面实在jsp容器中运行的。Servlet容器一般也是JSP容器。例如,Tomcat就是一个Servlet/JSP容器。 第一次请求一个jsp页面时,Servlet/JSP容...
  • u012959829
  • u012959829
  • 2014年08月05日 18:31
  • 835

《算法导论》第三章-思考题(参考答案)

算法导论(第三版)参考答案:思考题3.1,思考题3.2,思考题3.3,思考题3.4,思考题3.5,思考题3.6...
  • victoryaoyu
  • victoryaoyu
  • 2017年07月28日 11:13
  • 312

算法导论课后习题解析 第三章

算法导论课后习题解析 第三章 3.1-1 分情况讨论 当f(n)≥g(n)f(n)≥g(n)时,max(f(n),g(n))=f(n)max(f(n),g(n))=f(n),存在...
  • sushauai
  • sushauai
  • 2016年01月10日 11:07
  • 1831

[APUE] 第三章部分习题

APUE第三章部分习题
  • ILOVEYOUXIAOWANGZI
  • ILOVEYOUXIAOWANGZI
  • 2013年12月10日 16:21
  • 1394

netty权威指南 ---------第三章 入门应用

本例以client端发送请求,server端返回当前时间
  • bingjing12345
  • bingjing12345
  • 2014年09月21日 09:50
  • 4590
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP第三章
举报原因:
原因补充:

(最多只允许输入30个字)