0%

JavaWeb

第1章

一、 填空

  1. HTML中文译为_超文本标记语言___,主要作用是通过HTML标签对网页中的文本、图片、声音等内容进行描述。
  2. 表单主要由3部分组成,分别是表单控件、提示信息和__表单域__。
  3. CSS中文译为_层叠样式表___,用于控制网页样式并允许将样式信息与网页内容分离的一种标签性语言。
  4. __JavaScript__是Web中一种功能强大的脚本语言,常用来为网页添加各式各样的动态功能,它不需要进行编译,直接嵌入在HTML页面中,就可以把静态的页面转变成支持用户交互并响应事件的动态页面。
  5. 标签表示一个图像信息,它有一个必须要指定的_src___属性,用来指定图片路径。
  6. _外链式___是指将JavaScript代码写在一个单独的文件中,一般使用“js”作为文件的扩展名,在HTML文件中使用
    A.2
    B.2.5
    C.5
    D.16
  7. 下面选项中,设置字号大小书写正确的是(A )。
    A.{ font-size: 24px; }
    B.{ font: 24px; }
    C.{ fontSize: 24px; }
    D.{ size: 24px; }
  8. 下列选项中,不属于表单标记
    常用属性的是(B)。
    A.action
    B.size
    C.method
    D.name
  9. 下列代码中,哪个正确定义了JavaScript函数?(C)
    A.function (a, b) {return a * b;}
    B.function myDemo(a, b) {return a * b}; 函数声明
    C.var x = function (a, b) {return a * b;} 函数表达式定义
    D.var x = function myDemo(a, b) {return a * b};
  10. 下列选项中,用来设置单元格背景颜色的是(B)。
    A.width
    B.bgcolor
    C.rowspan
    D.colspan
  11. 认真阅读下面代码,并按要求进行作答。txt1=”What a very”;txt2=”nice day”;txt3=txt1+txt2;
    根据上述代码,txt3的运算结果是(A)。
    A.What a verynice day
    B.What a very nice day
    C.What a very
    D.nice day

四、 简答

  1. 简述如何将单独的CSS文件引入到HTML页面中。
  2. 请描述HTML文档中注释标记的作用。
    标记方便查找、对比和理解代码

第2章

五、 填空

  1. XML称为__可扩展标记语言__,用于提供数据描述格式,适用于不同应用程序之间的数据交换,而且这种交换不以预先定义的一组数据结构为前提,增强了可扩展性。
  2. XML文档中有且仅有一个顶层元素,称为文档元素或_根元素___。
  3. 在XML声明中,可以通过standalone属性来声明这个文档是否为独立的文档。默认情况下,standalone属性的值为__no__。
  4. 在DTD中定义元素的属性时,CDATA____是最常用的一种属性类型,表明属性类型是字符数据,与#PCDATA相同。
  5. Tomcat的端口号可在其安装目录下的_conf___文件夹下的server.xml文件中配置。
    六、 判断
  6. 在命名XML元素时,元素是不区分大小写的。错
    Html不区分大小写,xml严格区分大小写。
  7. 在XML声明中必须包含version属性,且该属性必须放在XML声明中其他属性之前。 对
  8. B/S架构中,浏览器并不是直接与数据库服务器建立连接,而是通过Web服务器与数据库服务器需要建立连接。对
  9. Tomcat服务器默认的端口号是8080。对
  10. Tomcat的webapps目录是Web应用程序的主要发布目录,通常将要发布的应用程序放到这个目录下。对
    七、 选择
  11. 安装tomcat成功后,要修改tomcat端口,要修改的文件是(B)
    A.tomcat/bin/startup.bat文件
    B.tomcat/conf/server.xml
    C.tomcat/conf/web.xml
    D.以上都不是
  12. 下列选项中,启动Tomcat的命令startup.bat,放在哪个目录中(A)
    A.bin
    B.lib
    C.webapps
    D.work
  13. 关于配置Path环境变量的路径写法,正确的是(C)
    A.”%JAVA_HOME%bin;”
    B.”%JAVA_HOME%\bin;
    C.”%JAVA_HOME%\bin”
    D.以上都不是
  14. 下面XML文档声明的格式中,正确的是(A)
    A.
    B.<?xml version=”1.0” encoding=”GBK” !>
    C.
    D.<! –xml version=”1.0” encoding=”GBK” –!>
  15. 下列关于XML的描述中,正确的是(B)
    A.所有的XML元素都必须是小写的
    B.所有XML元素都必须正确地关闭
    C.所有XML文档都必须有DTD
    D.以上说法都正确

八、 简答

  1. 请列举出Tomcat安装目录下的子目录,并对其进行简要说明。
    Bin:存放Tomcat的可执行文件和脚本文件
    Conf:存放Tomcat的配置文件,如web.xml,server.xml
    Lib:存放TOmcat服务器和Web应用程序需要访问的JAR包
    Logs:存放Tomcat的日志文件
    Webapps:web应用程序的主要发布目录,通常将要发布的应用程序放到这个目录下
    Work:Tomcat的工作目录,JSP编译生成的Servlet源文件和字节码文件放到这个目录下。
  2. 开发时经常需要修改项目的访问路径,请简述如何在IDEA的Tomcat配置中修改项目访问路径。

第3章

九、 填空

  1. HTTP即_超文本传输___协议,它是一种请求/响应式的协议。
  2. 在HTTP协议中,一个完整的请求消息是由请求行、_请求头___和实体内容三部分组成。
  3. HTTP请求消息的请求行的构成,包括_请求方式___、资源路径以及所使用的HTTP协议版本。
  4. HTTP专门用于定义浏览器与服务器____之间交换数据的过程以及数据本身的格式。
  5. Accept-Encoding头字段可以使用gzip和__compress__这两种最常见的数据编码格式。
    十、 判断
  6. 在HTTP消息中,所有消息都是可见的。错
  7. POST比GET请求方式更安全。对
  8. 客户端向服务器请求服务时,请求方式只有GET、POST两种。错
  9. HTTP响应状态行包括:HTTP版本、一个表示成功或错误的整数代码(状态码)和对状态码进行描述的文本信息3个部分。对
  10. Location头字段用于通知客户端获取请求文档的新地址,其值为一个使用绝对路径的URL地址。对
    十一、 选择
  11. 下列选择中,哪个响应头能够使客户端访问服务器资源时采用下载窗口打开?(A)
    A.Content-Disposition
    B.Content-Type
    C.Content-Encoding
    D.Disposition
  12. Refresh能够使客户端不断刷新,其刷新的时间单位是(C)
    A.毫秒
    B.分钟
    C.秒
    D.纳秒
  13. 下面选项中,哪个头字段用于通知客户端获取请求文档的新地址?(D)
    A.Accept
    B.Accept-Range
    C.Accept-Location
    D.Location
  14. 下面选项中,表示服务器错误的状态码是(D)
    A.200
    B.404
    C.304
    D.500
  15. 下面选项中,可以实现浏览器重定向的状态码是(C)
    A.100
    B.200
    C.302
    D.304

十二、 简答

  1. 简述POST请求和GET请求有什么不同?(至少2点)
    POST传输数据大小不受限制,而GET一次最多传输2KB
    POST比GET更安全,将传递的参数隐藏到了实体内容中。
    2.简述5种Web开发的常见状态码及含义?
    200:服务器成功的处理了客户端的请求。
    302:请求的资源临时从不同的URI请求。
    304:客户端缓存的版本是最新的,客户端应该继续使用它。
    404:服务器找不到请求资源。
    500:服务器发生错误,无法处理客户端请求

第4章

十三、 填空

  1. 如果当前Web资源不想处理请求,RequestDispatcher接口提供了一个forward()方法,该方法可以将当前请求传递给其他Web资源对这些信息进行处理并响应给客户端,这种方式称为_请求转发___。
  2. Servlet API中,专门用来封装HTTP响应消息的接口是__HttpServletResponse__。
  3. __请求重定向__指的是Web服务器接收到客户端的请求后,可能由于某些条件限制,不能访问当前请求URL所指向的Web资源,而是指定了一个新的资源路径,让客户端重新发送请求。
  4. 在Servlet开发中,当我们要自定义一个Servlet时,可以继承__GenericServlet__或HttpServlet类。
  5. Servlet的配置主要有两种方式,分别是使用web.xml文件来完成配置和使用__@WebServlet__注解的方式完成配置。
  6. Servlet的生命周期大致可以分为三个阶段,分别是初始化阶段、运行阶段和__销毁阶段__。
    十四、 判断
  7. Response对象的getOutputStream()和getWriter()方法可以同时发送响应消息体。错
  8. 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到一个ServletConfig对象中。对
  9. 定义@WebServlet 注解时,vlaue或者urlPatterns 通常是必需的,但二者不能共存。对
  10. 在Servlet的整个生命周期中,destroy()方法会被调用多次。错
  11. ServletRequest接口的setAttribute()方法用于将一个对象与一个name关联后存储进ServletRequest对象中。对
    十五、 选择
  12. 程序中创建了一个Servlet,该Servlet重写了其父类的doGet()和doPost()方法,那么其父类可能是 (D)
    A.RequestDispatcher
    B.HttpServletResponse
    C.HttpServletRequest
    D.HttpServlet
  13. LoginServlet是一个Servlet类,代码如下
    public class LoginServlet extends ___________ {
    public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    }
    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    }
    }在下划线处应填写(B)
    A.Servlet
    B.HttpServlet
    C.GenericServlet
    D.Cookie
  14. 给定Servlet程序的代码如下所示:
    Public class Servlet1 extends HttpServlet{
    Public void doGet(HttpServletRequest request,HttpServletResponse response)
    Throws ServletException IOException{
    System.out.println(“get”);
    }
    Public void doPost(HttpServletRequest request.HttpServletResponse response)
    Throws ServletException,IOException{
    System.out.println(“post”);
    doGet(reauest,response);
    }
    }
    用户在浏览器地址栏中键入正确的请求URL并回车后,在控制台上显示的结果是(A)。
    A.get
    B.post
    C.get post
    D.post get
  15. HttpServlet类中,用来处理POST请求的方法是(C)
    A.doHead
    B.doGet
    C.doPost
    D.doPut
  16. 下面选项中, 用于实现一个Web应用中的所有Servlet共享数据的对象是(B)
    A.HttpSession
    B.ServletContext
    C.ServletConfig
    D.ServletRequest

十六、 简答

  1. 简述请求转发与重定向的异同?(至少写3点)

请求转发和重定向都可以实现访问一个资源时转向当前资源
请求转发是一次请求一次响应,重定向是两次请求两次响应。
一般情况应该使用请求转发,减少浏览器对服务器的访问,减轻服务器压力。
如果需要改变浏览器地址栏,或更改浏览器的刷新按钮的功能时,需要使用重定向。

第5章

十七、 填空

  1. 服务器向客户端发送Cookie时,会在HTTP响应头字段中增加_set-cookie___响应头字段。
  2. Web应用中的会话指的是一个客户端(浏览器)与__服务器__之间连续发生的一系列请求和响应过程。
  3. Session相对于Cookie具有更高的安全性,它将关键数据保存在__服务器__端。
  4. 在Servlet技术中,提供了两个用于保存会话数据的对象,分别是_cookie___和Session。
  5. Tomcat容器中会话的有效时间可以在_web.xml___文件中设置,默认会话过期时间为30分钟。
    十八、 判断
  6. Tomcat容器中如果将元素中的时间值设置成0或一个负数,则表示会话永不超时。对
  7. Session是一种将会话数据保存到服务器端的技术,需要借助Cookie技术来实现。对
  8. Cookie的domain属性是用来指定浏览器访问的域,设置domain属性时严格区分大小写。错
  9. Cookie的path属性设置后,只对当前访问路径所属的目录有效。错
  10. 一次会话过程中,只允许客户端与服务器进行一次请求与响应过程。错
    十九、 选择
  11. 下列对于setMaxAge(-1)方法的描述中,正确的是(C)
    A: 表示通知浏览器保存这个Cookie信息
    B: 表示通知浏览器立即删除这个Cookie信息
    C: 表示当浏览器关闭时,Cookie信息会被删除
    D: 以上说法都是错误的
  12. Tomcat服务器的默认会话超时时间是(B)
    A: 30秒
    B: 30分钟
    C: 30毫秒
    D: 30小时
  13. 下面选项中,用于强制使Session对象无效的方法是(D)
    A: request. invalidate ();
    B: session. validate ();
    C: response. invalidate ();
    D: session. invalidate ();
  14. 下面选项中,当存在Session对象直接返回,否则返回null的方法是(C)
    A: request.getSession();
    B: request.getSession(true);
    C: request.getSession(false);
    D: response.getSession();
  15. 下列选项中,能够用于获取客户端所有cookie对象的方法是(B)
    A: List cookies = request.getCookies();
    B: Cookie[] cookies = request.getCookies();
    C: List cookies = response.getCookies();
    D: Cookie[] cookies = response.getCookies();

二十、 简答

  1. 简述什么是会话技术?
    会话过程类似于生活中的打电话过程,它指的是一个客户端(浏览器)与Web服务器之间连续发生的一系列请求和响应过程。在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和Session。
  2. 简述Cookie与Session的区别。(至少写出3点)
  3. Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术。
  4. Cookie是基于HTTP协议中的Set-Cookie响应头和Cookie请求头进行工作的。
  5. 默认情况下HttpSession是基于一个名称为JSESSIONID 的特殊Cookie工作的。
  6. 浏览器对Cookie具有严格的限制,一个网站能在浏览器中保存多少Cookie是有限制的。
  7. HttpSession默认是基于Cookie运作的。

第6章

二十一、 填空

  1. JSP页面中out对象是用来向__客户端__发送文本形式的实体内容。
  2. 在JSP页面中,经常需要处理一些异常信息,这时,可以通过__exception__对象来实现。
  3. 除了RequestDispatcher接口的forward()方法可以实现转发外,还可以通过JSP的jsp:forward____标签来实现转发。
  4. JSP脚本元素主要包含三种类型,分别是JSP Scriptlets、声明标识和__jsp表达式__。
  5. 当用户第一次访问JSP页面时,该页面都会被JspServlet翻译成一个Servlet源文件,然后将源文件编译为后缀名为_class___的文件。
    二十二、 判断
  6. JSP隐式对象out可以通过response.getWriter()方式获取,然后再通过println()或者write()方法向页面发送文本内容。错
  7. include指令的file属性值必须使用相对路径,这里的相对路径是相对于文件(file),而不是相对于页面(page)。对
  8. include指令用于静态包含一个文件,它的file属性只能取相对路径。对
  9. page指令的属性中,所有的属性都只能出现一次,否则会编译失败。错
  10. JSP文件与html文件有所不同,它不可以直接在浏览器中运行。对
    二十三、 选择
  11. 阅读下面代码片段:
    <% out.println(“first line “); response.getWriter().write(“second line “); %> 当使用浏览器访问该jsp页面时会什么结果(D)
    A.将上述代码原样输出
    B.first line
    C.先输出first line,再输出second line
    D.先输出second line,再输出first line
  12. 下面关于动态包含的语法格式,书写正确的是(C)
    A.<jsp:forward file=”relativeURL” />
    B.<jsp:forward path=”relativeURL” />
    C.<jsp:forward page=”relativeURL” />
    D.<%@include file=”relativeURL” />
  13. 在JSP中,exception隐式对象所对应的类是(A)
    A.java.lang.Exception
    B.java.lang.Throwable
    C.java.lang.ExceptionThrowable
    D.java.lang. ThrowableException
  14. 下列是page指令中的一些属性,其中,用于告知客户端浏览器采用什么文档类型的属性是(B)
    A.session
    B.contentType
    C.content
    D.isThreadSafe
  15. 阅读下列JSP代码片断:
    <% int x=5; %>
    <%! private int m(int a){ return a+1;} %>
    <% x=3; %>
    x=<%=x%>,<%=m(x)%>
    其运行结果是(B)
    A.x=3,6
    B.x=3,4
    C.x=5,4
    D.编译错误
    二十四、 简答
  16. 简述JSP的九个隐式对象及它们的作用。
    Out:用于页面输出
    Request:得到用户请求信息
    Response:服务器向客户端回应信息
    Config:服务器配置,可以取得初始化参数
    Session:用于保存用户的信息
    Application:所用用户的共享信息
    Page:当前页米娜转换后的Servlet类实例
    pageContext:jsp的页面容器
    Exception:jsp页面发生的异常,在错误页中才起作用

第8章

二十五、 填空

  1. 为了更方便地使用JSP技术,Sun公司为JSP技术提供了两种开发模型:JSP Model1和 JSP Model2 。
  2. JSP Model1采用 JSP+JavaBean 的技术,将页面显示和业务逻辑分开。
  3. JSP Model2模型就是MVC设计模式,其中控制器的角色是由 Servlet 实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。
  4. MVC设计模式将软件程序分为三个核心模块:模型(Model)、视图(View)和 控制器 。
  5. 控制器 是负责应用程序中处理用户交互的部分。
    二十六、 判断
  6. JSP Model1架构模型采用JSP+Servlet+JavaBean的技术,实际上它就是MVC设计模式。( 错)
  7. JavaBean需要有一个默认的无参构造方法。(对)
  8. 在JSP Model2模型中,控制器的角色是由Servlet实现,视图的角色是由JSP页面实现。(对)
  9. JavaBean中的属性必须私有化。( 对)
  10. 控制器负责管理应用程序的业务数据、定义访问控制以及修改这些数据的业务规则。( 错)这是模型的功能
    二十七、 选择
  11. 1.JSP Model2开发的系统中,实现视图的是(A )
    A.JSP
    B.HTML
    C.JavaBean
    D.Servlet
  12. MVC模式中用于负责与用户交互并展示模型中数据的模块是( C)
    A.模型(Model)
    B.表示层(View)
    C.视图(View)
    D.控制器(Controller)
  13. 阅读下面的类:
    public class Book {
    private double price;
    public double getPrice() {
    return price;
    }
    public void setPrice(double price) {
    this.price = price;
    }
    }
    针对以上类,下列说法正确的是( A)
    A.符合JavaBean规范
    B.不符合JavaBean规范
    C.没有构造方法,所以不符合JavaBean规范
    D.以上说法都不对
  14. 下面关于MVC设计模式的特点描述中,错误的是(B )
    A.有利于开发中的分工
    B.使程序结构的耦合性增强
    C.有利于组件的重用
    D.MVC设计模式是当前主流的设计模式之一
  15. 在JSP Model2模型中,接收浏览器请求的是(C )
    A.JSP
    B.JS
    C.Servlet
    D.JavaBean
    二十八、 简答
  16. 简述Javabean规范都有哪些?
    必须有一个公共的无参构造方法,可以使编译器自动产生的缺省的构造方法
    他提供的setter方法和getter方法让外部程序设置和获取javabean属性
    他是一个公有类
    通常可以实现java.io.Serializable 用于序列化

第10章

二十九、 填空

  1. Connection 接口表示Java程序和数据库的连接,只有获得该连接对象后才能访问数据库,并操作数据表。
  2. ResultSet接口中,能将游标移动到此 ResultSet 对象的最后一行的方法是 last() 。
  3. PreparedStatement是Statement的子接口,用于执行 预编译 的SQL语句。
  4. Statement接口的executeUpdate(String sql)方法用于执行SQL中的insert、 update 和delete语句。
  5. JDBC常用API 中, DriverManager 类用于加载JDBC驱动并且创建与数据库的连接。

三十、 判断

  1. 对于相同的SQL语句,Statement对象只会对其编译执行一次。(错)
  2. 使用DriverManager.registerDriver进行驱动注册时,数据库驱动会被注册2次。( 对)
  3. ResultSet接口表示select查询语句得到的结果集,该结果集封装在一个逻辑表格中。(对)
  4. Statement接口的executeUpdate(String sql)返回值是int,它表示数据库中受该SQL语句影响的记录的数目。( 对)
  5. JDBC的全称是Java数据库连接,它是一套用于执行HTML语句的Java API。( 错)

三十一、 选择

  1. 下列选项,可用于存储结果集的对象是(A )
    A.ResultSet
    B.Connection
    C.Statement
    D.PreparedStatement
  2. 下面选项中,能够将游标从当前位置向下移一行的方法是( A)
    A.next()
    B.absolute(introw)
    C.previous()
    D.last()
  3. 下面关于executeQuery(String sql)方法,说法正确的是(C )
    A.可以执行insert语句
    B.可以执行update语句
    C.可以执行select语句
    D.可以执行delete语句
  4. 下面Statement接口的方法中,用于执行各种SQL语句的是( C)
    A.executeUpdate(Stringsql)
    B.executeQuery(Stringsql)
    C.execute(Stringsql)
    D.executeDelete(Stringsql)
  5. 下面选项中,用于将参数化的SQL语句发送到数据库的方法是(B )
    A.prepareCall(Stringsql)
    B.prepareStatement(Stringsql)
    C.registerDriver(Driverdriver)
    D.createStatement()