您当前的位置:首页 > 互联网教程

河南大学java web考试卷,是题库也可以!谢谢啦

发布时间:2025-05-22 22:21:34    发布人:远客网络

河南大学java web考试卷,是题库也可以!谢谢啦

一、河南大学java web考试卷,是题库也可以!谢谢啦

《JAVA WEB开发应用》第 1页共 6页

课程名称: JAVA WEB考试方式:开卷()闭卷(√)

考生注意事项:1、本试卷共 4页,请查看试卷中是否有缺页。 2、考试结束后,考生不得将试卷、答题纸带出考场。

一、选择题(每小题1分,共20分)

1.表单中的数据要提交到的处理文件由表单的()属性指定。

A.method B. name C. action D.以上都不对 2.要运行JSP程序,下列说法不正确的是()

A.服务器端需要安装Servlet容器,如Tomcat等。 B.客户端需要安装Servlet容器,如Tomcat等。 C.服务器端需要安装JDK。

D.客户端需要安装浏览器,如IE等。

3.当发布Web应用程序时,通常把Web应用程序的目录及文件放到Tomcat

A.work B. temp C. webapps D. conf 4.下面有关HTTP协议的说法不正确的是()

A. HTTP协议是Web应用所使用的主要协议

B. HTTP协议是一种超文本传输协议(Hypertext Transfer Protocol),

D. HTTP的请求和响应消息如果没有发送并传递成功的话,HTTP可以保存

5.下面有关Servlet的描述错误的是()。

A.一个Servlet就是Java中的一个类

B. Servlet是位于Web服务器内部的服务器端的Java应用程序 C. Servlet可以由客户端的浏览器解释执行

D.加载Servlet的Web服务器必须包含支持Servlet的Java虚拟机 6.下面不属于JSP指令的是:()

A. include B. import C. page D. taglib 7.()动作用于转向另一个页面。

A. next B. forward C. include D. param 8.在项目中已经建立了一个JavaBean,该类为:bean.Student,该bean具

有name属性,则下面标签用法正确的是:()

A.<jsp:useBean id="student" class="Student" scope="session">

B.<jsp:useBean id="student" class="Student" scope="session">

C.<jsp:useBean id="student" class="bean.Student" scope="session">

D.<jsp:getProperty name="name" property="student"/>

9.下列选项中,()可以准确地获取请求页面的一个文本框的输入(文本框的名称为name)。

A. request.getParameter(name) B. request.getParameter(”name”) C. request.getParameterValues(name)

《JAVA WEB开发应用》第 2页共 6页

D. request.getParameterValues(“name”)

10.使用response对象进行重定向时,使用的方法是()。

A. getAttribute B. setContentType C. sendRedirect D. setAttribute

11. session对象中用于设定指定名字的属性值,并且把它存储在session对

A. setAttribute B. getAttributeNames C. getValue D. getAttribute

12.在application对象中用()方法可以获得application对象中的所有

A. getServerInfo B. nextElements() C. removeAttribute D. getRealPath 13.有关struts 2的说法不正确的是()

A. Struts是一个用于简化MVC框架(Framework)开发的Web应用框架 B.应用Struts 2不需要进行配置 C. Struts 2含有丰富的标签

D. Struts2采用了WebWork的核心技术 14. Web应用的数据共享方式不包括()。

A.基于请求的共享 B.基于会话的共享 C.基于页面的共享 D.基于应用的共享

15.要在页面上输出2+3=${2+3},则对应的程序代码应为()。

A. 2+3=\${2+3} B. 2+3=${2+3} C. 2+3=/${2+3} D.以上都不对

16.下面有关EL中“.“和“[ ]“两种存取运算符的说法不正确的是()

B.“[ ]“运算符主要用来访问数组、列表或其他集合 C.如果要动态取值时,两者都可以实现

D.当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字

17.要使用JSTL的核心标签库,需要在JSP源文件的首部加入如下声明语句

uri=""%> B.<%@ taglib prefix=”x”

uri=””%> C.<%@ taglib prefix=”fmt”

uri=””%> D.<%@ taglib prefix=”sql”

uri=””%>

18.以下()标签用于实现循环功能,类似与Java语句中的for循环。

A.<c:set> B.<c:forEach> B.<c:Tokens> D.<c:import> 19.以下URL中语法不正确的是()

A. B.telnet://bdysseu.bbb.com:70 C. D.www0.btbu.edu.cn

20. page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不

A.<%@ page%>作用于整个JSP页面。

B.可以在一个页面中使用多个<%@ page%>指令

《JAVA WEB开发应用》第 3页共 6页

C.为增强程序的可读性,建议将<%@ page%>指令放在JSP文件的开头,但不是必须的。

D.<%@ page%>指令中的属性只能出现一次。

1.在编写Servlet时,需要继承类,在Servlet中声明doGet()和doPost()需要和类型的两个参数。

2.jsp主要内置对象有:、exception、 pageContext、 request、、_____ __、out、config、page。 3.使用useBean动作标记的时候scope属性有4种选项,作用范围由小到大是_________、_________、_________、_________,其中_________是指当关闭浏览器的时候这个javabean失效, ____ _____是指当关闭服务器的时候这个javabean失效。

4.三种常用的动态网页技术是_________、_________、_________,简称3P技术。

5.JSP利用JDBC操作数据库的步骤:(1)加载驱动程序,调用___________将自动加载驱动程序类;(2)建立连接,若连接字符串为:

String url="jdbc:mysql://localhost/"+ dbName+"?user="+userName+"&password="+userPwd,其中dbName、userName和userPwd 3个分别代表、数据库的和,(3)建立StateMent;(4)、执行sql语句,其中,查询数据库里的表内容是Statement接口使用__ __________方法;(5)关闭数据库。三、简答题:(每小题6分,共30分)

1. Tomcat服务器的默认端口是多少?怎样修改tomcat的端口

2.什么是cookie? cookie有什么作用?。

3.简述JSP中动态include与静态include的区别?

5、MVC中的M、V、C各指的是什么?请述其各自的作用。四、编程题(每小题15分,共30分)

《JAVA WEB开发应用》第 4页共 6页

1、编写一个简单的JavaBean,通过EL的存取运算符访问其属性。答案:文件userLogin.java定义了一个用户Bean,包含姓名、密码和电子邮件3个属性,其代码如下:

public class userLogin{ private String userName; private String(1) private String email; public userLogin(){ userName="李平"; password="123";

public void setuserName(String userName){ this.userName= userName;}

public String getuserName(){ return this.userName;}

public void setpassword(String password){ this.password= password;}

public void setemail(String email){ this.email= email;

public String getemail(){ return this.email;}

文件accessBean.jsp使用EL的存取运算符获取JavaBean的属性,其代码如下:

<%@ page contentType="text/html; charset=gb2312"%>(2)

<jsp:useBean id="user" class="bean.userLogin" scope="session"></jsp:useBean><html><head>

<title>使用存取运算符访问JavaBean的属性</title>

</head><body><!--通过EL存取运算符访问JavaBean的属性-->用户名:(3)<br>

《JAVA WEB开发应用》第 5页共 6页

二、软件设计师java选做题技巧

软件设计师java选做题技巧如下:

每类题选择模拟题及近两三年的真题做一下,再认真看老师的答案解析视频,前3题力争完全弄懂,后2题能得一半分数即可

系统性做两三套模拟题或历年真题,把没搞懂的知识点记下来,再重新通过回看直播视频、翻看笔记、重做章节练习或错题库、网络搜索相关资料等方式,彻底将知识点弄懂!尤其对考点较多的章节内容要重点掌握,否则失分严重!

有的章节内容较为零散、记忆难度较大,可通过表格记忆(比如各种排序方法的时间复杂度、空间复杂度及稳定性表格)。

如果上午题(数神晌基础知识,75个单选题,满分75分)能及格(45分),可以重点突破下午题,确保下午也能过关。按去年考题情况,感觉比平时做的练习题难度要低一些。

软件设计师是指能根据软件开发项目管理和软件工程的要求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档的实用性人才。

还能够组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件;具有工程师的实际工作能力和业务水平,可聘任工程师薯锋职务。2004年人社部将高级程序员更名为软件设计师。

软件设计师考试属于全数神晌国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)中的一个中级考试。考试不设学历与资历条件,也不论年龄和专业。

考生瞎则可根据自己的技术水平选择合适的级别合适的资格,但一次考试只能报考一种资格。考试采用笔试形式,考试实行全国统一大纲、统一试题、瞎则统一时间、统一标准、统一证书的考试办法。

三、求java基础习题!

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。

继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。

封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。

多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

2、String是最基本的数据类型吗?

基本数据类型包括byte、int、char、long、float、double、boolean和short。

java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类

Java提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。

引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。

JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。

5、运行时异常与一般异常有何异同?

异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

6、说出Servlet的生命周期,并说出Servlet和CGI的区别。

Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。

与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。

7、说出ArrayList,Vector, LinkedList的存储性能和特性

ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector由于使用了synchronized方法(线程安全),通常性能上较ArrayList差,而LinkedList使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。

8、EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。

EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技术实现。

SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。

对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上运行的业务逻辑。

对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。

Session Bean还可以再细分为 Stateful Session Bean与 Stateless Session Bean,这两种的 Session Bean都可以将系统逻辑放在 method之中执行,不同的是 Stateful Session Bean可以记录呼叫者的状态,因此通常来说,一个使用者会有一个相对应的 Stateful Session Bean的实体。Stateless Session Bean虽然也是逻辑组件,但是他却不负责记录使用者状态,也就是说当使用者呼叫 Stateless Session Bean的时候,EJB Container并不会找寻特定的 Stateless Session Bean的实体来执行这个 method。换言之,很可能数个使用者在执行某个 Stateless Session Bean的 methods时,会是同一个 Bean的 Instance在执行。从内存方面来看, Stateful Session Bean与 Stateless Session Bean比较, Stateful Session Bean会消耗 J2EE Server较多的内存,然而 Stateful Session Bean的优势却在于他可以维持使用者的状态。

9、Collection和 Collections的区别。

Collection是集合类的上级接口,继承与他的接口主要有Set和List.

Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。

11、HashMap和Hashtable的区别。

HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。

HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。

HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。

Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap就必须为之提供外同步。

Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。

12、final, finally, finalize的区别。

final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。

finally是异常处理语句结构的一部分,表示总是执行。

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。

13、sleep()和 wait()有什么区别?

sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。

wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

14、Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。

15、error和exception有什么区别?

error表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

16、同步和异步有何异同,在什么情况下分别使用他们?举例说明。

如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。

当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。

17、abstract class和interface有什么区别?

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。

栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。

forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。

redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

Java Bean是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。

21、Static Nested Class和 Inner Class的不同。

Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。

22、JSP中动态INCLUDE与静态INCLUDE的区别?

动态INCLUDE用jsp:include动作实现<jsp:include page="included.jsp" flush="true"/>它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。

静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面<%@ include file="included.htm"%>

assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的。

GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。

25、short s1= 1; s1= s1+ 1;有什么错? short s1= 1; s1+= 1;有什么错?

short s1= 1; s1= s1+ 1;(s1+1运算结果是int型,需要强制转换类型)

short s1= 1; s1+= 1;(可以正确编译)

26、Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

round方法返回与参数最接近的长整数,参数加1/2后求其floor.

27、String s= new String("xyz");创建了几个String Object?