Java Web面试的试题及其答案(一套)

来源:互联网 发布:怎么加盟茵曼淘宝网店 编辑:程序博客网 时间:2024/05/20 19:28
 

 Java Web面试的试题及其答案(一套)

____________________________________________________12,15考试题

一、           选择题(本题共40小题,每小题2分,共80分)


1. 1、下面哪一个不是JSP本身已加载的基本类?(b )

A、java.lang.*    B、java.io.* C、javax.servlet.* D、javax.servlet.jsp.*

 

2. 对于预定义<%!预定义%>的说法错误的是:(c)

A、一次可声明多个变量和方法,只要以“;”结尾就行  

B、一个声明仅在一个页面中有效

C、声明的变量将作为局部变量        

D、在预定义中声明的变量将在JSP页面初始化时初始化

 

3. 从 “员工” 表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:( D )

 

A、  Select * from员工 where 姓名 =’_玛丽_’

B、   B 、Select * from员工 where 姓名 =’%玛丽_’

C、 Select * from员工 where 姓名 like ‘_玛丽%’

D、 Select * from员工 where 姓名 like ‘%玛丽%

 

4. 在JSP中使用<jsp:getProperty>标记时,不会出现的属性是:( c )

A.    name     B.    property    C.   value    D.    以上皆不会出现

5. Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:(D )

 

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

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

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

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

 

6.关于JavaBean正确的说法是:( A)

一、           选择题(本题共40小题,每小题2分,共80分)


 

1. 1、下面哪一个不是JSP本身已加载的基本类?(b )

A、java.lang.*    B、java.io.* C、javax.servlet.* D、javax.servlet.jsp.*

 

2. 对于预定义<%!预定义%>的说法错误的是:(c)

A、一次可声明多个变量和方法,只要以“;”结尾就行  

B、一个声明仅在一个页面中有效

C、声明的变量将作为局部变量        

D、在预定义中声明的变量将在JSP页面初始化时初始化

 

3. 从 “员工” 表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:( D )

 

A、  Select * from员工 where 姓名 =’_玛丽_’

B、   B 、Select * from员工 where 姓名 =’%玛丽_’

C、 Select * from员工 where 姓名 like ‘_玛丽%’

D、 Select * from员工 where 姓名 like ‘%玛丽%

 

4. 在JSP中使用<jsp:getProperty>标记时,不会出现的属性是:( c )

A.    name     B.    property    C.   value    D.    以上皆不会出现

5. Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:(D )

 

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

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

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

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

 

6.关于JavaBean正确的说法是:( A)

A、Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写

B、在JSP文件中引用Bean,其实就是用<jsp:useBean>语句

C、被引用的Bean文件的文件名后缀为.java

D、Bean文件放在任何目录下都可以被引用

 

7. 下Servlet程序的入口点是:(A )

A、init() B、main() C、service() D、doGet()

 

8. 不能在不同用户之间共享数据的方法是(A )

 

A、通过cookie B、利用文件系统   C、利用数据库    

D、通过ServletContext对象

 

9. 在JSP中,要定义一个方法,需要用到以下()元素。(选择一项)

a)  <%=  %>                                                                            b)  <%   %>

c)  <%!  %>                                                                                       d)  <%@  %>

10. 当JSP页面执行自定义标签,遇到结束标签时将调用()方法执行处理。(选择一项)

a)  doStartTag()                                                                                b)  doEndTag()

c)  doInitBody()                                                                                 d)  doAfterBody()

 

11. Servlet中,HttpServletResponse的()方法用来把一个Http请求重定向到另外的URL。(选择一项)

a)   sendURL()                                                                                    b)   redirectURL()

c)   sendRedirect()                                                                            d)   redirectResponse()

12. 在Servlet过滤器的生命周期方法中,每当传递请求或响应时,web容器会调用()方法。(选择一项)

a)   init                                                                                                 b)  service

c)  doFilter                                                                                            d)  destroy

13. 给定如下JSP代码,假定在浏览器中输入URL:http://localhost:8080/web/jsp1.jsp,可以调用这个JSP,那么这个JSP的输出是()。(选项一项)

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

<%@ taglib uri=”http://java.sun.com/jsp/jstl/core”  prefix=”c”%>

<html>

<body>

<% int counter = 10;  %>

<c:if test=”${counter%2==1}”>

<c:set var=”isOdd” value=”true”></c:set>

</c:if>

<c:choose>

<c:when test=”${isOdd==true}”>it’s an odd </c:when>

<c:otherwise>it’s an even </c:otherwise>

</c:choose>

</body>

</html>

         a)      一个HTML页面,页面上显示it’s an odd

         b)     一个HTML页面,页面上显示it’s an even

         c)      一个空白的HTML页面

d)     错误信息

14. 给定java程序User.java,代码如下:

package user;

public class User{

       private String password;

         private String loginName;

         public String getLoginName(){

                   return loginName;

         }

public String getPassword(){

         return password;

}

public void setLoginName(String loginName){

         this.loginName=loginName;

}

public void setPassword(String password){

         this.password=password;

}

}

给定user.jsp,代码片断如下:

____________

loginName:      <jsp:getProperty name=”user” property=”loginName”/>

password:        <jsp:getProperty name=”user” property=”password”/>

在浏览器上输入URL:http://localhost/user,jsp?loginName=sa&password=sa并回车

要使浏览器上显示:

loginName: sa   password: sa

在user.jsp中的下划线处应填入以下()代码.       (选择一项)

a)      <jsp:useBean id=”user” class=”user.User” scope=”page”/>

         <jsp:setProperty name=”user” property=”loginName” value=”*”/>

         <jsp:setProperty name=”user” property=”password” value=”*”/>

b)      <jsp:useBean id=”user” class=”user.User” scope=”application”/>

         <jsp:setProperty name=”user” property=”loginName” value=”*”/>

         <jsp:setProperty name=”user” property=”password” value=”*”/>

c)     <jsp:useBean id=”user” class=”user.User” scope=” application”/>

         <jsp:setProperty name=”user” property=”*” />

d)      <jsp:useBean id=”user” class=”user.User” scope=” page”/>

         <jsp:setProperty name=”user” property=”*” />

 

 

15. 给顶一个JSP程序源代码,如下:

    <jsp:include page="two.jsp" flush="true">

    <jsp:param name="location" value="bejing"/>

    </jsp:include>

    在two.jsp中使用()代码片段可以输出参数location的值。

    a)  <jsp:getParam name="location">

    b)  <jsp:getParameter name="location">

    c)  <%=request.getAttribute("location")%>

    d)  <%=request.getParameter("location")%>

16. 给定include1.jsp文件代码片断,如下:

     <% pageContext.setAttribute("User","HAHA");%>

     _______//此处填写代码

     给定include2.jsp文件代码片断,如下:

     <%=pageContext.getAttribute("User")%>

     要求运行include1.jsp时,浏览器上输出:HAHA

     要满足以上条件,jsp1.jsp中下划线处应填入以下()语句。(选择一项)

     a)   <jsp:include page="include2.jsp" flush="true"/>

     b)   <%@ include file="include2.jsp"%>

     c)   <jsp:forword page="include2.jsp"/>

     d)   <% response.sendRedirect("include2.jsp");%>

 

17. 在J2EE中,在web.xml中,有如下代码:

<session - config>

        <session - timeout>30</session - timeout>

</session - config>

上述代码定义了默认的会话超时时长,时长为30(    )。 (选择一项)

a)       毫秒                                                                           b) 秒

c)  分钟                                                                            d) 小时

 

 

18. 在J2EE中,在web.xml中定义过滤器时可以指定初始化参数,以下定义正确的是()(选择一项)

a)         <filter>

<filter-name>someFilter</filter-name>

<filter-class>filters.SomeFilter</filter-class>

<init-param>

         <param-name>encoding</param-name>

         <param-value>EUC_JP</param-value>

</init-param>

</filter>

b)         <filter>

<fiter-name>someFilter</filter-name>

                           <init-param>

                                     <param-name>encoding</param-name>

                                     <plaram-value>EUC_JP</param-value>

                           </init-param>

                    </filter>

a)         <filter-mapping>

<filter-name>someFilter</filter-name>

<init-param>

         <param-name>encoding</param-name>

         <param-value>EUC_JP</param-value>

</init-param>

                   </filter-mapping>

b)         <filter-mapping>

  <filter-name>someFilter</filter-name>

  <filter-class>filters.SomeFilter</filter-class>

  <init-param>

       <param-name>encoding</param-name>

         <param-value>EUC_JP</param-value>

  </init-param>

                    </filter-mapping>

 

19. J2EE中,()类()方法用于返回应用程序的上下文路径。(选择一项)

a)  HttpServletRequest、getContextPath()                    b)  HttpServletRequset、getPathInfo()

c)  ServletContext、getContextPath()                             d)  ServletContext、getPathInfo()

 

20. 在J2EE中,request对象的(  )方法可以获取页面请求中一个表单组件对应多个值时的用户的请求数据。(选择一项)

a)        String getParameter(String name)

b)        String[] getParameter(String name)

c)        String getParameterValuses(String name)

d)        String[] getParameterValues(String name)

 

二、解答题(本题共2小题,每小题10分,共20分)

1. Jsp有哪些内置对象?作用分别是什么?

 

application对象代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息。

                                     <plaram-value>EUC_JP</param-value>

                           </init-param>

                    </filter>

a)         <filter-mapping>

<filter-name>someFilter</filter-name>

<init-param>

         <param-name>encoding</param-name>

         <param-value>EUC_JP</param-value>

</init-param>

                   </filter-mapping>

b)         <filter-mapping>

  <filter-name>someFilter</filter-name>

  <filter-class>filters.SomeFilter</filter-class>

  <init-param>

       <param-name>encoding</param-name>

         <param-value>EUC_JP</param-value>

  </init-param>

                    </filter-mapping>

 

19. J2EE中,()类()方法用于返回应用程序的上下文路径。(选择一项)

a)  HttpServletRequest、getContextPath()                    b)  HttpServletRequset、getPathInfo()

c)  ServletContext、getContextPath()                             d)  ServletContext、getPathInfo()

 

20. 在J2EE中,request对象的(  )方法可以获取页面请求中一个表单组件对应多个值时的用户的请求数据。(选择一项)

a)        String getParameter(String name)

b)        String[] getParameter(String name)

c)        String getParameterValuses(String name)

d)        String[] getParameterValues(String name)

 

二、解答题(本题共2小题,每小题10分,共20分)

1. Jsp有哪些内置对象?作用分别是什么?

 

application对象代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息。

<jsp:forward>操作允许将请求转发到另一个JSP、servlet或静态资源文件

 

4、servlet运行的生命周期图.

 

装载Servlet

Servlet类                                           

Servlet初始化(调用init方法)

实例对象被回收                                        

提供服务(调用Service方法)

销毁Servlet实例(调用destroy方法)

 

5、几个典型的JSP指令及各个指令的含义?

    page指令:用于传递与页面相关的信息,如缓冲区信息、线程信息和出错处理信息等。

  include指令:用于在页面中包含一个外部的文档。如著作权文档或者公司信息文档——把通用内容写在一个文档中,然后包含在各个页面中,比直接写在各个JSP页面中更容易维护。当然,被包含的文件也可能是另一个JSP文件。

  taglib指令:用于指出页面可以调用的一个客户标识库,常用于自定义标识。

三、编程题

1、简述你对MVC思想的理解,并采用此思想对User表实现查询所有的信息的操作,并实现分页.

  User表的字段有如下: 

    Id  主键 自动递增  int类型

    Name 用户名      varchar

    Sex 用户性别      varchar

         Birth 出生日期    datetime

2、对查询的结果实现分页