9.下列()注释为隐藏型注释。(C)。
A) B) C)<%-- 注释内容 --%>
D)] -->
10.下列变量声明在( )范围内有效。(C)。
<%! Date dateTime; int countNum; %>
A)从定义开始处有效,客户之间不共享 B)在整个页面内有效,客户之间不共享 C)在整个页面内有效,被多个客户共享
D)从定义开始处有效,被多个客户共享
11.在“<%!”和“%>”标记之间声明的Java的方法称为页面的成员方法,其在( )范围内有效。(C)。 A)从定义处之后有效。 B)在整个页面内有效。 C)从定义处之前有效。 D)不确定。
12.在“<%=”和“%>”标记之间放置(B),可以直接输出其值。
A) 变量 B)Java表达式 C)字符串 D)数字
13.include指令用于在JSP页面静态插入一个文件,插入文件可以是JSP页面、HTML网页、文本文件或一段Java代码,但必须保证插入后形成的文件是(B)。 A)是一个完整的HTML文件 B)是一个完整的JSP文件 C)是一个完整的TXT文件 D)是一个完整的Java源文件
14.JSP页面可以在“<%=”和“%>”标记之间放置Java表达式,直接输出Java表达式的值。组成“<%=”标记的各字符之间(B)。 A)可以有空格 B)不可以有空格 C)必须有空格 D)不确定
15.当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字( C )
A)public B)static C)synchronized D)private
二、判断题
1.在HTML页面文件中加入JSP脚本元素、JSP标记等就构成了一个JSP页面。(对) 2.JSP引擎执行字节码文件的主要人物之一是直接将HTML内容发给客户端。(对) 3.JSP页面中的变量和方法声明(Declaration)、表达式(Expression)和Java程序片(Scriptlet)统称为JSP标记。(对)
4.JSP页面中的指令标记、JSP动作标记统称为脚本元素。(错)
5.在“<%!”和“%>”标记之间声明的Java的变量在整个页面内有效,不同的客户之间不共享。(错)
6.在“<%!”和“%>”标记之间声明的Java的方法在整个页面内有效。(对) 7.页面成员方法不可以在页面的Java程序片中调用。(错)
8.程序片变量的有效范围与其声明位置有关,即从声明位置向后有效,可以在声明位置后的程序片、表达式中使用。(对)
9.程序片变量不同于在“<%!”和“%>”之间声明的页面成员变量,不能在不同客户访问页面的线程之间共享。(对)
10.JSP中Java表达式的值由服务器负责计算,并将计算值按字符串发送给客户端显示。(对)
11.在Java程序片中可以使用Java语言的注释方法,其注释的内容会发送到客户端。(错)
12.不可以用一个page指令指定多个属性的取值。(错) 13.jsp:include动作标记与include指令标记包含文件的处理时间和方式不同。(对) 14.jsp:param动作标记不能单独使用,必须作为jsp:include、jsp:forward标记等的子标记使用,并为它们提供参数。(对)
15.标记的page属性值是相对的URL地址,只能静态的URL。(错)
16.JSP页面只能在客户端执行。(错 ) 17.JSP页面中不能包含脚本元素。(错 )
18.Page指令不能定义当前JSP程序的全局属性。(错)
三、填空题
1.一个完整的JSP页面是由普通的HTML标记、JSP指令标记、JSP动作标记、变量声明与方法声明、 程序片(Scriptlet) 、表达式(Exception)、 注释(Comment) 7种要素构成。 2.JSP页面的基本构成元素,其中变量和方法声明(Declaration)、表达式(Expression)和Java程序片(Scriptlet)统称为JSP脚本元素 。 3.指令标记、JSP动作标记统称为 JSP标记 。 4.“<%!”和“%>”之间声明的方法在整个页面内有效,称为页面的成员方法 。 5.在“<%!”和“%>”之间声明的变量又称为 页面成员变量 ,其作用范围为整个JSP页面。
6.JSP页面的程序片中可以插入 HTML 标记。 7.当JSP页面的一个客户线程在执行 synchronized 方法时,其他客户必须等待。
8.JSP页面中,输出型注释的内容写在 “” 之间。
9.JSP声明函数时,如果在前面加上_synchronize 关键字,功能是当前一个用户在执行该方法时,其他用户必须等待,直到该用户完成操作。 10.Page指令的属性Language的默认值是_Java____。
四、思考题
1.include标记与include动作标记有什么区别?
2.如何保证页面跳转时当前页面与跳转页面之间的联系?
3.如果有两个用户访问一个JSP页面,该页面的程序片将被执行几次? 4.在<%!和%>之间声明的变量和在<%和%>之间声明的变量有何区别? 5.是否允许一个JSP页面为contentType设置两次不同的值? 6.JSP的特殊字符与Java语言的转义字符关系? 7.请说出一个JSP页面的基本组成。
第四章 JSP的内置对象
一、选择题
1.下面不属于JSP内置对象的是(D)
A)out对象 B)respone对象 C)application对象 D)page对象 2.以下哪个对象提供了访问和放置页面中共享数据的方式(D)
A)pageContext B)response C)request D)session
3.调用getCreationTime()可以获取session对象创建的时间,该时间的单位是(C)。
A)秒 B)分秒 C)毫秒 D)微秒
4.当response的状态行代码为哪个时,表示用户请求的资源不可用?(D)
A)101 B)202 C)303 D)404
5.一个典型的HTTP请求消息包括请求行、多个请求头和( B )
A)响应行 B)信息体 C)响应行 D)响应头 6.在JSP中为内建对象定义了4种作用范围,即Application Scope、Session Scope、Page Scope和( A )四个作用范围。 A)Request Scope B) Response Scope C)Out Scope D) Writer Scope
7.out对象是一个输出流,其输出各种类型数据并换行的方法是(C)
A)out.print( ) B)out.newLine( ) C)out.println( ) D)out.write( )
8.out对象是一个输出流,其输出换行的方法是(B)
A)out.print( ) B)out.newLine( ) C)out.println( ) D)out.write( )
9.out对象是一个输出流,其输出不换行的方法是(A)
A)out.print( ) B)out.newLine( ) C)out.println( ) D)out.write( )
10.Form表单的method属性能取下列哪项的值( C )
A)submit B)puts C)post D)out
11.能在浏览器的地址栏中看到提交数据的表单提交方式是( B )
A)submit B)get C)post D)out
12.可以利用request对象的哪个方法获取客户端的表单信息(A)
A)request.getParameter() B)request.outParameter()
C)request.writeParameter() D)request.handlerParameter() 13.可以利用JSP动态改变客户端的响应,使用的语法是(A)
A)response.setHeader() B)response.outHeader() C)response.writeHeader() D)response.handlerHeader()
14.JSP页面中request.getParamter(String )得到的数据,其类型是( C )
A)Double B)int C)String D)Integer
15.JSP页面程序片中可以使用下列哪个方法将strNumx=request.getParamter(“ix”)得到的数据类型转换为Double类型( )
A)Double.parseString(strNumx) B) Double.parseDouble(strNumx) C)Double.parseInteger(strNumx) D)Double.parseFloat(strNumx)
16.
A) B)- C) D)
A)ISO-8859-1 B)GB2312 C)GB3000 D)ISO-8259-1 18.下面不属于标记中的name属性取值的是(D)
A)text B)radio C)checkbox D)picture
19.下面不属于标记中的name属性取值的是(D)
A)password B)hidden C)submit D)textarea
20.
A)size B)value C)selected D)checked
21.
A)size B)value C)selected D)checked 22.
A)cols B)value C)rows D)size
23.JavaScript执行表单验证一般都发生在用户单击“提交”按钮后,数据提交服务器之前,onValidate()函数返回值为true时( C )。 A)验证不通过,提交数据给服务器 B)验证不通过,不提交数据给服务器 C)验证通过,提交数据给服务器 D)验证通过,不提交数据给服务器
24.正则表达式中,表示任意一个除换行以外的字符的元字符是( A )
A). B)| C)[ ] D){ }
25.正则表达式中,表示或者的意思的元字符是( B )
A). B)| C)[ ] D){ }
26.正则表达式中,结合起来表示某特定类型的字符的元字符是( C )
A). B)| C)[ ] D){ }
27.正则表达式中,结合起来表示匹配的次数的元字符是( D )
A). B)| C)[ ] D){ }
28.正则表达式中,表示模式必须出现在目标串的结尾的元字符是( A )
A)$ B)[^] C)( ) D)?
29.正则表达式中,表示除了指定类型以外的字符的元字符是( B )
A)$ B)[^] C)( ) D)?
30.正则表达式中,表示0个或一个的元字符是( D )
A)$ B)[^] C)( ) D)?
31.正则表达式中,表示换页匹配的元字符是( A )
A)\\f B)\\n C)\\r D)\\t
32.正则表达式中,表示换行匹配的元字符是( B )
A)\\f B)\\n C)\\r D)\\t
33.正则表达式中,表示匹配一个回车的元字符是( C )
A)\\f B)\\n C)\\r D)\\t
34.正则表达式中,表示匹配一个制表符的元字符是( D )
A)\\f B)\\n C)\\r D)\\t
35.正则表达式中,表示一个数字的预定义词是( A )
A)\\d B)\\D C)\\S D)\\s
36.正则表达式中,表示一个非数字字符的预定义词是( A )
A)\\d B)\\D C)\\S D)\\s
37.正则表达式中,表示空白字符的预定义词是( A )
A)\\d B)\\D C)\\S D)\\s
38.正则表达式中,表示一个非空白字符的预定义词是( A )
A)\\d B)\\D C)\\S D)\\s 20.正则表达式中,表示一个字符可以是字母、数字或下划线的预定义词是( A )
A)\\d B)\\D C)\\w D)\\W 39.正则表达式中,表示一个字符不能是字母、数字或下划线的预定义词是( A )
A)\\d B)\\D C)\\w D)\\W
40.下面常用的正则表达式中,表示数字的是 ( A )
A)^\\d+(\\.\\d+)*$ B)^[0-9]*[1-9][0-9]*$ C)^(-?\\d+)(\\.\\d+)?$ D)[\一-\龥]
41.下面常用的正则表达式中,表示正整数的是 ( B )
A)^\\d+(\\.\\d+)*$ B)^[0-9]*[1-9][0-9]*$ C)^(-?\\d+)(\\.\\d+)?$ D)[\一-\龥]
42.下面常用的正则表达式中,表示浮点数的是 ( C )
A)^\\d+(\\.\\d+)*$ B)^[0-9]*[1-9][0-9]*$ C)^(-?\\d+)(\\.\\d+)?$ D)[\一-\龥]
43.下面常用的正则表达式中,表示中文字符的是 ( D )
A)^\\d+(\\.\\d+)*$ B)^[0-9]*[1-9][0-9]*$ C)^(-?\\d+)(\\.\\d+)?$ D)[\一-\龥] 44.对于ServletRequest接口的获取请求参数的方法的描述那一项是正确的?(C)
A)getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法
B)如果一个参数key有多个值,那么getParameter(key)方法会返回空
C)如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组
D)getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String) request.getParameter(key)
二、判断题
1.Tomcat服务器支持直接使用application对象。(错)
2.out对象是一个输出流,它实现了javax.servlet.JspWriter接口,用来向客户端输出数据。(对)
3.利用response对象的sendRedirect方法只能实现本网站内的页面跳转,但不能传递参数。(错)
4.respone对象主要用于向客户端发送数据。(对 )
5.contentType属性用来设置JSP页面的MIME类型和字符编码集,取值格式为\类型\或\类型;charset=字符编码集\,response对象调用addHeader方法修改该属性的值。(错) 6.Post属于表单的隐式提交信息方法。(对)
7.
9.网页中只要使用gb2312编码就不会出现中文乱码。(错)
10.表单提交的信息就封装在HTTP请求消息的信息体部分,用户使用request对象的getParameter方法可以得到通过表单提交的信息。(对)
11.request对象的getRemoteHost()方法既能获取客户机的名称,又能获取客户IP地址的方法是(对)
12.同一个客户在同一个Web服务目录中的session对象是相同的,在不同的Web服务目录中的session对象是不相同的。(对)
13.session对象是HttpSession接口类的实例,由客户端负责创建和销毁,所以不同客户的session对象不同。(对)
14.public long session.setMaxInactiveInterval() 设置最长发呆时间,单位毫秒。(错)
15.session对象可以用来保存用户会话期间需要保存的数据信息。(对) 16.url重写可以把session对象的id作为url参数传带过去,可以使用request对象的encodeURL(“”)。(错)
17.application对象对所有用户都是共享的,任何对它的操作都会影响到所有的用户。(对)
18.application对象可以用来保存数据。(对)
三、填空题
1.out对象的__ out.flush()_____方法,功能是输出缓冲的内容。 2.JSP的__session___对象用来保存单个用户访问时的一些信息。
3.response对象的_sendRedirect(URL url)___方法可以将当前客户端的请求转到其他页面去。 4.当客户端请求一个JSP页面时,JSP容器会将请求信息包装在__request__对象中。
5.response.setHeader(“Refresh”, “5”)的含义是指__页面刷新时间为 5秒__。 6.在JSP中为内置对象定义了4种作用范围,即Application Scope 、Session Scope 、Page Scope 和Request Scope 四个作用范围。 7.表单的提交方法包括___post_______和____get______方法。
8.表单标记中的__action___属性用于指定处理表单数据程序url的地址。 9.
四、思考题
1.请说出JSP中常用的内置对象。
2.简述request对象和response对象的作用。 3.session对象与application对象有何区别?
4.网页中的表单如何定义,通常表单中包含哪些元素? 5.如何处理表单提交的汉字?
6.一个用户在不同的Web服务目录的session相同吗? 7.内置对象的4个作用范围?什么情况下session会关闭? 8.response.sendRedirect(URL url)方法的作用?
9.是不是所有Web服务目录共用一个application?
10.怎样使用request、session和application对象进行参数存取?
第五章 使用JavaBean
一、选择题
1.下面哪一项属于工具Bean的用途?(A)
A)完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。
B)负责数据的存取
C)接受客户端的请求,将处理结果返回客户端 D)在多台机器上跨几个地址空间运行
2.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp动作指令?(D)
A) B) C) D)
3.关于JavaBean,下列的叙述哪一项是不正确的?(C)
A)JavaBean的类必须是具体的和公共的,并且具有无参数的构造器 B)JavaBean的类属性是私有的,要通过公共方法进行访问
C)JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册 D)JavaBean属性和表单控件名称能很好地耦合,得到表单提交的参数 4.JavaBean的属性必须声明为private,方法必须声明为(D )访问类型。 A)private B)static C)protect D)public
5.JSP页面通过( C )来识别Bean对象,可以在程序片中通过xx.method形式来调用Bean中的set和get方法。 A)name B)class
C)id D)classname
6.JavaBean的作用范围可以是page、request、session和( A )四个作用范围中的一种。
A)application B)local C)global D)class
7.下列哪个作用范围的bean,请求响应完成则该Bean即被释放,不同客户的Bean互不相同。(B)
A)application B)request C)page D)session
8.下列哪个作用范围的Bean,被Web服务目录下所有用户共享,任何客户对Bean属性的修改都会影响到其他用户。(A) A)application B)request C)page D)session
8.下列哪个作用范围的Bean,当客户离开这个页面时,JSP引擎取消为客户该页面分配的Bean,释放他所占的内存空间。(C) A)application B)request C)page D)session
9.使用动作标记可以在JSP页面中得到Bean实例的属性值,并将其转换为什么类型的数据,发送到客户端。( A ) A)String B)Double C)Object D)Classes
10.使用动作标记可以在JSP页面中设置Bean的属性,但必须保证Bean有对应的什么方法。(B)
A)SetXxx方法 B)setXxx方法 C)getXxx方法 D)GetXxx方法
11.使用格式A)必须一致 B)可以不一致 C)必须不同 D)无要求
12.在JSP页面中使用A)Long.parseLong(String s) B)Integer.parseInt(Stirng s) C)Double.parseDouble(String s) D)不确定 13.下列那个调用数据类型转换方法会发生NumberFormatException异常?( D ) A)Long.parseLong(“1234”) B)Integer.parseInt(“1234”) C)Double.parseDouble(“123.45”) D)Integer.parseInt(“123a”) 14.在JSP页面中使用15.在JSP页面中使用A)必须和表单参数类型一致 B)必须和表单参数名称一一对应 C)必须和表单参数数量一致 D)名称不一定对应
二、判断题
1.JavaBean的属性可读写,编写时set方法和get方法必须配对。(错) 2.JavaBean也是Java类,因此也必须有主函数。(错)
3.JavaBean组件就是Java开发中的一个类,通过封装属性和方法成为具有某种功能和接口的类,所以具有Java程序的特点。(对)
4.Sun公司把JavaBean定义为一个可重复使用的软件组件,类似于电脑CPU、硬盘等组件。(对)
5.JavaBean分为可视化组件和非可视化组件。(对) 6.JavaBean的属性必须声明为private,方法必须声明为public访问类型。(对) 7.创建JavaBean要经过编写代码、编译源文件、配置JavaBean这样一个过程。(对)
8.在JSP页面中调用的Bean类中如果有构造方法,必须是public类型且必有参数。(错)
9.布置JavaBean须在Web服务目录的WEB-INF\\classes子目录下建立与包名对应的子目录,并将字节文件复制到该目录。(对)
10.Javabean中,对于boolean类型的属性,可以使用is代替方法名称中的set和get前缀,创建Bean必须带有包名。(对)
11.在JSP页面中使用Bean首先要使用import指令将Bean引入。(对)
12.修改了Bean的字节码后,要将新的字节码复制到对应的WEB-INF\\classes目录中,重新启动tomcat服务器才能生效。(对)
13.客户在某个页面修改session作用范围Bean的属性,在其他页面,该Bean的属性会发生同样的变化,不同客户之间的Bean也发生变化。(错)
14.使用动作标记,可以使用表达式或字符串为Bean的属性赋值。(对)
15.使用格式16.表单提交后,动作指令才会执行。(对)
三、填空题
1.在Web服务器端使用JavaBean,将原来页面中程序片完成的功能封装到JavaBean中,这样能很好地实现 业务逻辑层与视图层的分离。 2.JavaBean中用一组set方法设置Bean的私有属性值,get方法获得Bean的私有属性值。set和get方法名称与属性名称之间必须对应,也就是:如果属性名称为xxx,那么set和get方法的名称必须为 setXxx() 和 getXxx() 。 3.用户在实际Web应用开发中,编写Bean除了要使用import语句引入Java的标准类,可能还需要自己编写的其他类。用户自己编写的被Bean引用的类称之为 Bean的辅助类 。
4.创建JavaBean的过程和编写Java类的过程基本相似,可以在任何Java的编程环境下完成 编写、编译和发布 。 5.布置JavaBean要在Web服务目录的WEB-INF\\classes文件夹中建立与 Bean的包名 对应的子目录,用户要注意目录名称的大小写。 6.使用Bean首先要在JSP页面中使用 import 指令将Bean引入。
7.要想在JSP页面中使用Bean,必须首先使用 动作标记在页面中定义一个JavaBean的实例。 8.scope属性代表了JavaBean的作用范围,它可以是page、 request 、session和application四个作用范围中的一种。
四、思考题
1.JavaBean和一般意义上的Java类有何区别? 2.简述值Bean的编写方法,有哪些注意点?
3.如何实现一个Bean的属性与表单参数的关联? 4.如何在页面的程序片中使用Bean?
5.试述request、session和application有效范围的Bean生命周期?
第六章 文件访问
一、选择题
1.Java提供的流类,从功能上看将数据写入文件的流称为( B ) A)输入流 B)输出流 C)字符流 D)字节流 2.Java提供的流类,从所操作的数据单位来看将数据写入文本文件的流称为( C ) A)输入流 B)输出流 C)字符流 D)字节流
3.下列File对象的哪个方法能够判断给定路径下的文件是否存在。( C ) A)canRead() B)canWrite() C)exists() D)isDirectory() 4.下列File对象的哪个方法能够判断应用程序能否读取给定路径下的文件对象。( A )
A)canRead() B)canWrite() C)exists() D)isDirectory()
5.下列File对象的哪个方法能够判断应用程序能否向给定路径下的文件对象写入数据。( B )
A)canRead() B)canWrite() C)exists() D)isDirectory()
6.下列File对象的哪个方法能够判断File对象对应的路径是否为目录。( D ) A)canRead() B)canWrite() C)exists() D)isDirectory()
7.下列File对象的哪个方法能够判断File对象对应的路径是否为文件。( A ) A)isFile() B)createNewFile() C)lastModified() D)length()
8.下列File对象的哪个方法能够创建一个新文件,如果创建成功返回true,否则返回false(该文件已经存在)。( B ) A)isFile() B)createNewFile() C)mikdir() D)length()
9.下列File对象的哪个方法能够创建File对象对应的路径,如果创建成功返回true,否则返回false(该目录已经存在)( C ) A)isFile() B)createNewFile() C)mikdir() D)length()
10.下面是FileInputStream读取文件的代码片段: File file1=new File(fileName);
FileInputStream finput=new FileInputStream(file1); int size=finput.available();
BufferedInputStream buffer1=new BufferedInputStream(finput); byte b[]=new byte[90]; int n=0; while((n=buffer1.read(b))!=-1){ allFilesmess.append(new String(b,0,n));
} buffer1.close(); finput.close();
除最后一次外,代码中buffer1.read(b)每次读取文件的字节数?(A) A)90 B)89 C)n D)size/n
11.下面是FileOutputStream对象写入的代码片段: String filesMess=”abcdef”; FileOutputStream outf=new FileOutputStream(fileName); BufferedOutputStream bufferout= new BufferedOutputStream(outf); byte b[]=this.filesMess.getBytes(); bufferout.write(b); bufferout.flush(); bufferout.close(); outf.close();
代码执行后,文件中会写入哪个字符串的字节码(B ) A)”filesMess” B)”abcdef” C)”b” D)不确定
12.下面是FileReader对象读取文本文件的代码片段: StringBuffer temp=new StringBuffer(); if(fileName!=null){ String strTemp=null; FileReader fr=new FileReader(fileName); BufferedReader buffer1=new BufferedReader(fr); while((strTemp=buffer1.readLine())!=null){ byte bb[]=strTemp.getBytes(); strTemp=new String(bb); temp.append(\ } allFilesmess=\ buffer1.close(); fr.close();
代码中buffer。readLine()每次读取文件的字符数?(D) A)一个字符 B)一行字符包括换行符
C)bb.length个 D)一行字符不包括换行字符
13.BufferedReader处理Reader类中的方法外,还提供了public String readLine()方法,该方法读入一行文本,这里的“一行”指字符串以“\\n”或什么做结尾。()
A)\\t B)\\f C)\\r D)\\p
二、判断题
1.使用Java的输入流读取数据的时候,就会开启一个通向数据源的通道,这个数据源可以是文件,内存,或是网络连接等。(对)
2.使用Java的输出流写入数据的时候,就会开启一个通向目的地的通道,这个目的地可以是文件,但不能是内存或网络连接等。(错) 3.字节流一般是用来读入或写出二进制数据。(对)
4.“纯文本”类的信息,一般使用字符流来进行处理。(对)
5.创建一个File对象,就会在某个物理路径下创建一个文件或目录。(错) 6.File类直接处理文件和文件系统,它并不涉及文件的读写操作。(对)
7.Java程序一般用字符流处理二进制字节对象,用字节流处理字符或字符串对象。(错) 8.InputStream抽象类的read方法出错后一定会抛出一个IOException异常。(对) 9.OutputStream抽象类的write方法出错后一一定会抛出一个IOExcetption异常。(对)
10.BufferedReader提供了public String readLine()方法,该方法从文件中读入一行文本,如果已到达流结尾而未读入任何文字,则返回-1。(错)
11.RandomAccessFile类即不是输入流类InputSteam的子类,也不是输出流类OutputStream的子类,但它同时实现了DataInput和DataOutput接口。(对) 12.使用RandomAccessFile类访问文件的程序,不可以随意改变文件指针位置。(错)
三、填空题
1.Java中有四个“输入/输出”的抽象类,InputStream、 OutputStream 、Reader和 Writer 。 InputStream 和 OutputStream 用于做字节流输入输出操作, Reader 和 Writer 用于做字符流输入输出操作。 2.按照HTTP协议的规定,上传的临时文件 第二 行有上传文件的文件名信息,第四 行结束位置到倒数 第六 行结束位置之间的内容是文件本身部分。 3.response对象的 setContentType() 用来定义服务器发送给客户端的MIME类型。 4. Word文件 的MIME类型是“application/msword”, Excel文件 的MIME类型是“application/msexcel”。
四、思考题
1.字节流和字符流有何区别?
2.BufferedInputStream与FileInputStream如何配合使用? 3.BufferedOutputStream与FileOutputStream如何配合使用? 4.BufferedReader与FileReader如何配合使用? 5.BufferedWriter与FileWriter如何配合使用? 6.RandomAccessFile访问文件有何特点? 7.如何处理文件读写操作中发生的异常?
第九章 基于Servlet的MVC模式
一、选择题
1.关于MVC架构的缺点,下列的叙述哪一项是不正确的?(B) A)提高了对开发人员的要求 B)代码复用率低 C)增加了文件管理的难度 D)产生较多的文件
2.关于JSP Model1模式的缺点,下列的叙述哪一项是不正确的?(D) A)应用是基于过程的 B)业务逻辑和表示逻辑混合 C)软件维护和扩展困难 D)产生较多的文件
3.关于JSP Model2模式的优点,下列的叙述哪一项是不正确的?(D) A)模型具有较高的通用性 B)Servlet对象擅长控制
C)分离了视图层和业务层 D)M、V、C之间具有较低的耦合性 4.阅读下面代码片段:
JavaBeanClass bean=new JavaBeanClass(parameter); HttpSession session=request.getSession(true); session.setAttribute(\
该段代码创建的Bean,下列叙述哪项是正确的?(C) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 5.阅读下面代码片段:
JavaBeanClass bean=new JavaBeanClass(parameter); getServletContext().setAttribute(\或者 application.setAttribute(\
该段代码创建的Bean,下列叙述哪项是正确的?(B) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 6.阅读下面代码片段:
JavaBeanClass bean=new JavaBeanClass(parameter); request.setAttribute(\
该段代码创建的Bean,下列叙述哪项是正确的?(A) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 7.阅读下面代码片段:
RequestDispatcher dispatcher=request.getRequestDispatcher(\dispatcher.forward(request,response);
关于该段代码的作用,下列叙述哪项是正确的?(B) A)页面重定向到a.jsp页面 B)将请求转发到a.jsp页面 C)从a.jsp定向到当前页面 D)从a.jsp转发到当前页面
二、判断题
1.重定向功能是将用户从当前页面或Servlet定向到另一个JSP页面或Servlet。(对)
2.转发的功能是将用户对当前JSP页面或Servlet的请求转发给另一个JSP页面或Servlet。(对)
2.重定向仅仅是将用户定向到其他的JSP页面或Servlet,而不能将Request对象转发给所指向的资源。(对)
3.网站设计的时候经常会处理大量的数据,这些数据必须都放在JSP页面中。(错)
4.实现转发需要两个步骤,首先在Servlet中要得到RequestDispatcher对象,然后在调用该对象的forward方法实现转发。( 对 )
5.在MVC模式中,因为Servlet负责创建JavaBean,所以JavaBean的构造函数可以带有参数,除了保留get和set规则外,还可以有其他功能的函数。(对) 6.在MVC模式的Web开发中,“视图”、“模型”和“控制器”分别对应着“JSP页面”、“JavaBean”和“Serlvet”,以Servlet为核心。(对)
三、填空题
1.MVC(Model-View-Controller)是八十年代为编程语言 Smalltalk-80 发明的一种软件设计模式。
2.MVC是三层开发结构,这三个字母按顺序分别代表_Model__、___View_、__Controller_______。 3. 模型 封装了数据和对数据的操作,是实际进行数据处理计算的地方。 视图 是应用和用户之间的接口,它负责将应用显现给用户和显示模型的状态。控制器 负责视图和模型之间的交互,控制对用户输入的响应、响应方式和流程。 4.控制器主要负责两方面的动作: 把用户的请求分发到相应的模型 ; 将模型的改变及时反映到视图上 。 5.Sun公司的JSP规范提出了两种用JSP技术建立应用程序的方式,分别称为JSP Model 1(模式1)和JSP Model 2(模式2)。
6.在Servlet中,主要使用HttpServletResponse类的重定向方法 sendRedirect 方法实现重定向,以及使用RequestDispatcher类的转发方法 forward 方法实现转发功能。
四、思考题
1.MVC模式的核心思想是什么?
2.谁来担当MVC模式的视图、模型和控制器角色? 3.使用MVC模式有什么好处?
4.MVC模式中的Bean由谁来创建?都有那些生命周期类型? 5.控制器如何控制页面的流转。
6.怎样编写、编译、调试和布置MVC模式中的Servlet和bean? 7.请简要叙述如何设计JSP网站。
第十章 JSP使用xml
一、选择题
1.下面哪一项是合法的xml标记名称?(C) A)<123abc> B)<123书名> C) D)
2.在XML文档中如果要使用到保留字符的话就要利用实体引用方式来表示。“>”号的实体引用方式是:(C)
A)& B)> C)< D)&apos 3.空标记的主要用途是:(B)
A)对文档的显示方式进行排版 B)留着备用 C)用于特定数据 D)没有意义
4.XML名称空间(Name Space)是XML的重要概念,它解决了什么问题?(C) A)为XML文档取名问题 B)同名XML文档的冲突问题 C)同名标记的冲突问题 D)可有可无
5.下面哪一项不属于XML与HTML结合的优势?(C)
A)扩充了网页的显示样式 B)提供给客户端结构化数据视图 C)通过粒度更新来提高性能 D)集成不同来源的结构化数据 6.下面哪一项不属于Node接口的子接口?(C) A)Document B)Element C)Nodelist D)Text
7.下面哪一项是操作xml文档的入口?(A) A)Document B)Element C)Nodelist D)Text
8.下面哪一项是提供了对xml文档的元素的访问方法?(A) A)Document B)Element C)Nodelist D)Text
二、判断题
1.XML文档只能包含一个根元素。(对)
2.XML区分大小写,但结束标记名称不必与其伴随的开始标记名称完全匹配。(错) 3.在XML声明中,xml,version,encoding,standalone都必须为小写英文字母。(对)
4.元素名称可以XML三个字母为开头。(错)
5.XML文档中元素属性的属性值用双引号或单引号来界定。(对)
6.XML文档是一个层状结构的信息体,但是不能作为数据源提供数据。(错) 7.DOM把XML文档看成在内存中的结构树,通过程序存取“树上”的HTML或XML的内容。(对)
8.DOM节点树上每一个节点都有子节点。(错)
9.DOM技术适用于XML和HTML这样的层状结构文档。(错)
10.每一个节点都是一个程序设计对象,提供了存取相关组件的属性与方法。(对) 11.元素只是节点的一种类型,元素节点是信息的容器。(对)
12.NodeList中的每个item都可以通过一个索引来访问,该索引值从0开始。(对)
13.XML文件是由标记和字符数据组成的文件,置标是XML语言的精髓,占有举足轻重的位置。(对)
14.XML标记的名称可以由字母、数字、下划线、点或连字符组成,但必须是字母或下划线开头,标记不区分大小写。(错)
15.在标记CDATA下,所有的标记、实体引用都被忽略,<、>、&、\、' 等这些符号被当作普通字符处理。(对)
16.在XML中,注释的方法与HTML完全相同,用“”将注释文本括起来,并且注释可以嵌套。(错)
三、填空题
1.XML文档的第一行必须是 XML声明 ,该部分指明了XML的版本和编码方式等属性。
2.XML文件有且只有一个 根标记 ,其他标记都必须封装在其中,该标记又称为文件标记。 3.XML 的注释以_____结束。
4.XML声明部分以“”部分结束,开始字符之间没有空格。声明部分要求必须指定 version 属性,standalone和encoding属性可选。
5.除了注释和CDATA部分以外,所有符号“<”和“>”之间的内容都称为 标记 。 6.在保存XML文件时,保存文件的字符编码应与XML文件声明中的字符集类型一致。
7.DOM的英文全称是__Document Object Model __,中文意义是___文档对象模型_。
8.JAXP的英文全称是_ Java API for XML Processing __,中文意义是_XML应用程序Java编程接口_。 9.XML文档的节点树有且只有__一__个根节点。 10.在DOM接口规范中,有四个基本接口:__Node__、__Nodelist___、_NamedNodeMap__和_Document__。
11.使用DOM接口,应用程序可以随时访问文档中任何一部分数据,NodeList集合中的节点都是live的,对各节点的操作都会反应到XML文件中,因此DOM接口访问XML文件又称为 随机访问模式 。 12.SAX英文全称是 Simple API forXML 中文意思是 XML简单应用程序接口。
四、简述题
1.试写出HTML常用的表格元素(标记)及其意义。 2.为XML文档设置属性时应注意哪些方面?
3.XML注释的作用是什么?如何为一个XML文档添加注释
本文来源:https://www.bwwdw.com/article/ykz5.html
Top