笔试_jsp试题(1)

来源:互联网 发布:充话费的软件 编辑:程序博客网 时间:2024/06/05 21:13

一、 单选题(每小题2分,共146分)

1. JSP中要使用user包中的User类,则以写法正确的是(  )

A:<jsp:useBean id="user" class=" user.User"  scope="page" />

B:<jsp:useBean class="user.Use.class"/> 

C:<jsp:useBean name="user" class="user.User"/>

D:<jsp:useBeam id="user" class="user" import="user.* " /> 

E:id

 

// id为这个bean声明一个名字

class指引入哪个包下的哪个类

scope属性的各个设置值的意义和作用:page表示将JavaBean实例对象存储在PageContext对象中,作用范围是当前JSP页面有效。

 

 

2. 使用<jsp:setProperty>动作标记可以在JSP页面中设置Bean的属性,但必须保证Bean有对应的什么方法。( )

A:SetXxx方法

B:setXxx方法

C:getXxx方法

D:GetXxx方法

 

3. 下列哪一项不是Servlet中使用的方法? ( )

A:doGet()

B:doPost()

C:service()

D:close()

 

// servlet中常用的方法:

1. init():在servlet的生命周期中只执行一次

2. service():可以将该方法的作用简单地理解为派遣doGet()还是doPost()

3. doGet():响应HTTP表单的Get请求,或者响应URL的请求

4. doPost():响应HTTP表单的Post请求

5. destory():在服务器停止且卸载该servlet时执行该方法

6. GetServletConfig():返回一个ServletConfig对象

7. GetServletInfo():获得有关servlet的信息,如作者、版本、版权。不常用。

 

 

4. 以下能执行带参数的SQL语句的对象是 ( )

A:Statement

B:

Preparedstatement

C:CallStatement

D:Connection

 

5. 关于JavaBean,下列的叙述哪一项是不正确的?( )

A:JavaBean的类必须是具体的和公共的,并且具有无参数的构造器

B:JavaBean的类属性是私有的,要通过公共方法进行访问

C:JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册

D:JavaBean属性和表单控件名称能很好地吻合,得到表单提交的参数

 

// JavaBean的基本条件:
1、类是公有的且是具体的,属性是私有的
2、有公有的无参构造方法
3、有能访问属性的公有的getter、setter方法

 

 

6. 当response的状态行代码为哪个时,表示用户请求的资源不可用?

A:101    

B:202      

C:303     

D:404

 

//101:(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。
202:(已接受)服务器已接受请求,但尚未处理。
303:(查看其他位置)请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
404:(未找到)服务器找不到请求的网页。

 

 

7. 下面的代码是连接哪个数据库的驱动加载片段(  ) 

 

 

try{     

    Class.forName("oracle.jdbc.driver.OracleDriver");  

}

catch(Exception e){     

  out.print(e.toString());  

}

 

A:Oracle

B:Sql Server

C:MySql

D:不确定

 

 

8. 以下那一项不是Servlet用于保持会话的技术:( )

A:Cookie

B:TCP/IP三次握手 

C:HTML隐藏表单域

D:HTTP session

 

9. include指令用于在JSP页面静态插入一个文件,插入文件可以是JSP页面、HTML网页、文本文件或一段Java代码,但必须保证插入后形成的文件是( )。

A:是一个完整的HTML文件

B:是一个完整的JSP文件

C:是一个完整的TXT文件

D:是一个完整的Java源文件

 

10. 当用户请求jsp页面时,JSP引擎就会执行该页面的字节码文件响应客户的请求,执行字节码文件的结果是()

A:发送一个JSP源文件到客户端 

B:发送一个Java文件到客户端

C:发送一个HTML页面到客户端

D:什么都不做

 

11. JSP页面程序片中可以使用下列哪个方法将strNumx=request.getParamter(“ix”)得到的数据类型转换为Double类型(

A:Double.parseString(strNumx) 

B:Double.parseDouble(strNumx)

C:Double.parseInteger(strNumx)

D:Double.parseFloat(strNumx)

 

12. DriverManager类的getConnection(String url,String user,String password)方法中,参数url的格式为jdbc:<子协议>:<子名称>,下列哪个url是不正确的?( )

A:"jdbc:mysql://localhost:3306/数据库名" 

B:"jdbc:odbc:数据源"

C:"jdbc:oracle:thin@host:端口号:数据库名" 

D:"jdbc:sqlserver://172.0.0.1:1443;DatabaseName=数据库名"

 

// URL的通常格式为:jdbc:(哪种数据库)://数据库地址:数据库端口号/数据库名字?编码格式

 

 

13. JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp动作指令?( )

A:<jsp:useBean>

B:<jsp:setProperty>

C:<jsp:getProperty>

D:<jsp:setParameter>

 

14. 下列动态网页和静态网页的根本区别描述错误的是()

A:静态网页服务器端返回的HTML文件是事先存储好的

B:动态网页服务器端返回的HTML文件是程序生成的    

C:静态网页文件里只有HTML标记,没有程序代码

D:动态网页中只有程序,不能有HTML代码

 

15. 阅读下面代码片段:

 

 

RequestDispatcher dispatcher=request.getRequestDispatcher("a.jsp");

dispatcher.forward(request,response);

关于该段代码的作用,下列叙述哪项是正确的?( ) 

A:页面重定向到a.jsp页面

B:将请求转发到a.jsp页面

C:从a.jsp定向到当前页面

D:从a.jsp转发到当前页面

 

16. 下列那个调用数据类型转换方法会发生NumberFormatException异常?(  )

A:Long.parseLong(“1234”) 

B:

Integer.parseInt(“1234”)

C:Double.parseDouble(“123.45”) 

D:

Integer.parseInt(“123a)

 

17. 下面是创建Statement接口并执行executeUpdate方法的代码片段:

 

 

 conn=DriverManager.getConnection("jdbc:odbc:book","","");

 stmt=conn.createStatement();

 String strsql="insert into book values('TP003', 'ASP.NET','李','清华出版社',35)";

 n=stmt.executeUpdate(strsql)

代码执行成功后n的值为(   ) 。

A:1

B:0

C:-1

D:一个整数

 

// executeUpdate返回值为受影响的行数

 

 

18. 查询结果集ResultSet对象是以统一的行列形式组织数据的,执行

 

 

ResultSet rs = stmt.executeQuery ("select bid,name,author,publish,price from book");

语句,得到的结果集rs的列数为(  )

A:4

B:5

C:6

D:不确定

 

19. Tomcat服务器的默认端口号是?()

A:80

B:8080

C:21

D:2121

 

20. 下列哪一项不属于JSP动作指令标记?( )

A:<jsp:param> 

B:<jsp:plugin> 

C:<jsp:useBean>

D:<jsp:javaBean>

 

// JSP7 个 动作指令如下 :
jsp:forward: 执行页面转向,将请求的处理转发到下一个页面。
jsp:param: 用于传递参数,必须与其他支持参数曲标签一起使用。
jsp:include: 用于动态引入一个 JSP 页面。
jsp:pugin: 用于下载 JavaBean 或 Applet 到客户端执行。
jsp:useBean: 使用 JavaBean。
jsp:setProperty: 修改 JavaBean 实例的属性值。
jsp:getProperty: 获取 JavaBean 实例的属性值。

 

 

21. JavaBean的属性必须声明为private,方法必须声明为( )访问类型。

A:private

B:static

C:protect

D:public

 

// JavaBean的基本条件:
1、类是公有的且是具体的,属性是私有的
2、有公有的无参构造方法
3、有能访问属性的公有的getter、setter方法

 

 

22. 下面哪一项对Servlet描述错误?(  )  

A:Servlet是一个特殊的Java类,它必须直接或间接实现Servlet接口

B:Servlet接口定义了Servlet的生命周期方法

C:当多个客户请求一个Servlet时,服务器为每一个客户启动一个进程

D:Servlet客户线程调用service方法响应客户的请求

 

// Servlet为每个用户启动的是线程,而不是进程

 

23. 关于JSP Model1模式的缺点,下列的叙述哪一项是不正确的?

A:应用是基于过程的 

B:业务逻辑和表示逻辑混合

C:软件维护和扩展困难 

D:产生较多的文件

 

24. 能在浏览器的地址栏中看到提交数据的表单提交方式是(  )

A:submit      

B:get

C:post

D:out

 

//可以在地址栏查看参数的是get方法,因为get方法传递的参数在请求头部,所以会在浏览器的地址栏显示

 

 

25. JSP的编译指令标记通常是指:( )

A:page指令、include指令和taglib指令 

B:page指令、include指令和plugin指令

C:forward指令、include指令和taglib指令

D:page指令、param指令和taglib指令

 

 

26. 下列哪个作用范围的Bean,当客户离开这个页面时,JSP引擎取消为客户该页面分配的Bean,释放他所占的内存空间

A:application

B:request

C:page

D:session

 

27.

下面是一个Servlet部署文件的片段:

 

 

<servlet>

    <servlet-name>Hello</servlet-name>

    <servlet-class>myservlet.example.FirstServlet</servlet-class>      

</servlet>

<servlet-mapping>

    <servlet-name>Hello</servlet-name>

    <url-pattern>/helpHello</url-pattern>

</servlet-mapping>

Servlet的类名是(  ) 

A:FirstServlet

B:Hello

C:helpHello

D:/helpHello

 

//<servlet-class></servlet-class>是指引入的那个包的哪个类

 

 

28. 给定TheBean类,假设还没有创建TheBean类的实例,以下哪些JSP标准动作语句能创建这个bean的一个新实例,并把它存储在请求作用域 ? (  )

A:<jsp:useBean name="myBean" type="com.example.TheBean"/> 

B:<jsp:takeBean name="myBean" type="com.example.TheBean"/> 

C:<jsp:useBean id="myBean" class="com.example.TheBean" scope="request" /> 

D:<jsp:takeBean id="myBean" class="com.example.TheBean"scope="request" />

 

//创建实例,用usebean标识,class用于标识创建那个包下的哪个类的实例

 

29. “<%=”和“%>”标记之间放置( ),可以直接输出其值。

A:变量

B:Java表达式

C:字符串

D:数字

 

//

<%! %>中声明的是全局变量,不过写前面最好
<% %>中声明的是局部变量。
<%=%>一般表达式,输出某一变量的值

 

 

30. JSP从HTML表单中获得用户输入的正确语句为 ( )

A:Request.getParameter(“ID”)

B:Reponse.getParameter(“ID”)

C:Request.getAttribute(“ID”) 

D:Reponse.getAttribute(“ID”)

 

31. 给出了如下的查询条件字符串String condition="insert book values(?,?,?,?,?)";下列哪个接口适合执行该SQL查询( )   

A:Statement

B:PrepareStatement

C:CallableStatement

D:不确定

 

// statement是需要拼接SQL语句的,而preparStatement是可以通过占位符“?”来设置参数的

 

 

32.

下面是Servlet调用的一种典型代码:

 

 

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="java.sql.*" %>

<html>

    <body bgcolor=cyan>

        <a href="helpHello">访问FirstServlet</a>

    </body>

</html>

该调用属于下述哪种。( )

A:url直接调用

B:超级链接调用

C:表单提交调用

D:jsp:forward调用

 

33. 下面关于JSP作用域对象的说法错误的是( )。    

A:request对象可以得到请求中的参数

B:session对象可以保存用户信息

C:application对象可以被多个应用共享

D:作用域范围从小到大是request、session、application

 

// application是对每一个用户都可见,但只能被本应用所享有

 

 

34. 下列变量声明在(  )范围内有效。

<%! Date dateTime;       int countNum;

%>

A:从定义开始处有效,客户之间不共享

B:在整个页面内有效,客户之间不共享

C:在整个页面内有效,被多个客户共享

D:从定义开始处有效,被多个客户共享

 

//<%! %>定义的是全局变量,所以对整个页面有效。而servlet是以线程的方式服务各个用户的,肯定不能相互之间共享之间的数据

 

 

35. 不是JSP运行必须的是()

A:操作系统

B:Java JDK

C:支持Jsp的Web服务器

D:数据库

 

36. 在JSP中为内建对象定义了4种作用范围,即Application Scope、Session Scope、Page Scope和(  )四个作用范围

A:Request Scope

B:Response Scope

C:Out  Scope

D:Writer Scope

 

// jsp内置对象的四种作用范围:

application:应用级别

session:回话级别
request:请求级别
page:当前JSP内

 

 

37. 可以在以下哪个(  )标记之间插入Java程序片?( )

A:<% 和%>

B:<% 和  /> 

C:</ 和 %>

D:<% 和  !>

 

38. 在Java Web中,Servlet从实例化到消亡是一个生命周期。下列描述正确的是()

A:init()方法是容器调用的Servlet实例的第一个方法

B:在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束Servlet就消亡了

C:在容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost方法之前,容器不会调用Servlet实例的其他方法

D:在Servlet 实例消亡之前,容器调用Servlet实例的close()方法

 

39. 对于ServletRequest接口的获取请求参数的方法的描述那一项是正确的?( )

A:getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法

B:如果一个参数key有多个值,那么getParameter(key)方法会返回空

C:如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组

D:getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String) request.getParameter(key)

 

// A.getParameter既可以接受post方法传过来的值,也可以接受get方法传过来的值
B.当一个key对应多个值,getParameter("")取得第一个值
D.getParameter返回字符串类型的数据

 

40. 关于部署到Tomcat服务器的Java Web应用程序,正确的选项有( )

A:Java Web应用程序总是打包成WAR形式部署到Tomcat服务器

B:Java Web应用程序应该部署到Tomcat服务器的server子目录中

C:每个Java Web应用程序都有一个web.xml文件

D:Java Web应用程序的根目录下不能存放任何文件,所有html、gif等文件必须存放到某一子目录中

 

//A.部署到tomcat上的java web应用程序可以打包成war包或者直接不打包

B.java web应用程序应该部署到Tomcat服务器下的webapps文件夹里

 

 

41. <title></title>标记在<head></head>标记之间,<title></title>标记之间的内容将显示到()

A:浏览器的页面上部 

B:浏览器的标题栏上

C:浏览器的状态栏中

D:浏览器的页面下部

 

42. 关于MVC架构的缺点,下列的叙述哪一项是不正确的?

A:提高了对开发人员的要求

B:代码复用率低

C:增加了文件管理的难度

D:

产生较多的文件

 

43. 下列代码中rs为查询得到的结果集,代码运行后表格的每一行有几个单元格(  )

while(rs.next()){

     out.print("<tr>");

       out.print("<td>"+rs.getString(1)+"</td>");

       out.print("<td>"+rs.getString(2)+"</td>");

       out.print("<td>"+rs.getString(3)+"</td>");

       out.print("<td>"+rs.getString("publish")+"</td>");

       out.print("<td>"+rs.getFloat("price")+"</td>");

     out.print("</tr>");    }

A:4

B:5

C:6

D:不确定

 

44. jsp的哪个指令允许页面使用者自定义标签库?( )

A:include指令

B:taglib指令

C:page指令

D:plugin指令

 

45. 以下哪个对象提供了访问和放置页面中共享数据的方式( )

A:pageContext 

B:response     

C:request      

D:session

 

46. 关于分页显示,下列的叙述哪一项是不正确的?( )

A:记录数量不足一个页面的显示量,是不可能实现分页显示的

B:程序员可以把一组数据可以用任意数量的页面显示    

C:分页显示中,记录集不必在页面跳转后重新生成

D:分页显示中页面显示的记录数可以随用户输入调整

 

//分页只与两个参数有关系,一个是每页容量是几条数据,另一个是当前是第多少页,与数量总数一点关系都没有。

 

47. 当利用request的方法获取Form中元素时,默认情况下字符编码是哪个( )

A:ISO-8859-1 

B:GB2312

C:GB3000

D:ISO-8259-1

 

48. <select>用于在表单中插入一个下拉菜单,它需与哪个标记配合使用( )

A:<list> 

B:<item>

C:<dot>

D:

<option>

 

49. JavaBean的作用范围可以是page、request、session和(  )四个作用范围中的一种

A:application

B:local

C:global

D:class

 

50. JSP中,对<jsp:setProperty>标记描述正确的是(  )。 

A:<jsp:setProperty>和<jsp:getProPerty>必须在一个JSP文件中搭配出现

B:就如同session.setAttribute()一样,来设计属性/值对

C:<jsp:useBean>动作一起使用,来设置bean的属性值

D:就如同request.setAttribute()一样,来设置属性/值对

 

//<jsp:setProperty>用来设置已经实例化的Bean对象的属性

 

51. 可以利用request对象的哪个方法获取客户端的表单信息( )

A:request.getParameter()     

B:request.outParameter()

C:request.writeParameter()

D:request.handlerParameter()

 

52.

当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字(

A:public 

B:static        

C:synchronized      

D:private

 

53. 下面哪一项对Servlet、JSP的描述错误?(  ) 

A:HTML、Java和脚本语言混合在一起的程序可读性较差,维护起来较困难

B:JSP技术是在Servlet之后产生的,它以Servlet为核心技术,是Servlet技术的一个成功应用

C:当JSP页面被请求时,JSP页面会被JSP引擎翻译成Servelt字节码执行

D:一般用JSP来处理业务逻辑,用Servlet来实现页面显示

 

54. 下列那个属性为单元格向右打通的列数,用于合并单元格。()

A:rowspan 

B:colspan

C:height 

D:width

 

55. 用来在网页中显示图形的标记为(

A:<image src="文件名" ...>

B:<img  src="文件名"  ... >

C:<center src="文件名" ... > 

D:<picture src="文件名" ... > 

 

56. <jsp:useBean id="bean的名称" scope="bean的有效范围" class="包名.类名"/>动作标记中,scope的值不可以是( )。

A:page

B:request    

C:session    

D:response

 

57. 在MVC设计模式体系结构中,我们目前所学的知识中( )是实现控制器的首选方案。

A:JavaBean

B:Servlet

C:JSP

D:HTML

 

58. 使用格式<jsp:setProperty name="beanid"  property="bean的属性" value = "<%= expression %>" />给Bean的属性赋值,expression的数据类型和bean的属性类型

A:必须一致

B:可以不一致

C:必须不同

D:无要求

 

59. 当多个用户请求同一个JSP页面时,Tomcat服务器为每个客户启动一个()

A:进程

B:线程

C:程序

D:服务

 

60. Form表单的method属性能取下列哪项的值(  )

A:submit 

B:puts        

C:post        

D:out

 

61. JSP页面可以在以下哪个(  )标记之间插入变量与方法声明?( )

A:<% 和%>  

B:<%! 和%>

C:</ 和 %>

D:<% 和  !>

 

//<%! %>中声明的是全局变量或方法

<% %>中声明的是局部变量,不能声明方法。

<%=%>一般表达式,输出某一变量的值

 

 

62. 一个典型的HTTP请求消息包括请求行、多个请求头和(

A:响应行 

B:信息体

C:响应行

D:响应头

 

63. JSP页面可以在“<%=”和“%>”标记之间放置Java表达式,直接输出Java表达式的值。组成“<%=”标记的各字符之间( ) 

A:可以有空格

B:不可以有空格

C:必须有空格

D:不确定

 

 

64. 能够替代<字符的替代字符是()?

A:<

B:>;

C:<

D: 

 

65. JSP页面中request.getParamter(String )得到的数据,其类型是(

A:Double

B:int

C:String

D:Integer

 

66. 超级链接是互联网的灵魂,下面哪个是正确的链接标记(

A:<a  href="http://www.sina.com"  " title="新浪网" >新浪网</a>

B:<a  target="http://www.sina.com" " title="新浪网" >新浪网</a>

C:<a  href="新浪网"  title="新浪网" > http://www.sina.com </a>

D:<a  target="新浪网"  title="新浪网" >http://www.sina.com</a>

 

67. 下面哪一项不是JDBC的工作任务?( )

A:与数据库建立连接    

B:操作数据库,处理数据库返回的结果

C:在网页中生成表格

D:向数据库管理系统发送SQL语句

 

 

68. 下列哪个作用范围的bean,请求响应完成则该Bean即被释放,不同客户的Bean互不相同。( )

A:application

B:request

C:page

D:session

 

69. 关于JSP Model2模式的优点,下列的叙述哪一项是不正确的?

A:模型具有较高的通用性

B:

Servlet对象擅长控制

C:分离了视图层和业务层

D:M、VC之间具有较高的耦合性

 

70. 包含Servlet发回到客户端信息的ServletResponse对象是由(  )创建的

A:客户端的浏览器

B:Web服务器的HTTP引擎

C:Web服务器的Servlet容器

D:Servlet对象

 

71. 阅读下面代码片段:JavaBeanClass bean=new JavaBeanClass(parameter);request.setAttribute("keyword",bean);该段代码创建的Bean,下列叙述哪项是正确的?(  ) 

A:Request 周期的Bean

B:Application 周期的Bean

C:Session

D:Page周期的Bean

 

72. JSP的Page编译指令的属性Language的默认值是:( )

A:Java 

B:C

C:C#

D:SQL

 

73. URL是Internet中资源的命名机制,URL由三部分构成()

A:协议、主机DNS名或IP地址和文件名

B:主机、DNS名或IP地址和文件名、协议

C:协议、文件名、主机名

D:协议、文件名、IP地址

 

 

二、 简答(每小题5分,共25分)

1. 详述MVC 中M、V、C的作用及其相互关系。

// M是指javabean主要用于处理业务逻辑V是指视图层主要用于在客户端展示信息,与用户交互C是控制层,接收客户端请求。控制层接收视图层传过来的请求,根据请求调用javabean处理业务逻辑,并根据处理结果控制页面的跳转 

 

 

 

2. 有人说:JSP是Servlet的高级实现,在MVC中,控制器部分应该用JSP实现,请您回答JSP和servlet的异同

 

//相同点:
1)两者都是基于Java的技术,所以都继承了Java的所有特性(跨平台、多线程等 ),都可以使用Java强大的API。
2)两者工作方式相似:JSP代码先被JSP容器转换为Servlet代码再编译为类。
3)两者在J2EE体系结构中的工作层次相同,都负责与客户端的连接。
不同点:

1. 编程方式不同。Servlet是一些运行于Web服务器端的Java小程序;而JSP是脚本,编写起来更简单容易。

2. 应用目的不同。Servlet主要用于从客户端接收请求信息,而JSP主要负责将服务器端信息传送 到客户端

 

 

 

 

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

//动态包含是在实际用到被包含页面的时候才去加载被包含的页面,包含和被包含页面被编译为2servlet文件,会检查所含文件中的变化。
静态包含是直接把包含的页面信息添加到自己页面,只被编译成一个jsp页面,被包含的页面被编译到包含它的页面中,不会检查所含文件的变化 

 

 

4. 简单回答Servlet的工作过程。

 

//1) 客户机将请求发送到服务器。
2) 服务器上的Web容器实例化Servlet,调用init()方法,并为Servlet进程创建线程。Servlet是在出现第一个请求时装入的,在服务器关闭之前不会卸载它。
3) Web容器将请求信息发送到Servlet 调用servce()方法。
4) Servlet创建一个响应,并将其返回到Web容器。
5) Web容器将响应发回给客户机。
6) 服务器关闭或Servlet空闲时间超过一定限度时,调用destroy方法退出。

原创粉丝点击