JAVA网络编程复习资料(中北大学).doc
《JAVA网络编程复习资料(中北大学).doc》由会员分享,可在线阅读,更多相关《JAVA网络编程复习资料(中北大学).doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.动静态网页的概念,常见后缀及基本区别l 概念 静态网页:静态网页是指用HTML标记语言等来编排,页面中的内容固定不变,存盘后一般以*.html、*.htm等文件形式存在的网页。 动态网页:动态网页:是指网页中的关键内容在服务器端动态生成的网页。l 动态网页和静态网页的区别 动态网页会被服务器当作一个程序来执行,网页中静态内容服务器不作任何处理,直接输出给客户端,动态内容的代码会被服务器识别并执行; 而静态网页则不会被服务器视为程序,网页中的内容不会被服务器运行。 2.Tomcat服务器的文件夹结构及web应用的文件夹结构Tomcat根目录(bin,confi,lib,work,logs,w
2、ebapps( WebProject( WEB-INF( lib,classes,web.xml ) ) ))3.JSP指令元素重点在page上,JSP脚本代码,JSP动态元素。l page指令元素 page指令用于设置当前JSP页面的属性。习惯上把page指令写在JSP页面的头部。 page指令中的属性大多数只需要在JSP页面中定义一次 。page指令中允许重复使用多次的属性有pageEncoding和import属性等。page指令的基本语法格式如下 % page language=java extends= . import= . contentType=text/html; chars
3、et=gb2312 pageEncoding=defaultsession= true|falsebuffer=none|default|sizekbautoFlush=true|falseisThreadSafe=true|falseinfo=. isErrorPage=true|falseerrorPage= /error/nullString.jsp isELIgnored=true|false“ %l JSP脚本代码 声明元素声明元素用于声明类成员变量、成员方法或内部类1)用声明元素声明类成员变量 例如: 2)用声明元素声明成员方法例如: 脚本小程序脚本小程序就是一段Java代码。在J
4、SP页面中声明脚本小程序的基本语法格式为:Tomcat把标记内的Java代码段放在Servlet实现类 _jspService()方法的try内,所以在内定义的变量属于局部变量,并且作用范围仅限于try内。如果有多个标记,则按出现的先后顺序转译到try内。 表达式元素1.表达式元素的基本功能是运行一条Java表达式,如果表达式有计算结果,则把结果显示在表达式位置上2.表达式元素的标记经过Tomcat翻译后,在Servlet实现类中一般表示为:out.write(expression); 3.如果表达式复杂,则标记可能被分解成多条连续的out.write()语句。4.表达式元素的用法例如: 5.
5、注意表达式不能带Java语句结束符“;”l 动态元素概念:将类似于的JSP标记称为JSP动作。分类:JSP可分为标准动作和扩展动作。JSP标准动作:一组形如“”的标记,标记的前缀均为“jsp”。标准动作作用:可实现动态插入文件、将用户重定向到另一个页面、动态生成XML元素等动作 概念:动作也称动态包含,它将被包含的文件视为一个独立的文件,在程序运行时包含目标资源的返回信息。 作用:动态包含一个文件相当于在运行时动态调用这个文件。被包含的资源可以是动态的,也可以是静态的。 Eg:或 */传递参数用 在标记中,page=“urlSpec”属性定义了被包含资源的URL,可用相对路径或绝对路径表达。
6、属性flush=“true”时,表示在包含目标资源前,先刷新当前页面输出缓冲区中的内容。flush=“false”时,包含文件前,不刷新当前页面的输出缓冲区。默认值为false。如果要给被包含的页面传递参数,可以使用标记 动作主要是为、等动作元素传递参数,如果在其它场合中使用它,JSP容器会报告翻译错误。的基本语法为: JSP容器能自动识别被包含文件中的内容哪些是静态,哪些是动态, 对于静态内容不作处理,直接打印输出; 对于动态内容,则执行相应的程序代码。 值得注意的是: 如果被包含文件中存在动态内容,则文件名的后缀应该为*.jsp, 如果取其它的文件名后缀,JSP容器在调用被包含文件时不执行
7、编译操作,动态内容的代码将被忽略动作 概念:动作使程序从当前页面跳转到另一个目标页面运行,目标页面可以是静态资源(如*.htm),也可以是一个JSP页面(*.jsp),还可以是一个Servlet、CGI程序等。 注:会导致当前JSP页面运行中断,断点后的代码将无法被继续执行。 Eg: * 动作 主要用来在客户端浏览器中加载运行一个Applet或JavaBean,被加载的Applet或JavaBean可以是单个类文件*.class,也可以是一个*.jar包。在JSP页面中使用动作,服务器将把被加载的文件传送到客户端,由客户端的JVM运行Applet或JavaBeanjsp:plugin type
8、=bean|appletcode=objectCodecodebase=objectCodebase 4.JSP隐含对象的使用重点在request和resoponse,session上 Out,request,response,session,application,exception,config,page,pageContext request对象封装了客户端提交的数据信息,包括用户提交的数据和客户端的一些信息。 一、 用request读取客户端传递来的参数客户端向服务器传递参数最常见的方法:表单数据附在URL中的查询串(query string)参数,也就是URL“?”后面的参数:htt
9、p:/localhost/exam.jsp?name=tomcat 用request读取单值参数读取方法:request对象的getParameter()方法读取指定变量名的参数值,方法的形参是参数的变量名,以String形式返回变量的值。 如果request对象中没有指定的变量,则返回null。 request.getParameter(“”)缺陷:读取表单传来的参数时,参数变量名是以硬编码形式嵌在代码中,缺乏灵活性。getParameterNames()能返回request对象中的参数变量名,并保存在枚举类型中用request读取多值参数 多值参数的典型代表是表单复选框,例如在一般网站会员
10、注册信息表单中如果有“爱好”项,那么用户是可以选定多个爱好的。 在服务器端读取多值参数,要用到request.getParameterValues(),定义:形参为多值参数的变量名,多个参数值返回后存储在一个字符串数组中setAttribute(java.lang.String name, java.lang.Object o) public java.lang.Object getAttribute(java.lang.String name) 方法返回的对象是Object类型,一般要进行强制类型转换getRequestDispatcher()转发跳转 request转发器(RequestD
11、ispatcher)的作用: 获得目标资源的转发器,通过转发器将当前Servlet程序的request和response对象转发给目标Servlet资源, 跳转至目标资源上运行程序, 目标资源再通过request对象读取上一资源传递给它的request属性。方法能够把当前Servlet程序的request和response隐含对象转发给目标资源,并跳转至目标资源运行代码public void include(ServletRequest request, ServletResponse response) throws ServletException,java.io.IOException
12、形参是当前JSP/Servlet程序的request、response对象。 该方法用于包含目标资源,如果目标资源是JSP页面,它会被编译成Servlet程序后再运行。 进行包含操作前,允许对当前JSP/Servlet程序的response输出缓冲区进行刷新。 removeAttribute() 作用:从request作用范围中删除指定名字的属性request.removeAttribute(“name”); setCharacterEncoding() 作用:定义request对象中的parameter参数的字符编码标准。 例如,parameter参数如果有中文,在读取参数前调用此方法,设置
13、参数的编码标准为GB2312,可以解决以POST方式提交参数的中文乱码问题。getProtocol() 用request读取系统信息返回request请求使用的协议及版本号 getRemoteAddr() 返回客户端或最后一个客户端代理服务器的IP地址 getRemoteHost() 返回客户端主机名或最后一个客户端代理服务器的主机名,如果主机名读取失败,则返回主机的IP地址。getScheme() 返回当前request对象的构造方案,例如http、https和ftp等,不同的构造方案有不同的URL构造规则。getQueryString() 返回URL的查询字串,即URL中“?”后面的“na
14、me=value”对。例如,客户端请求的URL为:http:/127.0.0.1:8080/untitled.jsp?dd=22&ff=2 getReuquestURI() 返回URL请求中目标资源的URI。例如,有以下的HTTP请求http:/127.0.0.1:8080/untitled.jsp?dd=22&ff=2 的为/untitled.jspgetMethod() 返回request请求的提交方式,如:GET、POST等。 getServletPath() 返回调用Servlet程序的URL请求,例如,对于: 目标资源untitled.jsp中有如下的代码:http:/127.0.0
15、.1:8080/untitled.jsp?dd=22&ff=2 out.print(request.getServletPath();预览后显示:/untitled.jspgetRealPath() 返回虚拟路径在服务器上的真实绝对路径Eg:C:tomcatwebappsROOTuntitled.jsp用request读取HTTP请求报头信息 客户端浏览器向服务器请求资源的过程一般分为三步来完成:第一步:发出请求。浏览器通过HTTP协议向服务器提交请求,例如http:/127.0.0.1:8080/exam.jsp 第二步:HTTP报头信息交换。 JSP服务器接收到客户端的资源请求后,判断请求
16、是否合法,如果请求有效,则进行报头信息交换。 客户机用HTTP协议向服务器传递的报头信息叫HTTP请求报头, 服务器给客户机返回的报头信息叫HTTP响应报头。第三步:信息传输例如把JSP页面的输出信息从服务器上传回浏览器,或把客户机上的文件上传到服务器在JSP中要读取HTTP请求报头中的信息,可以使用getHeaderNames()和getHeader()等方法。1.getHeader() 返回指定的HTTP报头信息2.getHeaderNames() 返回HTTP报头的名字,名字存储在一个枚举型对象中。用request读取cookie Cookie,或称Cookies,在Web技术中指Web
17、 服务器暂存在客户端浏览器内存或硬盘文件中的少量数据。 作用:Web服务器通过HTTP报头来获得客户端中的cookie信息。 Cookie信息的基本结构:类似于“name=value”对,每个数据有一个变量名。 Cookie信息的有效期: 有效期短的直接存于IE浏览器内存中,关闭浏览器后,这些cookie信息也就丢失。 有效期长的信息存储在硬盘文件上。 保存位置:所有曾经访问过的网站的cookie文件(*.txt) 保存在XP内 “C:Documents and SettingsadminCookies”文件夹中。 在JSP中使用cookie的基本过程为: 在服务器端生成cookie对象,把待
18、保存信息写入cookie对象中; 必要时设置cookie对象的生命期; 把cookie对象传给客户端浏览器保存; 服务器端程序需要cookie信息时,用代码读取cookie信息。Cookie类 javax.servlet.http.Cookie类用来生成一个cookie 对象,构造方法: Cookie(java.lang.String name, java.lang.String value) 第一个形参是cookie数据的变量名,第二个形参是待保存的数据,字符串类型 public void setMaxAge(int expiry) 这个方法定义cookie对象的生命期,形参是生命时间数,单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 网络 编程 复习资料 北大
限制150内