jsp练习题

笔试 专栏收录该内容
20 篇文章 1 订阅

一、选择题

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.* " />

参考答案:A
解析:
id为这个bean声明一个名字
class指引入哪个包下的哪个类
scope属性的各个设置值的意义和作用:page表示将JavaBean实例对象存储在PageContext对象中,作用范围是当前JSP页面有效。

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

参考答案:B

3.下列哪一项不是Servlet中使用的方法? ( )
A:doGet()
B:doPost()
C:service()
D:close()

参考答案:D
解析:
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

参考答案:B

5.关于JavaBean,下列的叙述哪一项是不正确的?( )
A:JavaBean的类必须是具体的和公共的,并且具有无参数的构造器
B:JavaBean的类属性是私有的,要通过公共方法进行访问
C:JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册
D:JavaBean属性和表单控件名称能很好地吻合,得到表单提交的参数

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

6.当response的状态行代码为哪个时,表示用户请求的资源不可用
A:101
B:202
C:303
D:404

参考答案:D
解析:
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:不确定

参考答案:A
解析:
Class.forName()是加载对应的驱动,本题显然是Oracle数据库的

8.以下那一项不是Servlet用于保持会话的技术:( )
A:Cookie
B:TCP/IP三次握手
C:HTML隐藏表单域
D:HTTP session

参考答案:B

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

参考答案:B
解析:
include指令是将其他JSP页面加入当前界面。这样做的好处是有助于实现JSP页面的模块化设计,比如页眉页脚分别用两个JSP页面展示。

10.当用户请求jsp页面时,JSP引擎就会执行该页面的字节码文件响应客户的请求,执行字节码文件的结果是()
A:发送一个JSP源文件到客户端
B:发送一个Java文件到客户端
C:发送一个HTML页面到客户端
D:什么都不做

参考答案:C

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

参考答案:B
解析:
本题考查如何将字符串转为其他基本数据类型。
转换成Int型:int/Integer num = Integer.parseInt(String str);
转换成long型:Long/long num = Long.parseLong(String str);
转换成short型:short/Short num = Short.parseShort(String str);
转换成float型:float/Float num = Float.parseFloat(String str);
转换成double型:double/Double num = Double.parseDouble(String str);

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=数据库名”

参考答案:B
解析:
URL的通常格式为:jdbc:(哪种数据库)://数据库地址:数据库端口号/数据库名字?编码格式

13.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp动作指令?( )
A:<jsp:useBean>
B:<jsp:setProperty>
C:<jsp:getProperty>
D:<jsp:setParameter>

参考答案:D
解析:
A:创建一个Javabean实例
B:setProperty 设置JavaBean实例的属性值
C:getProperty 获取JavaBean实例的属性值
D:不存在这条指令

JSP之七大动作:
jsp:include:在页面被请求的时候引入一个文件。
jsp:useBean:寻找或者实例化一个 JavaBean。
jsp:setProperty:设置 JavaBean 的属性。
jsp:param:传递参数
jsp:getProperty:输出某个 JavaBean 的属性。
jsp:forward:把请求转到一个新的页面。
jsp:plugin:根据浏览器类型为 Java 插件生成 OBJECT 或 EMBED 标记

14.下列动态网页和静态网页的根本区别描述错误的是()
A:静态网页服务器端返回的HTML文件是事先存储好的
B:动态网页服务器端返回的HTML文件是程序生成的
C:静态网页文件里只有HTML标记,没有程序代码
D:动态网页中只有程序,不能有HTML代码

参考答案:D

15.阅读下面代码片段:

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

关于该段代码的作用,下列叙述哪项是正确的?( )
A:页面重定向到a.jsp页面
B:将请求转发到a.jsp页面
C:从a.jsp定向到当前页面
D:从a.jsp转发到当前页面

参考答案:B

16.下列那个调用数据类型转换方法会发生NumberFormatException异常?( )
A:Long.parseLong(“1234”)
B:Integer.parseInt(“1234”)
C:Double.parseDouble(“123.45”)
D:Integer.parseInt(“123a”)

参考答案:D

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:一个整数

参考答案:A
解析:
executeUpdate返回值为受影响的行数

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

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

语句,得到的结果集rs的列数为( )
A:4
B:5
C:6
D:不确定

参考答案:B
解析:
executeQuery查询了表的几列,所获得的结果集就有几列

19.Tomcat服务器的默认端口号是?()
A:80
B:8080
C:21
D:2121

参考答案:B
解析:
默认是8080,可以在tomcat的conf/server.xml文件中修改:找到
< Connector port=“8080” protocol="HTTP/1.1"connectionTimeout="20000"redirectPort=“8443” />
-----8080的地方可以自己设置一个端口号。

20.下列哪一项=不属于JSP动作指令标记?( )
A:< jsp:param>
B:< jsp:plugin>
C:< jsp:useBean>
D:< jsp:javaBean>

参考答案:D
解析:
D:不存在这条动作指令

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

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

22.下面哪一项对Servlet描述错误?( )
A:Servlet是一个特殊的Java类,它必须直接或间接实现Servlet接口
B:Servlet接口定义了Servlet的生命周期方法
C:当多个客户请求一个Servlet时,服务器为每一个客户启动一个进程
D:Servlet客户线程调用service方法响应客户的请求

参考答案:C
解析:
C:Servlet为每个用户启动的是线程,而不是进程

23.关于JSP Model1模式的缺点,下列的叙述哪一项是不正确的?
A:应用是基于过程的
B:业务逻辑和表示逻辑混合
C:软件维护和扩展困难
D:产生较多的文件

参考答案:D

24.能在浏览器的地址栏中看到提交数据的表单提交方式是( )
A:submit
B:get
C:post
D:out

参考答案:B
解析:
可以在地址栏查看参数的是get方法,因为get方法传递的参数在请求头部,所以会在浏览器的地址栏显示

25.JSP的编译指令标记通常是指:( )
A:page指令、include指令和taglib指令
B:page指令、include指令和plugin指令
C:forward指令、include指令和taglib指令
D:page指令、param指令和taglib指令

参考答案:A

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

参考答案:D
解析:
JavaBean的作用范围其实是跟jsp的作用范围一样的
A:JavaBean被创建后会一直存在application中,直到服务器关闭才会释放
B:请求作用域,就是客户端的一次请求。比如访问某个页面,就是一次请求。页面访问结束,该页面的request就结束了
C:只在一个JSP页面有效。
D:客户打开浏览器并连接到服务器开始,到关闭浏览器断开服务器连接为止

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

参考答案:A
解析:
< 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" />

参考答案:C
解析:
创建实例,用usebean标识,class用于标识创建那个包下的哪个类的实例

29.在“<%=”和“%>”标记之间放置( ),可以直接输出其值。
A:变量
B:Java表达式
C:字符串
D:数字

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

30.JSP从HTML表单中获得用户输入的正确语句为 ( )
A:Request.getParameter(“ID”)
B:Reponse.getParameter(“ID”)
C:Request.getAttribute(“ID”)
D:Reponse.getAttribute(“ID”)

参考答案:A
解析:
request对象包含的是有关请求,response对象包含的是服务器向浏览器的反馈结果。对于此题,是获得用户提交的表单,肯定用request。
又因为getAttribute是获得属性,getParameter是获得参数。用户提交的表单肯定是参数啦

31.给出了如下的查询条件字符串String condition=“insert book values(?,?,?,?,?)”;下列哪个接口适合执行该SQL查询( )
A:Statement
B:PrepareStatement
C:CallableStatement
D:不确定

参考答案:B
解析:
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调用

参考答案:B
解析:
< a> 标签的 href 属性用于指定超链接目标的 URL。

33.下面关于JSP作用域对象的说法错误的是( )。
A:request对象可以得到请求中的参数
B:session对象可以保存用户信息
C:application对象可以被多个应用共享
D:作用域范围从小到大是request、session、application

参考答案:C
解析:
application是对每一个用户都可见,但只能被本应用所享有

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

<%! Date dateTime;       int countNum;%>

A:从定义开始处有效,客户之间不共享
B:在整个页面内有效,客户之间不共享
C:在整个页面内有效,被多个客户共享
D:从定义开始处有效,被多个客户共享

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

35.不是JSP运行必须的是()
A:操作系统
B:Java JDK
C:支持Jsp的Web服务器
D:数据库

参考答案:D

36.在JSP中为内建对象定义了4种作用范围,即Application Scope、Session Scope、Page Scope和( )四个作用范围
A:Request Scope
B:Response Scope
C:Out Scope
D:Writer Scope

参考答案:A
解析:
jsp内置对象的四种作用范围:
application:应用级别
session:回话级别
request:请求级别
page:当前JSP内

37.可以在以下哪个( )标记之间插入Java程序片?( )
A:<% 和 %>
B:<% 和 />
C:</ 和 %>
D:<% 和 !>

参考答案:A

38.在Java Web中,Servlet从实例化到消亡是一个生命周期。下列描述正确的是()
A:init()方法是容器调用的Servlet实例的第一个方法
B:在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束Servlet就消亡了
C:在容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost方法之前,容器不会调用Servlet实例的其他方法
D:在Servlet 实例消亡之前,容器调用Servlet实例的close()方法

参考答案:A

解析:
Servlet的生命周期包含了下面4个阶段:

1.加载和实例化
Servlet容器负责加载和实例化Servlet。当Servlet容器启动时,或者在容器检测到需要这个Servlet来响应第一个请求时,创建Servlet实例。
当Servlet容器启动后,它必须要知道所需的Servlet类在什么位置,Servlet容器可以从本地文件系统、远程文件系统或者其他的网络服务中通过类加载器加载Servlet类,成功加载后,容器创建Servlet的实例。因为容器是通过Java的反射API来创建Servlet实例,调用的是Servlet的默认构造方法(即不带参数的构造方法),所以我们在编写Servlet类的时候,不应该提供带参数的构造方法。

2.初始化
在Servlet实例化之后,容器将调用Servlet的init()方法初始化这个对象。初始化的目的是为了让Servlet对象在处理客户端请求前完成一些初始化的工作,如建立数据库的连接,获取配置信息等。对于每一个Servlet实例,init()方法只被调用一次。
在初始化期间,Servlet实例可以使用容器为它准备的ServletConfig对象从Web应用程序的配置信息(在web.xml中配置)中获取初始化的参数信息。在初始化期间,如果发生错误,Servlet实例可以抛出ServletException异常或者UnavailableException异常来通知容器。ServletException异常用于指明一般的初始化失败,例如没有找到初始化参数;而
UnavailableException异常用于通知容器该Servlet实例不可用。例如,数据库服务器没有启动,数据库连接无法建立,Servlet就可以抛出UnavailableException异常向容器指出它暂时或永久不可用。

3.请求处理
Servlet容器调用Servlet的service()方法对请求进行处理。要注意的是,在service()方法调用之前,init()方法必须成功执行。在service()方法中,Servlet实例通过ServletRequest对象得到客户端的相关信息和请求信息,在对请求进行处理后,调用ServletResponse对象的方法设置响应信息。在service()方法执行期间,如果发生错误,Servlet实例可以抛出ServletException异常或者UnavailableException异常。如果UnavailableException异常指示了该实例永久不可用,Servlet容器将调用实例的destroy()方法,释放该实例。此后对该实例的任何请求,都将收到容器发送的HTTP 404(请求的资源不可用)响应。如果UnavailableException异常指示了该实例暂时不可用,那么在暂时不可用的时间段内,对该实例的任何请求,都将收到容器发送的HTTP 503(服务器暂时忙,不能处理请求)响应。

4.服务终止
当容器检测到一个Servlet实例应该从服务中被移除的时候,容器就会调用实例的destroy()方法,以便让该实例可以释放它所使用的资源,保存数据到持久存储设备中。当需要释放内存或者容器关闭时,容器就会调用Servlet实例的destroy()方法。在destroy()方法调用之后,容器会释放这个Servlet实例,该实例随后会被Java的垃圾收集器所回收。如果再次需要这个Servlet处理请求,Servlet容器会创建一个新的Servlet实例。

在整个Servlet的生命周期过程中,创建Servlet实例、调用实例的init()和destroy()方法都只进行一次,当初始化完成后,Servlet容器会将该实例保存在内存中,通过调用它的service()方法,为接收到的请求服务。

39.对于ServletRequest接口的获取请求参数的方法的描述那一项是正确的?( )
A:getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法
B:如果一个参数key有多个值,那么getParameter(key)方法会返回空
C:如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组
D:getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String) request.getParameter(key)

参考答案:C
解析:
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等文件必须存放到某一子目录中

参考答案:C
解析:
A.部署到tomcat上的java web应用程序可以打包成war包或者直接不打包
B.java web应用程序应该部署到Tomcat服务器下的webapps文件夹里

41.关于MVC架构的缺点,下列的叙述哪一项是不正确的?
A:提高了对开发人员的要求
B:代码复用率低
C:增加了文件管理的难度
D:产生较多的文件

参考答案:B

42.下列代码中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:不确定

参考答案:B
解析:
因为每一次循环都会产生一行(< tr>),每一行里有五个< td>。所以会有5个单元格

43.jsp的哪个指令允许页面使用者自定义标签库?( )
A:include指令
B:taglib指令
C:page指令
D:plugin指令

参考答案:B
解析:
include指令:是将其他完整的JSP页面加入到当前jsp页面中来,好处是便于JSP的模块化设计,比如页眉、页脚分别用两个JSP页面展示。
page指令:<%@ page 属性1="…" 属性2="…" …%>,应用于整个JSP页面,定义JSP页面的一些属性和属性值;
taglib指令:用来声明页面中使用的自定义的标签库。
plugin指令:主要用于下载服务器端的 JavaBean 或 Applet 到客户端执行。

44.以下哪个对象提供了访问和放置页面中共享数据的方式( )
A:pageContext
B:response
C:request
D:session

参考答案:D
解析:
此题考查jsp的内置对象
A:pageContext对象提供了对jsp页面内所有对象及名字空间的访问,虽然它可以访问数据,但是它不能设置数据,所以错误
B:response对象包含服务器的响应内容
C:request对象包含用户的请求内容
D:session对象用于储存和检索会话中的属性值,可以通过session设置和获取属性值,以达到数据共享的目的

45.关于分页显示,下列的叙述哪一项是不正确的?( )
A:记录数量不足一个页面的显示量,是不可能实现分页显示的
B:程序员可以把一组数据可以用任意数量的页面显示
C:分页显示中,记录集不必在页面跳转后重新生成
D:分页显示中页面显示的记录数可以随用户输入调整

参考答案:A
解析:
分页只与两个参数有关系,一个是每页容量是几条数据,另一个是当前是第多少页,与数量总数一点关系都没有。所以A错。
C可以通过技术实现

46.当利用request的方法获取Form中元素时,默认情况下字符编码是哪个( )
A:ISO-8859-1
B:GB2312
C:GB3000
D:ISO-8259-1

参考答案:A
解析:
request.setCharacterEncoding() : 设置从request对象中取的值的编码方式。指定后可以通过getParameter()则直接获得正确的字符串,如果不指定,则默认使用iso8859-1编码。

47.< select>用于在表单中插入一个下拉菜单,它需与哪个标记配合使用( )
A:< list>
B:< item>
C:< dot>
D:< option>

参考答案:D

48.avaBean的作用范围可以是page、request、session和( )四个作用范围中的一种
A:application
B:local
C:global
D:class

参考答案:A

49.在JSP中,对<jsp:setProperty>标记描述正确的是( )。
A:< jsp:setProperty>和< jsp:getProPerty>必须在一个JSP文件中搭配出现
B:就如同session.setAttribute()一样,来设计属性/值对
C:和< jsp:useBean>动作一起使用,来设置bean的属性值
D:就如同request.setAttribute()一样,来设置属性/值对

参考答案:C
解析:
< jsp:setProperty>用来设置已经实例化的Bean对象的属性

50.可以利用request对象的哪个方法获取客户端的表单信息( )
A:request.getParameter()
B:request.outParameter()
C:request.writeParameter()
D:request.handlerParameter()

参考答案:A
解析:
request对象包含的是客户端的请求数据,所以客户端提交的表单信息一定是存放在request对象里。信息是参数,所以用getParameter。

51.当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字( )
A:public
B:static
C:synchronized
D:private

参考答案:C
解析:可以参考此博主这篇文章

https://www.cnblogs.com/GnagWang/archive/2011/02/27/1966606.html

52.下面哪一项对Servlet、JSP的描述错误?( )
A:HTML、Java和脚本语言混合在一起的程序可读性较差,维护起来较困难
B:JSP技术是在Servlet之后产生的,它以Servlet为核心技术,是Servlet技术的一个成功应用
C:当JSP页面被请求时,JSP页面会被JSP引擎翻译成Servelt字节码执行
D:一般用JSP来处理业务逻辑,用Servlet来实现页面显示

参考答案:D
解析:
D:一般用Servlet来处理业务逻辑,用JSP来实现页面显示

53.< jsp:useBean id=“bean的名称” scope=“bean的有效范围” class=“包名.类名”/>动作标记中,scope的值不可以是( )。
A:page
B:request
C:session
D:response

参考答案:D

54.使用格式< jsp:setProperty name=“beanid” property=“bean的属性” value = “<%= expression %>” />给Bean的属性赋值,expression的数据类型和bean的属性类型
A:必须一致
B:可以不一致
C:必须不同
D:无要求

参考答案:A

55.Form表单的method属性能取下列哪项的值( )
A:submit
B:puts
C:post
D:out

参考答案:C

56.一个典型的HTTP请求消息包括请求行、多个请求头和( )
A:响应行
B:信息体
C:响应行
D:响应头

参考答案:B

57.JSP页面可以在“<%=”和“%>”标记之间放置Java表达式,直接输出Java表达式的值。组成“<%=”标记的各字符之间( )
A:可以有空格
B:不可以有空格
C:必须有空格
D:不确定

参考答案:B
解析:
<%= %>是jsp的特定标识,不能改变其字符顺序以及随意插入任何字符

58.JSP页面中request.getParamter(String )得到的数据,其类型是( )
A:Double
B:int
C:String
D:Integer

参考答案:C
解析:
getParamter()括号里放的是要取的参数的数据类型。所以放什么类型就会取什么类型。

59.下面哪一项不是JDBC的工作任务?( )
A:与数据库建立连接
B:操作数据库,处理数据库返回的结果
C:在网页中生成表格
D:向数据库管理系统发送SQL语句

参考答案:C
解析:
JDBC只负责操作数据库中的数据,并不负责将数据展示出来。

60.下列哪个作用范围的bean,请求响应完成则该Bean即被释放,不同客户的Bean互不相同。( )
A:application
B:request
C:page
D:session

参考答案:B

解析:
jsp内置对象的四种作用范围:
application:只要设置一次,则所有的页面窗口都可以取得数据。这里的值将会保存在服务器上,所以每一个用户都可以看见。

session:只要设置上去,则不管是什么跳转,都可以取得属性,主要用于验证用户是否登陆。

request:将属性保存在一次请求范围之内:前提:必须使用服务器端跳转:
< jsp:forward/> 应用点:MVC设计模式、Struts、 Webwork

page:在JSP中设置一个页的属性范围,必须通过pageContext完成,PageContext属性范围是最重要的JSP属性之一,但是如果使用纯粹的JSP代码开发,此属性显示不出用处,其发挥作用在 Struts ,WebWork 中

61.关于JSP Model2模式的优点,下列的叙述哪一项是不正确的?
A:模型具有较高的通用性
B:Servlet对象擅长控制
C:分离了视图层和业务层
D:M、V、C之间具有较高的耦合性

参考答案:D

62.包含Servlet发回到客户端信息的ServletResponse对象是由( )创建的
A:客户端的浏览器
B:Web服务器的HTTP引擎
C:Web服务器的Servlet容器
D:Servlet对象

参考答案:C

63.阅读下面代码片段:JavaBeanClass bean=new JavaBeanClass(parameter);request.setAttribute(“keyword”,bean);该段代码创建的Bean,下列叙述哪项是正确的?( )
A:Request 周期的Bean
B:Application 周期的Bean
C:Session
D:Page周期的Bean

参考答案:A

64.JSP的Page编译指令的属性Language的默认值是:( )
A:Java
B:C
C:C#
D:SQL

参考答案:A

65.URL是Internet中资源的命名机制,URL由三部分构成()
A:协议、主机DNS名或IP地址和文件名
B:主机、DNS名或IP地址和文件名、协议
C:协议、文件名、主机名
D:协议、文件名、IP地址

参考答案:A
解析:
URL是Uniform Resource Location的缩写,译为“统一资源定位符”。通俗地说,URL是Internet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,特别是著名的Mosaic。采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。
URL的格式URL的格式由下列三部分组成:
第一部分是协议(或称为服务方式);
第二部分是存有该资源的主机IP地址(有时也包括端口号);
第三部分是主机资源的具体地址。,如目录和文件名等。
第一部分和第二部分之间用“://”符号隔开,第二部分和第三部分用“/”符号隔开。第一部分和第二部分是不可缺少的,第三部分有时可以省略。

二、 简答

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的区别?
动态包含是在实际用到被包含页面的时候才去加载被包含的页面,包含和被包含页面被编译为2个servlet文件,会检查所含文件中的变化。

静态包含是直接把包含的页面信息添加到自己页面,只被编译成一个jsp页面,被包含的页面被编译到包含它的页面中,不会检查所含文件的变化

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

  • 8
    点赞
  • 0
    评论
  • 72
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:编程工作室 设计师:CSDN官方博客 返回首页

打赏作者

KuoChingYang

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值