JDBC&Web测试题和答案 下载本文

内容发布更新时间 : 2024/11/17 18:25:51星期一 下面是文章的全部内容请认真阅读。

1. 典型的JDBC程序按 顺序编写。-------DBECFA A. 释放资源 D. 注册JDBC Driver B. 获得与数据库的物理连接 E. 创建不同类型的Statement C. 执行SQL命令 F. 如果有结果集, 处理结果集

2. JDBC驱动程序的种类有 。-------C

A. 两种 B. 三种 C. 四种 D. 五种 第一种驱动:用系统的ODBC. 第二种驱动:一半JAVA一半C。

第三种驱动:驱动用纯JAVA,在数据库外边挂了一个虚拟机。

第四种驱动:修改数据库,数据库里面有一个虚拟机。本地协议纯JAVA驱动。

3. 执行同构的SQL,用 C ; 执行异构的SQL用B ;调用存储进程或函数用 A 。 A. CallableStatement B. Statement C. PreparedStatement

4. 接口Statement中定义的execute方法的返回类型是 C , 代表的含义是 E ; executeQuery方法返回的类型是 A ; executeUpdate返回的类型是 B , 代表的含义是 D 。

A. ResultSet C. boolean E. 有无ResultSet返回 B. int D. 受影响的记录数量

5. JDBC编程的异常类型分为 AC。 A. SQLException C. SQLWarning E. SQLTruncation B. SQLError D. SQLFatal

6. 在接口Connection中定义了方法setTransactionIsolation, 它使用一些常量作为参数指定控制数据库并发操作的隔离级别,设置隔离层次E 只解决了dirty reads; 设置隔离层次 D 只可以做到repeatable reads; 设置隔离层次 C 可以解决phantom reads.

A. TRANSACTION_NONE D. TRANSACTION_REPEATABLE_READ B. TRANSACTION_READ_UNCOMMITED E. TRANSACTION_READ_COMMITED C. TRANSACTION_SERIALIZABLE

7. 如果要限制某个查询语句返回的最多的记录数,可以通过调用Statement的方法 C 来实现。 A. setFetchSize B. setMaxFieldSize C. setMaxRows

8. 以下哪些是定义在ResultSet中用于Cursor定位的方法:ABCEF A. next() //此方法是使游标向下一条记录移动。

B. beforeFirst() //把游标移动到第一条记录的前面。 C. afterLast() //把游标移动到最后一条记录的后面。 D. isBeforeFirst()//用来判断的,不是定位 E. absolute(int) //定位到指定的记录位置 F. relative(int) //相对定位方法

9. 接口RowSet继承了接口 B 。可以调用RowSet中的方法 D 来填充其数据区。 A. Statement B. ResultSet C. update D. populate

10. DataSource是 B 类型,可以调用DataSource的方法 D 获得数据库连接。 A. Delegate C. connect B. Factory D. getConnection

11. 基于HTTP协议的Servlet通常继承 C , 也可以继承 B 。这些类型都实现了接口 A 。 A. javax.servlet.Servlet

B. javax.servlet.GenericServlet C. javax.servlet.http.HttpServlet javax.servlet.Servlet

javax.servlet.GenericServlet javax.servlet.http.HttpServlet

12. 我们实现的基于HTTP协议的Servlet的服务方法签名正确的有 BCD 。

A. public void doGet(ServletRequest req, ServletResponse res) throws IOException, ServletException// 参数不对

B. public void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException

C. public void service(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException

D. public void service(ServletRequest req, ServletResponse res) throws IOException, ServletException

13. 在Servlet中要输出内容,使用HttpServletResponse的方法 D 设置内容,对于文本类型调用方法 K 获得一个 L 的输出流, 对于二进制类型调用 F 获得 J的输出流。调用HttpServletRequest的方法 I 解析有名参数,调用 E 获得一个 A 的输入流。在Servlet中也可以调用BC 的方法 G 获得 H , 将请求的处理权交给一个新的资源。

A. ServletInputStream G. getRequestDispatcher B. ServletContext H. RequestDispatcher C. HttpServletRequest I. getParameter D. setContentType J. ServeltOutputStream E. getInputStream K. getWriter F. getOutputStream L. PrintWriter

14. 控制一个Servlet的生命周期的方法有 ABC 。其中 C 在所有的请求到来之前调用, A 在撤消应用或关闭web container时调用。Servlet通常只有一个实例,被所有的访问者共享,因此要注意资源的同步。

A. destroy B. service C. init

15. 在Java Web开发中,跟踪客户状态的手段可通过 BF ; 增加一个新的cookie, 调用 E 的 C 方法;要在服务器端查询cookie, A 的 D 方法。Session的类型是 H, 获得session的途径是调用 A 的方法 G 。

A. HttpServletRequest D. getCookies G. getSession B. Session E. HttpServletResponse H. HttpSession C. addCookie F. Cookie

16. 将session与浏览器联系起来的手段有Cookie和URL rewriting, 所用Cookie变量缺省为 B , URL rewriting的缺省参数是 A 。URL rewriting通过调用HttpServletResponse的 D 重写重定向资源,调用 C 重写一般资源。

A. jsessionid C. encodeURL B. JSESSIONID D. encodeRedirectURL

17. Java Web应用中往往通过设置不同作用域的属性来达到通讯的目的。如果某个对象只在同一请求中共享,通过调用 B 的setAttribute方法设置属性, 也可通过 C 事件侦听器实现;如果在不同的请求中传递某一客户的状态,调用 A 的setAttribute方法设置属性,也可通过 F 事件侦听器实现;如果某个对象被所有的访问者共享,把这个对象设置为 D 的属性即可,也可通过 E 事件侦听器实现。

A. HttpSession D. ServletContext B. HttpServletRequest E. ServletContextListener C. ServletRequestListener F. HttpSessionListener

18. Filter必须实现接口 I, 它只有一个实例,控制生命周期的方法是 FGH ; 在提供服务之前被调用方法的参数类型是 J ;服务方法的参数类型是 BCA 。如果要截取请求,我们会提供 E 类型的封装类;如果截取应答,我们会提供 D 类型的封装类,截取应答的标志是在调用 A 类型对象的 G 方法后继续有代码处理应答。

A. FilterChain F. init B. ServletRequest G. doFilter C. ServletResponse H. destroy D. HttpServletResponseWrapper I. Filter E. HttpServletRequestWrapper J. FilterConfig

19. 在directive page中, B 属性可反复出现, ac 属性的却省值为true, E 属性的值指向处理异常的页面,D表示激活EL。

A. autoFlush B. import C. session

D. isELIgnored=false E. errorPage

20. 以下 AB 是JSP中正确的注释: A. <%--comments--%> B. <% //comments %> C.

D. <%! /* comments */ %> JSP中的注释

JSP注释:<%-- … --%>,翻译阶段消失。 JAVA注释://、/**/、/***/,编译阶段消失。 HTML注释:, 不会消失。

21. 以下 AB 是错误的:

A. <%! int i = 10; int j = 10; i += j; %>

B. <% int getHash(String str) { return str.hashCode(); } %>

C. <%! class A { void print(){System.out.println(“in A”);}} %>//内部类

22. 在JSP中有很多隐含变量,request的类型是 C , response的类型是 I , page的类型是E , pageContext的类型是B , session的类型是D , application的类型是 G , config的类型是 F , out的类型是 H , exception的类型是 A 。

A. java.lang.Throwable

B. javax.servlet.jsp.PageContext

C. javax.servlet.http.HttpServletRequest D. javax.servlet.http.HttpSession E. javax.servelet.jsp.JspPage F. javax.servlet.ServletConfig G. javax.servlet.ServletContext H. javax.servlet.jsp.JspWriter

I. javax.servlet.http.HttpServletResponse

23. JSP在处理客户请求前会被编译成servlet, JSP中declaration中定义的变量和方法在运行时成为对应servlet的 B 变量和方法; scripting会成为服务方法 C 的语句。JSP的生命周期受到 ACD 的控制。

A. _jspInit C. _jspService B. member D. _jspDestroy

24. 一个没有body的标签其tag handler要实现接口 C ;如果某个标签有body, 但标签不与body交互,tag handler要实现接口 E, 如果要与body交互,tag handler要实现接口 D。通常前两种情况的tag handler会继承 A , 最后一种情况tag handler会继承 B 。

A. javax.servlet.jsp.tagext.TagSupport B. javax.servlet.jsp.tagext.BodyTagSupport C. javax.servlet.jsp.tagext.Tag

D. javax.servlet.jsp.tagext.BodyTag

E. javax.servlet.jsp.tagext.IterationTag

25. 在EL中以下B可以获得requestURI: A. ${requestScope.request.requestURI} B. ${pageContext.request.requestURI} C. ${requestScope.requestURI}

HttpServletRequest. GetRequestURI Returns the part of this request's URL from the protocol name up to the

query string in the first line of the HTTP request. The web container does not decode this String. getRequestURL

Reconstructs the URL the client used to make the request. The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters.