第1章 网页开发基础
习题
一、 填空题
- 在CSS中,用于设置行间距的属性是【 】。
- 在CSS中,用于定义字体风格,如设置斜体、倾斜或正常字体的属性是【 】。
- 内嵌式是将CSS代码集中写在HTML文档的【 】标记中,并且用【 】标记定义。
<input />
标记有多个属性,其中【 】属性为其最基本的属性,用于指定不同的控件类型。- 【 】是一个表示和处理文档的应用程序接口(API),可用于动态访问、更新文档的内容、结构和样式。
二、 判断题 - 在JavaScript中,运算符i++表示在使用i之前,使i的值加1;而++i表示在使用i之后,使i的值加1。( )
- font-variant属性用于设置变体(字体变化),一般用于定义小型大写字母,仅对英文字符有效。( )
- CSS基础选择器只有三种,分别是标记选择器、类选择器、id选择器。( )
- JavaScript不需要区分字母大小写。( )
- 在DOM文档的树形结构中,每个节点有且只有一个子节点。( )
三、 选择题 - 下列选项中,JavaScript运算符的优先级最高的是( )
A: +
B: ++
C: ()
D: == - 根据运算符的优先级,表达式z=2*(1+2*3)的运算结果为( )
A: 12
B: 14
C: 16
D: 18 - 下列JavaScript语句中,能实现单击一个按钮时弹出一个消息框的是( )。
A: <buttonvalue="鼠标响应"onClick=alert(“确定”)></button>
B: <inputtype="button"value="鼠标响应"onClick=alert(“确定”)>
C: <inputtype="button"value="鼠标响应"onChange=alert(“确定”)>
D: <buttonvalue="鼠标响应"onChange=alert(“确定”)></button>
- text-transform属性用于控制英文字符的大小写。下列选项中,不属于其属性值的是( )。
A: capitalize
B: line-through
C: lowercase
D: uppercase - 关于CSS的描述,下列说法正确的是( )。
A: 当CSS作为独立的文件时,必须以.html为后缀名
B: CSS用于设置HTML页面中的文本内容、图片的外形以及版面的布局等外观显示样式。
C: 只有独立的CSS文件才符合结构与表现分离的特点
D: 目前流行的CSS版本为CSS3
四、 简答题 - 简述什么是CSS以及CSS的作用。
答案
一、 填空题
- line-height
- font-style
<head>;<style>
- type
- DOM或文档对象模型
二、 判断题 - 错
- 对
- 错
- 错
- 错
三、 选择题 - C
- B
- B
- B
- B
四、 简答题
CSS通常称为CSS样式或样式表主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局等外观显示样式。CSS以HTML为基础提供了丰富的功能如字体、颜色、背景的控制及整体排版等而且还可以针对不同的浏览器设置不同的样式。
第2章 Java Web概述
习题
一、 填空题
- Tomcat的默认端口号是【 】。
- 在HTTP协议中,一个完整的请求消息是由请求行、【 】和实体内容三部分组成。
- HTTP是一种【 】式的协议。
- 在XML声明中,可以通过standalone属性来声明这个文档是否为独立的文档。默认情况下,standalone属性的值为【 】。
- 引用本地的DTD文件时,可以是相对于xml文档的相对路径,也可以是一个【 】路径。
二、 判断题 - 在配置一个WEB应用的默认页面时,一个WEB应用最多只能配置一个默认主页。( )
- 安装好Tomcat后,就可以直接启动运行了,并不要先安装JDK。( )
- 在HTTP响应消息中,第一行为响应状态行,紧接着的是若干响应消息头,服务器端通过响应消息头向客户端传递附加信息。( )
- 在一个DTD文件中,可以包含元素的定义、元素之间关系的定义、元素属性的定义以及实体和符号的定义。( )
- 在命名XML元素时,因为它是可扩展标记,所以元素名不需要遵守任何规范,可以随意编写。( )
三、 选择题 - 下面关于配置一个WEB应用的默认页面时,说法正确的是( )。
A: 一个Web应用最多只能配置一个默认页面
B: 一个Web应用最多只能配置两个默认页面
C: 一个Web应用最多只能配置三个默认页面
D: 一个Web应用可以配置多个默认页面 - 下面选项中,关于配置虚拟目录所需要添加的结点是( )。
A: <Host> B: <VirtualPath> C: <Context> D: <Server>
- 下列选项中,修改Tomcat端口号的文件server.xml位于哪个目录中( )
A: conf B: bin C: lib D: work - 下面选项中,表示服务器错误的状态码是( )
A: 100 B: 404 C: 304 D: 500 - 下面选项中,哪个头字段可以实现防盗链?( )
A: Location B: Refresh C: Referer D: If-Modified-Since
四、 简答题 - 请简述HTTP协议的特点。
答案
一、 填空题
- 8080
- 请求头
- 请求/响应
- no
- 绝对
二、 判断题 - 错
- 错
- 对
- 对
- 错
三、 选择题 - D
- C
- A
- D
- C
四、 简答题
(1)支持客户端(浏览器就是一种Web客户端)/服务器模式。
(2)简单快速:客户端向服务器请求服务时,只需传送请求方式和路径。常用的请求方式有GET、POST等,每种方式规定了客户端与服务器联系的类型不同。由于HTTP简单,使得HTTP服务器的程序规模小,因而通信速度很快。
(3)灵活:HTTP允许传输任意类型的数据,正在传输的数据类型由Content-Type加以标记。
(4)无状态:HTTP是无状态协议。无状态是指协议对于事务处理没有记忆能力,如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大
第3章 Servlet基础
习题
一、 填空题
- Servlet容器启动时,会为每个Web应用创建一个唯一的【 】对象代表当前Web应用。
- 在配置整个Web应用的初始化参数时,可在web.xml中配置【 】元素来实现。
- 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到【 】对象中。
- 在web.xml文件中,一个
<servlert-mapping>
元素用于映射一个Servlet的对外访问路径,该路径也称为【 】。 - 在RequestDispatcher接口中,实现请求转发的方法是【 】。
二、 判断题 - ServletContext接口中定义了用于查询、增加、删除、设置ServletContext域属性的方法。( )
- 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到一个ServletConfig对象。( )
- 一个Servlet只能映射一个虚拟路径。( )
- 使用RequestDispatcher对象的include()方法实现请求包含后,浏览器显示的URL会发生变化的。( )
<session-timeout>
标签指定的超时必须为一个整数,如果这个整数是为0或负整数,则session永远不会超时。( )
三、 选择题- 下列关于ServletContext的说法中,错误的是( )。
A: ServletContext对象用来保存当前Web应用中的所有信息
B: 在一个Web应用中可以有多个ServletContext对象。
C: ServletContext接口封装了获取当前Web应用中资源文件的方法。
D: ServletContext对象中保存的属性可以被Web应用中的所有Servlet访问。 - 下面选项中, 用于返回某个资源文件的InputStream输入流对象的方法是( )
A: getRealPath(String path)
B: getResource(String path)
C: getResourcePaths(String path)
D: getResourceAsStream(String path) - 下面选项中, 元素的父元素是()
A: B:
C: D: - 下面选项中,与web应用具有相同的生命周期的对象是()
A: Servlet B: ServletConfig C: GenericServlet D: ServletContext - 下面选项中,用于获取web.xml中元素的值的方法是()
A: getServletNames() B: getServletName()
C: getServletName(String name) D: getServletInfo()
四、 简答题 - 请简述什么是缺省Servlet,以及缺省Servlet的作用。
答案
一、 填空题
- ServletContext
<context-param>
- ServletConfig
- 虚拟路径
- forward()
二、 判断题 - 对
- 对
- 错
- 错
- 对
三、 选择题 - B
- D
- D
- D
- A
四、 简答题
如果某个Servlet的映射路径仅仅是一个正斜线(/),那么这个Servlet就是当前Web应用的缺省Servlet。
缺省Servlet的作用是:Servlet服务器在接收到访问请求时,如果在web.xml文件中找不到匹配的<servlet-mapping>
元素的URL,就会将访问请求交给缺省Servlet处理,也就是说,缺省Servlet用于处理其他Servlet都不处理的访问请求。
第4章 请求和响应
习题
一、 填空题
- 请求包含指的是使用【 】方法将Servlet请求转发给其它Web资源进行处理,响应消息中既包含了当前Servlet又包含了其它Web资源的响应消息。。
- 在HttpServletResponse接口中,定义了一个【 】方法,用于实现请求重定向。
- 我们可以通过response.setHeader("【 】",“3”)语句,使当前页面定时每3秒刷新一次。
- HttpServletResponse接口中,提供了一个【 】方法,该方法用于设置字符的编码方式。
- 当Servlet向客户端回送响应消息时,需要在响应消息中设置【 】。
二、 判断题 - 转发的forward()方法,必须在响应提交给客户端之前被调用,否则将抛出IllegalStateException异常。( )
- include()方法实现请求包含时,响应消息中不包含当前Servlet响应消息,只有被包含进来的其它Web资源的响应消息。( )
- 通过请求转发来实现目标资源的访问是服务器内部的行为,对于客户端来说是一次请求过程。( )
- 在HttpServletRequest接口中,getParameterMap()方法的返回值是Map对象,该对象包含了请求消息中所有参数的值。( )
- 如果请求消息中没有包含指定名称的参数,则getParameter()方法返回null。( )
三、 选择题 - 下面选项中关于请求包含include()方法的参数,正确的是( )
A: 依次为ServletRequest和ServletResponse两个
B: 依次为ServletResponse和ServletRequest两个
C: 只有ServletRequest
D: 只有ServletResponse - 通过配置Tomcat来解决GET请求参数的乱码问题,可以在server.xml文件中的Connector节点下添加的属性是( )
A: useBodyEncodingForURI=”false”
B: useBodyEncoding=”true”
C: useBodyEncodingForURI=”true”
D: useBodyEncoding=”false” - 如果请求消息中包含有多个该指定名称的参数,getParameter()方法的返回值是( )
A: 这些参数的所有值形成一个数组
B: “”
C: 第一个参数的值
D: 最后一个参数的值 - 下列关于HttpServletRequest接口中getDateHeader(String name)方法返回值的说法中,正确的是( )
A: 自1970年1月1日0点0分0秒算起的以秒为单位的时间值
B: 自1970年1月1日0点0分0秒算起的以毫秒为单位的时间值
C: 自1970年1月1日0点0分0秒算起的以纳秒为单位的时间值
D: 自1970年1月1日0点0分0秒算起的以分钟为单位的时间值 - 一次重定向过程中,浏览器会发出多少次服务器请求( )
A: 1次 B: 2次 C: 0次 D: 3次
四、 简答题 - 简述请求转发与重定向的异同(至少写3点)
答案
一、 填空题
- include()或include(ServletRequest request,ServletResponse response)
- sendRedirect()
- Refresh
- setCharacterEncoding()
- 状态码
二、 判断题 - 对
- 错
- 对
- 对
- 对
三、 选择题 - A
- C
- C
- B
- B
四、 简答题
1.请求转发和重定向都可以实现访问一个资源时转向当前应用资源
2.请求转发是一次请求一次响应,而重定向为两次请求两次响应
3.一般情况下应该使用请求转发,减少浏览器对服务器的访问,减轻服务器压力
4.如果需要改变浏览器的地址栏,或更改浏览器的刷新按钮的功能时需要使用重定向
第5章 会话及会话技术
习题
一、 填空题
- URL重写可以使用【 】接口中,所提供的方法encodeURL(String url)和encodeRedirectURL(String url)来实现。
- Cookie技术用于将会话过程中的数据保存到【 】中,从而使浏览器和服务器可以更好地进行数据交互。
- Session的默认有效时长是【 】。
- Session是一种将会话数据保存到【 】端的技术。
- 当服务器向客户端发送Cookie时,其实质是在HTTP响应头字段中增加【 】响应头字段信息。
二、 判断题 - 无论浏览器是否支持Cookie,服务器都会在第一次响应的页面中对URL地址进行重写。( )
- 当浏览器禁用cookie后,原来已实现的关于session的应用程序,不会受到影响依然可以运行。( )
- Session对象的getLastAccessedTime()方法返回的是发送请求的时间与1970年1月1日00:00:00之间时间差的秒表示形式。( )
- request.getSession(false)的作用是返回存在的Session对象,当Session对象不存在时,就创建新的HttpSession对象并返回。( )
- Servlet API中提供了一个javax.servlet.http.Cookie类,该类提供了操作Cookie的属性与方法,Cookie类有且仅有一个构造方法。( )
三、 选择题 - 下列选项中,用于对超链接和form表单中的action属性中设置的URL进行重写的方法是( )
A: encodeURL(String url)
B: encodeRedirectURL(String url)
C: encodeForwardURL(String url)
D: encodeRedirect (String url) - 若想修改Tomcat服务器的默认会话时间,则需要进入下列哪个文件中修改?( )
A: 在<tomcat安装目录>\conf\context.xml文件中修改
B: 在<tomcat安装目录>\conf\web.xml文件中修改
C: 在<tomcat安装目录>\conf\server.xml文件中修改
D: 在<tomcat安装目录> \conf\当前应用\web.xml文件中修改 - 在Java EE中,定义了getSession()方法的接口是( )
A: HttpServlet B: HttpSession C: HttpServletRequest D: HttpServletResponse - 下列关于Cookie和Session的描述中,错误的是( )
A: Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术
B: HttpSession会话对象的默认保持时间可以修改
C: HttpSession默认是基于Cookie运作的
D: 浏览器可以接受任意多个Cookie信息保存任意长的时间 - 下面关于setMaxAge(int expires)方法参数默认值的描述中,正确的是( )
A: 默认值是1
B: 默认值是-1
C: 默认值是0
D: 默认值是无穷大
四、 简答题 - 简述Cookie与Session的区别。
答案
一、 填空题
- HttpServletResponse
- 客户端(或浏览器)
- 30分钟
- 服务器
- Set-Cookie
二、 判断题 - 对
- 错
- 错
- 错
- 对
三、 选择题 - A
- B
- C
- D
- B
四、 简答题
1.Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术;
2.Cookie是基于HTTP协议中的Set-Cookie响应头和Cookie请求头进行工作的,而默认情况下HttpSession是基于一个名称为JSESSIONID 的特殊Cookie工作的;
3.浏览器对Cookie具有严格的限制,一个网站能在浏览器中保存多少Cookie是有限制的,而Session没有此限制。
第6章 JSP技术
习题
一、 填空题
- 需要在JSP页面静态包含一个文件时,可采用【 】指令来实现。
- 使用EL表达式中的pageContext对象,可以成功的获取到了request、response、【 】和servletConfig对象中的属性。
- JSP页面中的静态HTML内容称之为【 】。
- 在JSP文件中,可以同时存在HTML代码与【 】代码。
- JSP全名是Java Server Page,它是建立在【 】规范之上的动态网页开发技术。
二、 判断题 - EL表达式中的隐式对象与JSP中的隐式对象除了pageContext对象是它们共有的,其它隐式对象则毫不相关。( )
- 在处理JSP页面的异常时,如果page指令的errorPage属性和web.xml文件中的元素都进行了配置,那么这两项配置都会起作用。( )
- page指令的属性中,所有的属性都只能出现一次,否则会编译失败。( )
- Tomcat在将JSP页面翻译成Servlet程序时,会忽略JSP注释的内容,不会将注释信息发送到客户端。( )
- JSP文件与html文件一样,在编写好后都可以直接在浏览器中运行。( )
三、 选择题 - 下面选项中,属于
<jsp:forward>
标签中的属性的是( )
A: file B: url C: path D: page - 下面JSP标签中,具有转发功能的是( )
A: <jsp:include> B: <jsp:forward>
C: <jsp:param> D: <jsp:redirect>
- JSP隐式对象pageContext所对应的类是( )
A: javax.servlet.http.PageContext
B: javax.servlet.jsp.PageContext
C: javax.servlet.http.jsp.PageContext
D: javax.servlet.jsp.http.PageContext - 下面关于JSP作用域对象的描述,错误的是( )
A: request对象可以得到请求中的参数
B: session对象可以保存用户信息
C: application对象可以被多个应用共享
D: 作用域范围从小到大是request、session、application - 下列选项中,哪个属性可以指定JSP翻译成Servlet源文件中导入包或类?( )
A: language B: extends C: import D: session
四、 简答题 - 简述pageContext对象的作用?(至少写出2点)。
答案
一、 填空题
- include
- servletContext
- JSP模版元素
- Java
- Servlet
二、 判断题 - 对
- 错
- 错
- 对
- 错
三、 选择题 - D
- B
- B
- C
- C
四、 简答题
1.用于得到其它8个隐式对象;
2.默认直接操作page域中的数据;
3.可以用它操作其它三个域对象(request,session.application)中的数据;
4.提供的findAttribute也是后续要学习的EL表达式的实现原理。
第7章 EL表达式和JSTL
习题
一、 填空题
- 使用JSTL时需导入【 】和standard.jar这两个JAR包。
- 如果要在JSP页面中导入Core标签库,需要使用【 】指令。
- EL表达式中的点运算符,用于访问JSP页面中某些对象的【 】。
- 在JavaBean中,如果一个属性既有getter方法,又有setter方法,则该属性为【 】。
- EL的【 】对象用来获取请求参数的所有值,并返回请求参数所有值组成的数组。
二、 判断题 - Sun公司制定了一套JSTL标准标签库,它的英文全称是JavaServer Standard Tag Library。( )
- JSTL标签库中的Core标签库的URI为http://java.sun.com/jsp/jstl/core。( )
- EL表达式的cookie隐式对象用于获取客户端的Cookie信息。( )
- JSTL标签库是由5个不同功能的标签库共同组成。( )
- EL的param隐式对象代表application域中用于保存属性的Map对象。( )
三、 选择题 - 下面隐式对象中,返回结果为String类型数组的是( )
A: param B: paramValue
C: paramValues D: paramScope - 下面隐式对象中,用于获取session域中所保存数据的是( )
A: pageScope B: pageContext
C: requestScope D: sessionScope - 下面选项,哪个是合法的EL表达式( )
A: $<request.name> B: $[empty requestScope]
C: $(“aaa”+“bbb”) D: ${header[“user-agent”]} - 下面选项中,用于供外界获取javaBean的price属性值的方法是( )
A: getPrice() B: setprice() C: setPrice() D: getprice() - 下面关于${(1==2)?3:4}的返回结果是( )
A: true B: false C: 3 D: 4
四、 简答题 - 简述Javabean规范都有哪些?(至少写出2点)。
答案
一、 填空题
- jstl.jar
- taglib
- 属性
- 读写属性
- paramValues
二、 判断题 - 错
- 对
- 对
- 对
- 错
三、 选择题 - C
- D
- D
- A
- D
四、 简答题
1.它必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动产生的缺省构造方法。
2.它提供公共的setter方法和getter方法让外部程序设置和获取JavaBean的属性。
3.它是一个公有类。
4.通常可以实现java.io.Serializable接口用于序列化。
第8章 Servlet高级
习题
一、 填空题
- 新添加一个属性到【 】域中,则所对应的监听器类要获得该值,可以使用ServletRequestAttributeEvent对象的方法。
- 当删除被监听对象中的一个属性时,Web容器调用事件监听器的【 】方法进行响应。
- 实现ServletContextAttributeListener接口的监听器类,可以用于监听【 】对象中的属性变更。
- 用于监听ServletRequest对象生命周期的接口是【 】。
- Filter链中各个Filter执行请求时的拦截顺序与响应时的拦截顺序【 】。
二、 判断题 - 新添加一个属性到session域中,则所对应的监听器类要获得该值,可以使用HttpSessionAttributeListener对象的方法。( )
- 在web.xml中,一个
<listener>
元素中可以出现多个< listener-class>子元素。( ) - 在Filter中实现统一全站编码时,对于请求方式post和get解决乱码问题的方式是相同的。( )
<dispatcher>
元素的取值共有三个,分别是:REQUEST,INCLUDE,FORWARD。( )- 一个Filter对象中的doFilter方法可以被多次调用。( )
三、 选择题 - 下面选项中,用于监听HttpSession对象中属性变更的接口是( )
A: HttpSessionAttributeListener
B: ServletContextAttributeListener
C: ServletRequestAttributeListener
D: ApplicationAttributeListener - 下面选项中,用于在web.xml中配置监听器的元素是( )
A: <listener-url> B: <url-listener>
C: <listener> D: <listener-name>
- 一个Web应用程序中,Filter可以注册的次数是( )
A: 只能是1次
B: 只能是0次
C: 可以是0次或1次或多次
D: 只能是2次 - 下列关于
<dispatcher>
元素值FORWARD的作用,描述正确的是( )
A: 表示用户直接访问页面时,Filter将调用
B: 目标资源通过RequestDispatcher的include()方法访问时,Filter将被调用
C: 目标资源通过RequestDispatcher的forward()方法访问时,Filter将被调用
D: 目标资源是通过声明式异常处理机制调用时, Filter将被调用 - 下列选项中,用于匹配拦截器所过滤的URL的元素是( )
A: <filter-mapping>
B: <url-pattern>
C: <filter >
D: <filter-name>
四、 简答题
- 简述Servlet事件监听器的作用。
答案
一、 填空题 - request
- attributeRemoved()
- ServletContext
- ServletRequestListener
- 相反
二、 判断题 - 错
- 错
- 错
- 错
- 对
三、 选择题 - A
- C
- C
- C
- B
四、 简答题
1.监听Web应用程序中ServletContext、HttpSession和ServletRequest等域对象的创建和销毁过程。
2.监听ServletContext、HttpSession和ServletRequest等域对象属性的修改。
3.感知绑定到HttpSession域中某个对象的状态。
第9章 JDBC
习题
一、 填空题
- ResultSet接口中的常量TYPE_SCROLL_INSENITIVE,所代表的含义是【 】。
- Statement提供了一个子接口【 】,它可以实现SQL的预编译。
- 使用DriverManager.registerDriver()进行驱动注册时,会导致数据库驱动被注册【 】次。
- ResultSet接口中定义了大量的getXXX()方法,如果使用字段的索引来获取指定的数据,字段的索引是从【 】开始的。
- Connection接口的【 】方法用于创建一个PreparedStatement对象来将参数化的SQL语句发送到数据库。
二、 判断题 - 对于相同的SQL语句,Statement对象每次执行时,都会对其进行编译。( )
- 使用DriverManager.registerDriver进行驱动注册时,数据库驱动会被注册1次。( )
- Statement接口的execute(String sql)返回值是boolean,它代表sql语句的执行是否成功。( )
- PreparedStatement是Statement的子接口,用于执行预编译的SQL语句。( )
- 使用JDBC的应用程序可以直接与不同的数据库进行连接,而不需要依赖于底层数据库驱动。( )
三、 选择题 - 下列选项中,能够实现预编译的是( )
A: Statement B: Connection C: PreparedStatement D: DriverManager - Statement接口中executeQuery()方法的返回值是( )
A: ResultSet B: int C: Boolean D: Result - 下列选项中,关于Statement描述错误的是( )
A: Statement是用来执行SQL语句的
B: Statement是PreparedStatement的子接口
C: 获取Statement实现需要使用Connection的createStatement()方法
D: PreparedStatement能使用参数占位符,而Statement不行 - 下列关于JDBC驱动的说法中,正确的是( )
A: 用JDBC连接数据库,必须使用连接池
B: 用JDBC连接数据库,使用连接池就不需要导入数据库驱动
C: 操作不同的数据库可以使用相同的驱动
D: 无论如何,只要使用JDBC,那么就要使用JDBC驱动 - 下面选项,关于ResultSet中游标指向的描述正确的是( )
A: ResultSet对象初始化时,游标在表格的第一行
B: ResultSet对象初始化时,游标在表格的第一行之前
C: ResultSet对象初始化时,游标在表格的最后一行之前
D: ResultSet对象初始化时,游标在表格的最后一行
四、 简答题 - 简述JDBC编程的6个开发步骤。
答案
一、 填空题
- 结果集可滚动
- PreparedStatement
- 2
- 1
- prepareStatement(String sql)
二、 判断题 - 对
- 错
- 错
- 对
- 错
三、 选择题 - C
- A
- B
- D
- B
四、 简答题
1.加载并注册数据库驱动
2.通过DriverManager获取数据库连接
3.通过Connection对象获取Statement对象
4.使用Statement执行SQL语句
5.操作ResultSet结果集
6.回收数据库资源
第10章 数据库连接池和DBUtils工具
习题
一、 填空题
- 自定义ResultSetHandler接口的实现类时,只要重写【 】方法,就可以实现结果集的处理。
- 将结果集中的第一行数据封装到一个对应的JavaBean实例中,可选择ResultSetHandler接口的【 】子类。。
- DBUtils类为了方便方法的调用 ,所提供的方法都是【 】方法。
- C3P0的配置文件c3p0-config.xml必须放在工程的【 】目录下。
- 我们可以使用【 】工厂类读取配置文件,创建数据源对象,获取数据库连接对象。
二、 判断题 - ResultSetHandler接口用于处理ResultSet结果集,它可以将结果集中的数据转为不同的形式。( )
- QueryRunner类的update()方法只能用于执行update语句。( )
- commons-dbutils类库封装了JDBC,由Apache组织提供,用于简化JDBC的编码工作量。( )
- DBCP是数据库连接池(DataBase Connection Pool)的简称,是Oracle公司下的开源连接池实现,也是Tomcat服务器使用的连接池组件。( )
- 数据库连接池,可有效的解决频繁创建和断开Connection对象的操作,从而提高数据库的访问效率。( )
三、 选择题 - 下面关于自定义ResultSetHandler接口实现类的描述,正确的是( )
A: 通过重写handle()方法,从而实现结果集的处理
B: 通过重写update()方法,实现结果集的处理
C: 通过重写query()方法,实现结果集的处理
D: 通过重写delete()方法,实现结果集的处理 - 下面选项中,关于DBUtils类中用于装载并注册JDBC驱动程序的方法是( )
A: close()方法
B: closeQuietly()方法
C: commitAndCloseQuietly()方法
D: loadDriver()方法 - 下面关于commons-dbutils与JDBC的关系,描述正确的是( )
A: commons-dbutils是一个对JDBC进行简单封装的工具
B: commons-dbutils是sun公司提供的用来代替JDBC的新技术
C: commons-dbutils必须与连接池一起使用
D: commons-dbutils中的QueryRunner只能用于查询操作 - 下面关于C3P0配置文件中
<named-config>
结点可出现的次数是( )
A: 1次
B: 0次
C: 0次或1次
D: 0次或多次 - 下面选项中,用于设置dbcp连接池初始化连接数目的方法是( )
A: setMaxActive (int maxIdle) B: setMinIdle(int minIdle)
C: setInitialSize(int initialSize) D: setInitial(int initialSize)
四、 简答题 - 简述数据库连接池的优点。
答案
一、 填空题
- handle()
- BeanHandler
- 静态
- src
- BasicDataSourceFactory
二、 判断题 - 对
- 错
- 对
- 错
- 对
三、 选择题 - A
- D
- A
- D
- C
四、 简答题
1.允许应用程序重复使用现有的数据库连接,而不是重新建立。
2.当连接完毕后,连接池会将该连接回收,并交付其他的线程使用。
3.减少创建和断开数据库连接的次数,提高数据库的访问效率。
第11章 JSP开发模型
习题
一、 填空题
- MVC模式将软件程序分为3个核心模块:模型(Model)、视图(View)和【 】。
- 在JSP Model 2架构模型有效地实现了整个程序页面显示、流程控制和【 】的分离。
- 在JSP Model 2架构模型采用JSP+【 】+ JavaBean的技术。
- 在JSP Model 1中,使用JSP实现流程控制和页面显示,使用【 】对象封装数据和业务逻辑。
- 在Web开发中,为了更方便地使用JSP技术,Sun公司为JSP技术提供了两种开发模型:JSP Model1和【 】。
二、 判断题 - JSP Model 2架构模型采用JSP+Servlet+ JavaBean的技术,实际上它就是就是MVC(模型Model-视图View-控制器Controller)设计模式。( )
- 在Web开发中,为了更方便地使用JSP技术,Sun公司为JSP技术提供了三种开发模型:JSP Model1,JSP Model2和MVC模式。( )
- 控制器(Controller)是负责应用程序中处理用户交互的部分,它负责从模型中读取数据,控制用户输入,并向模型发送数据。( )
- MVC设计模式就是指JSP Model2模型。( )
- 模型(Model)负责管理应用程序的业务数据、定义访问控制以及修改这些数据的业务规则。( )
三、 选择题 - JSP Model2开发的系统中,实现控制器的是( )
A: JSP
B: HTML
C: JavaBean
D: Servlet - 在设计基于多层体系结构的大型web应用时,JSP充当界面并且系统要不断进行升级,下面选项中最适合的开发模式是( )
A: JSP Model1
B: Value Object
C: MVC
D: Proxy - 下列选项中,哪个是MVC设计模式中的视图?( )
A: JSP
B: Servlet
C: Action
D: JavaBean - 下面关于MVC设计模式的特点描述中,错误的是( )
A: 有利于开发中的分工
B: 使程序结构的耦合性降低
C: 有利于组件的重用
D: MVC设计模式适用于所有应用程序的开发 - 下面技术中,用于显示JavaBean中的数据信息的是( )
A: JSP
B: JS
C: Servlet
D: JavaBean
四、 简答题 - 请简述什么是JSP Model2。
答案
一、 填空题
- 控制器(Controller)
- 业务逻辑
- Servlet
- JavaBean
- JSP Model2
二、 判断题 - 对
- 错
- 错
- 错
- 对
三、 选择题 - D
- C
- A
- D
- A
四、 简答题
JSP Model2架构模型采用JSP+Servlet+ JavaBean的技术,此技术将原本JSP页面中的流程控制代码提取出来,封装到Servlet中,从而实现了整个程序页面显示、流程控制和业务逻辑的分离。实际上JSP Model2模型就是MVC(模型Model-视图View-控制器Controller)设计模式,其中控制器的角色是由Servlet实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。
第12章 文件上传和下载
习题
一、 填空题
- 使用URLEncoder类中的【 】方法,可成功解决文件下载过程中的乱码问题。
- ServletFileUpload类的【 】方法,用于判断请求消息中的内容是否是“multipart/form-data”类型。
- 用于设置单个上传文件大小的方法是【 】。
- 在文件上传过程中,【 】方法以流的形式返回上传文件的数据内容。
- Commons-FileUpload组件也是通过【 】技术来实现文件上传功能的。
二、 判断题 - 要实现文件的下载,不仅需要指定文件的路径,还需要在HTTP消息中设置两个响应消息头。( )
- 设置单个上传文件的大小的方法是setSizeMax()。( )
- ServletFileUpload类的getHeaderEncoding ()方法如果返回null,此时上传组件将采用系统默认的字符编码。( )
- 使用setRepository()方法,可设置上传文件所保存的临时文件目录。( )
- FileItem对象的getSize()方法返回该上传文件的大小,并以MB为单位。( )
三、 选择题 - 下面选项,可以解决文件下载的中文文件名乱码问题的类是( )
A: URLDecoder
B: URLEncoder
C: URL
D: DecoderURL - ServletFileUpload类的parseRequest()方法的返回值类型是( )
A: FileItem[]
B: Set<FileItem>
C: List<FileItem>
D: Map<FileItem>
- 下面用于设置上传文件所保存的临时文件目录的方法是( )
A: getDirectory ()
B: setDirectory()
C: getRepository ()
D: setRepository () - 下面用于返回List
<FileItem>
类型集合的方法是( )
A: parseRequest()
B: getRequest()
C: parseResponse()
D: getResponse () - 下面用于判断FileItem类对象封装的数据是否为普通文本表单字段的方法是( )
A: isForm()
B: isUploadField()
C: isField()
D: isFormField()
四、 简答题 - 简述文件上传时必须具备的两个前提条件。
答案
一、 填空题
- encode(String s, String enc)
- isMultipartContent()
- setFileSizeMax()
- getInputStream ()
- Servlet
二、 判断题 - 对
- 错
- 对
- 对
- 错
三、 选择题 - B
- C
- D
- C
- D
四、 简答题
1.必须要设置input输入项的name属性,否则浏览器将不会发送上传文件的数据。
2.必须把将表单页面的method属性设置为post方式,enctype属性设置为“multipart/form-data”类型。
第13章 传智书城项目设计
习题
一、 填空题
- 如今流行的电子商务平台包括B2B、B2C、C2C、O2O等。综合考虑,传智书城的设计建立为【 】模式的网上购物系统比较合适。
- B2C是【 】的缩写,即【 】。
- 登录传智书城前台系统后,可直接选购商品。当用户在商品详细页面中单击“购买”按钮后,会将该商品放入到【 】中。
- 传智书城核心实体对象包括:用户实体(user)、【 】、【 】、【 】、【 】。
- E-R图也称实体-联系图(Entity Relationship Diagram),它能够直观的表示实体类型和【 】之间的关联关系。
二、 判断题 - 所有的购物网站都是基于B2C的。( )
- 传智书城后台管理系统主要包括商品管理、销售榜单、公告管理、订单管理几大功能。( )
- 传智书城项目采用的Web服务器是Tomcat6.0。( )
- admin文件用于存储后台管理平台的所有页面图片。( )
- 传智书城项目中使用的数据库连接池是DBCP。( )
三、 选择题 - 以下关于唯一主键和联合主键说法错误的是()
A:唯一主键就是表中有唯一一个字段作为主键,且可以根据该主键查询出唯一记录
B:联合主键表示2个或多个字段组合作为主键,这个组合在数据表中是唯一的,且加了主键索引,可以根据这2或n个字段来查询唯一记录
C:一般情况下,在设计数据表的时候,采用唯一主键即可
D:联合主键中的任意主键可以为Null - 下面关于传智书城的描述,错误的是( )
A: 可以通过购物车一次购买多件商品
B: 用户必须登录后购买图书
C: 用户选择商品后可以在线提交订单
D: 可以在后台管理系统中购买商品 - 传智书城前台网站不包含以下哪个功能结构?( )
A:用户注册
B:用户登录
C:用户增删书籍
D:用户订单查看 - 系统在下面哪个表中设置了联合主键?( )
A: user表
B: products表
C: orders表
D: orderitem表 - 下面说法中关于E-R图说法正确的是()
A:E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述虚拟世界的概念模型。
B:构成E-R图的3个基本要素是实体类型、属性和联系
C:E-R图中用椭圆表示实体型;用矩形表示实体的属性;
D:E-R图可以表示数据的生命周期
四、 简答题 - 请简述传智书城项目环境搭建的主要步骤。
答案
一、 填空题
- B2C
- Business to Customer;企业对消费者
- 购物车
- 商品实体(products)、订单实体(orders)、订单项(orderitem)、公告栏实体(notice)
- 属性
二、 判断题 - 错
- 对
- 错
- 错
- 错
三、 选择题 - D
- D
- C
- D
- B
四、 简答题
1. 确定项目开发环境
2. 创建数据库表
3. 创建项目,引入JAR包
4. 配置c3p0-config.xml
5. 编写filter过滤器
6. 编写工具类DataSourceUtils
第14章 传智书城前台程序设计
习题
一、 填空题
- 在传智书城注册页面中,可以采用【 】方式切换验证码图片。
- 【 】是用户参与网站活动最直接的桥梁。
- 图书根据其【 】和【 】的不同,可以分为不同的类型。
- 用户在浏览商品时,可以通过【 】选择查看不同分类的图书。
- 本周热卖用于展示本周内【 】的两本图书。
二、 判断题 - 用户注册后,就可以使用网站中的所有功能。( )
- 用户激活时,需要连接外网。( )
- 购物车是通过浏览器中的Cookie实现的。( )
- 商品的类别是在数据表中定义的。( )
- 登录成功后,用户信息会存储到Session中。( )
三、 选择题 - 下列选项中,不属于普通用户权限的是( )
A: 添加图书到购物车。
B: 删除购物车中的商品。
C: 提交和支付订单。
D: 修改已提交的订单数量 - 下面关于购物车的描述正确的是( )
A: 单击书城图书下面的购买按钮后,该图书信息会被直接添加到购物车。
B: 购物车中的商品数量最少是0本。
C: 商品一旦添加到购物车,将无法删除。
D: 购物车中的商品数量可以无限添加。 - 下面关于订单功能描述正确的是( )
A: 结算中心的订单数量不可以修改。
B: 可以删除结算中心中的订单。
C: 结算中心中的默认收获人是用户本人。
D: 进入结算中心后,即可直接提交订单。 - 下面选项中,不熟悉传智书城的商品分类的是( )
A: 文学
B: 科学
C: 生活
D: 计算机 - 下面关于图书搜索功能描述正确的是( )
A: 当搜索框为空时,将搜索不到任何内容。
B: 搜索框内填写的内容必须与所要搜索的内容完全一致。
C: 每次搜索只能搜索到一本书。
D: 只要图书的名称中包含搜索的关键字,就可以搜索到。
四、 简答题 - 请简述用户登录模块的执行流程。
答案
一、 填空题
- 单击图片
- 用户注册
- 题材;内容
- 导航栏
- 销售数量最多
二、 判断题 - 错
- 对
- 错
- 错
- 对
三、 选择题 - D
- A
- C
- B
- D
四、 简答题
1.在用户执行登录操作时,系统首先会验证用户名和密码是否正确,如果正确,则继续检测用户是否被激活,如果不正确,则提示用户名或密码错误,用户需从新填写用户名和密码。如果用户名和密码正确,但是用户未被激活,则会在登录时提示用户未激活;如果用户已激活,就可以成功登录系统,系统会自动跳转到我的账户页面。
第15章 传智书城后台程序设计
习题
一、 填空题
- 后台管理系统的页面框架是通过【 】标签来组织的。
- 传智书城后台系统具有的主要功能模块包括商品管理、【 】、【 】以及公告管理。
- 通过后台系统中的商品管理模块可以实现图书信息在前台网站上的【 】展示。
- 为了便于管理人员查看和保留【 】数据,传智书城后台管理系统中提供了【 】模块。
- 传智书城后台管理系统中的订单管理模块主要实现三个功能,分别是查询订单列表、【 】和【 】。
二、 判断题 - 可以使用Excel打开.cvs文件。( )
- 订单管理模块中,只能查看订单,不能修改订单。( )
- 删除订单操作时,无需确认,即可直接删除。( )
- 添加商品和编辑商品所使用的是同一个JSP页面。( )
- 编辑商品时,所编剧的商品信息会在编辑页面全部显示。( )
三、 选择题 - 下列选项中,不属于后台页面框架的是( )
A: left.jsp。
B: right.jsp。
C: top.jsp。
D: bottom.jsp - 关于后台管理,下面描述正确的是( )
A: 后台管理员无需注册,就可以在商城中购买商品。
B: 后台管理员同样需要注册才能成功登录。
C: 普通用户和管理员登录后进入的是同一个页面。
D: 普通用户和管理员登录后进入的是不同页面。 - 可以通过下面哪种方式查询销售榜单( )
A: 年份
B: 类别
C: 商品名称
D: 商品数量 - 下列关于传智书城后台系统的页面框架中各个页面说法错误的是()
A:top.jsp包括后台管理系统的logo图、日期星期信息和登录系统功能。
B:bottom.jsp它可以用于显示后台系统的版权等信息。
C:left.jsp网站的左边页面,其中包括各模块的菜单,单击left.jsp中各模块的菜单,相应的内容会在主体部分中进行动态显示。
D:welcome.jsp网站的欢迎页面;属于后台系统的主体部分。 - 关于传智书城后台订单删除说法,正确的是( )
A:删除操作只删除了订单表中的相应订单。
B:当某个订单被删除后,订单项中的数据会为Null。
C:因为代码删除操作时使用了异常处理,如果订单项或者订单有一个删除失败了,则会进行异常处理,不会对其他数据有影响。
D:因为代码删除操作时开启了事务处理,如果订单项或者订单有一个删除失败了,事务将回滚。
四、 简答题 - 在传智书城后台商品列表页面单击编辑图标后,将会发送一个以“/findProductById ?id=${p.id}&type=admin”结尾的URL请求,请简述该请求中id和type的作用。
答案
一、 填空题
1.<frameset>
2. 销售榜单;订单管理
3. 动态
4. 销售历史;销售榜单
5. 查看订单详情;删除订单信息
二、 判断题
- 对
- 对
- 错
- 错
- 对
三、 选择题 - B
- D
- A
- A
- D
四、 简答题
URL中的参数id表示商品id,它用于区分具体的商品。参数type用来区分请求来自前台网站还是后台系统,如果是前台,则不传递type值,系统会跳转到前台网站的商品详细信息info.jsp页面;如果是后台,则type的值为admin,系统会跳转到后台系统的商品编辑edit.jsp页面。