笔试_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、V、C之间具有较高的耦合性
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的区别?
//动态包含是在实际用到被包含页面的时候才去加载被包含的页面,包含和被包含页面被编译为2个servlet文件,会检查所含文件中的变化。
静态包含是直接把包含的页面信息添加到自己页面,只被编译成一个jsp页面,被包含的页面被编译到包含它的页面中,不会检查所含文件的变化
4. 简单回答Servlet的工作过程。
//(1) 客户机将请求发送到服务器。
(2) 服务器上的Web容器实例化Servlet,调用init()方法,并为Servlet进程创建线程。Servlet是在出现第一个请求时装入的,在服务器关闭之前不会卸载它。
(3) Web容器将请求信息发送到Servlet 调用servce()方法。
(4) Servlet创建一个响应,并将其返回到Web容器。
(5) Web容器将响应发回给客户机。
(6) 服务器关闭或Servlet空闲时间超过一定限度时,调用destroy方法退出。
- 笔试_jsp试题(1)
- 笔试_jsp试题(2)
- 笔试和面试题(1)
- 笔试_HTML试题(1)
- 1day _jsp
- JSP学习笔记(2)_JSP各种元素(1)
- c/c++笔试面试题(1)
- c/c++笔试面试题(1)
- 程序员笔试面试题(1)
- 多线程笔试面试题(1)
- 图像处理笔试面试题(1)
- 嵌入式笔试试题1
- 嵌入式笔试试题1
- 嵌入式笔试试题1
- 笔试面试题1
- 笔试面试题【1-10】
- 【前端笔试/面试题】1
- 笔试以及面试题1
- 2.2数字音频压缩标准&2.3声卡与电声设备
- KMP算法(java实现)
- CodeForces #431 Div. 2 849C From Y to Y 贪心 技巧题
- CSS3 鲜为人知的属性-webkit-tap-highlight-color的理解
- 学习Tensorflow遇到的一些不懂函数的学习
- 笔试_jsp试题(1)
- Django学习笔记(四)--admin的配置与应用
- Python学习——Django中的url
- CSP之 Markdown java
- 关于freertos移植到stm32出错,程序直接跳到HardFault_Handler的问题。
- Git clone 报“ I don't handle protocol 'https”
- SVM参数详解
- 【机器学习 吴恩达】CS229课程笔记notes1翻译-Part III广义线性模型
- c++学习开始