- 1.网页开发基础
习题
- 填空题
- HTML是英文【 】的缩写。
- <body>标记用于定义HTML文档所要显示的内容,也称为【 】。
- 在表格标记中用于设置是否显示边框的属性是【 】。
- 引入CSS的方式有4种,分别为【 】、行内式(也称为内联样式)、【 】和导入式。
- W3C中将DOM标准分为3个不同的部分:【 】、【 】和【 】。
- 在CSS中,用于设置行间距的属性是【 】。
- 在CSS中,用于定义字体风格,如设置斜体、倾斜或正常字体的属性是【 】。
- 内嵌式是将CSS代码集中写在HTML文档的【 】标记中,并且用【 】标记定义。
- <input />标记有多个属性,其中【 】属性为其最基本的属性,用于指定不同的控件类型。
- 【 】是一个表示和处理文档的应用程序接口(API),可用于动态访问、更新文档的内容、结构和样式。
- 判断题
- 在实际开发中,开发者只需将后台数据展示在相应页面即可,无需关心前台界面中的JS代码。( )
- font-family属性设置字体时, 中文字体需要加英文状态下的引号,英文字体一般不需要加引号。( )
- 在文档对象节点树中,具有相同父节点的节点叫做“父节点”。( )
- 内嵌式是将CSS代码集中写在HTML文档的<head>头部标记中,并且用<style>标记定义。( )
- 在input控件中,当type值为text时,表示的是单行文本输入框。( )
- 在JavaScript中,运算符i++表示在使用i之前,使i的值加1;而++i表示在使用i之后,使i的值加1。( )
- font-variant属性用于设置变体(字体变化),一般用于定义小型大写字母,仅对英文字符有效。( )
- CSS基础选择器只有三种,分别是标记选择器、类选择器、id选择器。( )
- JavaScript不需要区分字母大小写。( )
- 在DOM文档的树形结构中,每个节点有且只有一个子节点。( )
- 选择题
- 分析下面的JavaScript代码 ,经过运算后m的值为( )。
var x=11; var y="number"; var m=x+y;
A: 11number
B: number
C: 11
D: 程序报错
- 下列选项中,可以在JavaScript警告框中写入 "Hello World"的是( )
A: alertBox="Hello World";
B: msgBox("Hello World");
C: alert("Hello World");
D: alertBox("Hello World");
- 下列选项中,哪个 HTML 元素中可以放置 Javascript 代码?( )
A: <script>
B: <javascript>
C: <js>
D: <scripting>
- 下列选项中,用来定义下拉列表的是( )。
A: <input/>
B: <textarea></textarea>
C: <select></select>
D: <form>
- 下列选项中,不是<img />标记属性的是( )
A: src
B: alt
C: width
D: href
- 下列选项中,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
答案
- 填空题
- Hyper Text Markup Language
- 主体标记
- border
- 链入式;内嵌式
- 核心DOM、XML DOM和HTML DOM
- line-height
- font-style
- <head>;<style>
- type
- DOM或文档对象模型
- 判断题
- 错
- 对
- 错
- 对
- 对
- 错
- 对
- 错
- 错
- 错
- 选择题
- A
- C
- A
- C
- B
- C
- B
- B
- B
- B
- Java Web概述
习题
- 填空题
- XML称为可扩展的标记性语言,格式良好的XML有且只能有【 】个根元素。
- Tomcat服务器的默认端口号是【 】。
- 定义元素的属性时,有四种设置说明:#REQUIRED ,#IMPLIED,【 】和默认值。
- 在XML文档中,元素一般是由开始标记,属性,【 】和结束标记构成。
- 在HTTP的8种请求方式中,最常用的是【 】和【 】。
- Tomcat的默认端口号是【 】。
- 在HTTP协议中,一个完整的请求消息是由请求行、【 】和实体内容三部分组成。
- HTTP是一种【 】式的协议。
- 在XML声明中,可以通过standalone属性来声明这个文档是否为独立的文档。默认情况下,standalone属性的值为【 】。
- 引用本地的DTD文件时,可以是相对于xml文档的相对路径,也可以是一个【 】路径。
- 判断题
- 当访问一个Web应用程序时,如果没有指定资源名称,则会访问默认的页面。( )
- 采取在servler.xml文件中配置虚拟目录,每次修改server.xml文件后,都需要重启服务器,否则修改的配置将不会生效。( )
- 一个web应用下子目录的命名没有特殊规定,可以随意命名。( )
- 属性是对标记进一步的描述和说明,一个标记只能有一个属性。( )
- XML文档中如果保存有中文字符,那么保存的文件编码格式一定要与文档声明的encoding的编码取值相同,否则将会产生中文乱码问题。( )
- 在配置一个WEB应用的默认页面时,一个WEB应用最多只能配置一个默认主页。( )
- 安装好Tomcat后,就可以直接启动运行了,并不要先安装JDK。( )
- 在HTTP响应消息中,第一行为响应状态行,紧接着的是若干响应消息头,服务器端通过响应消息头向客户端传递附加信息。( )
- 在一个DTD文件中,可以包含元素的定义、元素之间关系的定义、元素属性的定义以及实体和符号的定义。( )
- 在命名XML元素时,因为它是可扩展标记,所以元素名不需要遵守任何规范,可以随意编写。( )
- 选择题
- 下列选项中,可以成功修改Tomcat端口号为80的是( )
A: <Connect port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
B: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
C: <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
D: <Connect port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
- 下面选项中,哪个头字段用于告诉浏览器自动刷新页面的时间?( )
A: Server
B: Accept-Location
C: Refresh
D: Accept- Refresh
- 下面选项中,表示服务器错误的状态码是( )
A: 100
B: 404
C: 304
D: 500
- 下面选项中,哪个头字段用于告知服务器,客户端所使用的字符集?( )
A: Accept-Charset
B: Accept
C: Accept-Encoding
D: Accept-Language
- 下列关于XML的描述中,正确的是( )
A: 所有的XML元素都必须是小写的
B: 所有XML元素都必须正确地关闭
C: 所有XML文档都必须有DTD
D: 以上说法都正确
- 下面关于配置一个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
答案
- 填空题
- 1或一
- 8080
- #FIXED
- 元素内容
- GET;POST
- 8080
- 请求头
- 请求/响应
- no
- 绝对
- 判断题
- 对
- 对
- 错
- 错
- 对
- 错
- 错
- 对
- 对
- 错
- 选择题
- C
- C
- D
- A
- B
- D
- C
- A
- D
- C
- Servlet基础
习题
- 填空题
- 在Servlet开发中,实现了多个Servlet之间数据共享的对象是【 】。
- 在Servlet容器启动每一个web应用时,就会创建一个唯一的ServletContext对象,该对象和web应用具有相同的【 】。
- ServletConfig对象是由【 】创建出来的。
- 在HttpServletResponse接口中,实现请求重定向的方法是【 】。
- 用于监听ServletRequest对象生命周期的接口是【 】。
- Servlet容器启动时,会为每个Web应用创建一个唯一的【 】对象代表当前Web应用。
- 在配置整个Web应用的初始化参数时,可在web.xml中配置【 】元素来实现。
- 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到【 】对象中。
- 在web.xml文件中,一个<servlert-mapping>元素用于映射一个Servlet的对外访问路径,该路径也称为【 】。
- 在RequestDispatcher接口中,实现请求转发的方法是【 】。
- 判断题
- ServletConfig对象可以实现多个Servlet之间的数据共享。( )
- 一个<servlet-mapping>元素下配置多个<url-pattern>子元素能实现Servlet的多重映射。( )
- 一个Servlet可以映射多个虚拟路径。( )
- 使用Eclipse工具可以自动编译Servlet并生成该Servlet的相应配置信息。( )
- 在一个web.xml中只能配置一个监听器。( )
- ServletContext接口中定义了用于查询、增加、删除、设置ServletContext域属性的方法。( )
- 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到一个ServletConfig对象。( )
- 一个Servlet只能映射一个虚拟路径。( )
- 使用RequestDispatcher对象的include()方法实现请求包含后,浏览器显示的URL会发生变化的。( )
- <session-timeout>标签指定的超时必须为一个整数,如果这个整数是为0或负整数,则session永远不会超时。( )
- 选择题
- 下面选项中, 哪个方法用于返回映射到某个资源文件的URL对象( )
A: getRealPath(String path)
B: getResource(String path)
C: getResourcePaths(String path)
D: getResourceAsStream(String path)
- 下面选项中, 用于根据虚拟路径得到文件的真实路径的方法是( )
A: String getRealPath(String path)
B: URL getResource(String path)
C: Set getResourcePaths(String path)
D: InputStream getResourceAsStream(String path)
- 下面选项中, 用于设置ServletContext的域属性的方法是( )
A: setAttribute(String name,String obj)
B: setParameter(String name,Object obj)
C: setAttribute(String name,Object obj)
D: setParameter (String name,Object obj)
- 下列选项中,哪个是web.xml中配置初始化参数的标签?( )
A: <param-init>
B: <init-param>
C: <param>
D: <init>
- Eclipse工具开发Servlet会自动将src目录下的文件编译成class文件存放到哪个目录下( )
A: class
B: classes
C: lib
D: conf
- ServletContext接口中定义了用于查询、增加、删除、设置ServletContext域属性的方法。( )
- 当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到一个ServletConfig对象。( )
- 一个Servlet只能映射一个虚拟路径。( )
- 使用RequestDispatcher对象的include()方法实现请求包含后,浏览器显示的URL会发生变化的。( )
- <session-timeout>标签指定的超时必须为一个整数,如果这个整数是为0或负整数,则session永远不会超时。( )
答案
- ServletContext
- 生命周期
- Web容器(或Tomcat)
- redirect()
- ServletRequestListener
- ServletContext
- <context-param>
- ServletConfig
- 虚拟路径
- forward()
- 判断题
- 错
- 对
- 对
- 对
- 错
- 对
- 对
- 错
- 错
- 对
- 选择题
- B
- A
- C
- B
- B
- B
- D
- D
- D
- A
- 请求和响应
习题
- 填空题
- HttpServletResponse接口的sendRedirect()方法,该方法的实质是生成【 】响应码和Location响应头,并发送给客户端。
- 所谓请求重定向,指的是Web服务器接受到客户端的请求后,又再次引导【 】重新发送请求,指定了一个新的资源路径。
- 当传输文本时,如果编码和解码使用的码表不一致,就会导致【 】问题。
- response对象的getOutputStream()和getWriter()方法都可以发送响应消息体,但两者是【 】的,同时使用将产生IllegalStateException异常。
- 将字符转换成字节的过程称为编码,将字节转换成字符的过程称为【 】。
- 请求包含指的是使用【 】方法将Servlet请求转发给其它Web资源进行处理,响应消息中既包含了当前Servlet又包含了其它Web资源的响应消息。。
- 在HttpServletResponse接口中,定义了一个【 】方法,用于实现请求重定向。
- 我们可以通过response.setHeader("【 】","3")语句,使当前页面定时每3秒刷新一次。
- HttpServletResponse接口中,提供了一个【 】方法,该方法用于设置字符的编码方式。
- 当Servlet向客户端回送响应消息时,需要在响应消息中设置【 】。
- 判断题
- 转发的forward()方法,必须在响应提交给客户端之后被调用,否则将抛出IllegalStateException异常。( )
- 通过请求转发来实现目标资源的访问时,由于客户端发送了两次请求,所以浏览器地址栏发生改变。( )
- HttpServletRequest接口中的setCharacterEncoding()方法用于设置request对象获取请求参数的解码方式,它对于get与post请求都有效。( )
- 使用getIntHeader(String name) 方法时,如果获取到的头字段的值不能转为int类型,将发生NumberFormatException异常。( )
- 如果没有设置Content-Type头字段,那么setCharacterEncoding()方法设置的字符集编码不会出现在HTTP消息的响应头中。( )
- 转发的forward()方法,必须在响应提交给客户端之前被调用,否则将抛出IllegalStateException异常。( )
- include()方法实现请求包含时,响应消息中不包含当前Servlet响应消息,只有被包含进来的其它Web资源的响应消息。( )
- 通过请求转发来实现目标资源的访问是服务器内部的行为,对于客户端来说是一次请求过程。( )
- 在HttpServletRequest接口中,getParameterMap()方法的返回值是Map对象,该对象包含了请求消息中所有参数的值。( )
- 如果请求消息中没有包含指定名称的参数,则getParameter()方法返回null。( )
- 选择题
- 如果想要将页面传递来的用户名username为张三的数据存放在Requset对象中,以下哪种方式可以实现( )
A: String username=request.getParameter("张三");
B: String username=(String) request.getAttribute("张三");
C: request.setAttribute("username", "张三");
D: request.removeAttribute("张三");
- RequestDispatcher接口中,用于将请求从一个Servlet传递给另外的一个Web资源的方法是( )
A: forward(ServletResponse response,ServletRequest request)
B: include(ServletRequest request,ServletResponse response)
C: forward(ServletRequest request,ServletResponse response)
D: include(ServletResponse response,ServletRequest request)
- 使用request实现转发时,下列哪个路径的写法是正确的?()
A: 只能是相对路径
B: 只能是绝对路径
C: 相对路径和绝对路径都可以
D: 相对路径可以,但绝对路径不可以
- 通过配置Tomcat来解决GET请求参数的乱码问题,可以在server.xml文件中的Connector节点下添加的属性是( )
A: useBodyEncodingForURI=”false”
B: useBodyEncoding=”true”
C: useBodyEncodingForURI=”true”
D: useBodyEncoding=”false”
- 在HttpServletRequest接口中,用于返回请求消息的实体部分的字符集编码的方法是( )
A: getCharacter ()
B: getCharacterEncoding()
C: getEncoding()
D: getHeader(String name)
- 下面选项中关于请求包含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次
答案
- 302
- 客户端
- 乱码
- 互斥
- 解码
- include()或include(ServletRequest request,ServletResponse response)
- sendRedirect()
- Refresh
- setCharacterEncoding()
- 状态码
- 判断题
- 错
- 错
- 错
- 对
- 对
- 对
- 错
- 对
- 对
- 对
- 选择题
- C
- C
- C
- C
- B
- A
- C
- C
- B
- B
- 会话及会话技术
习题
- 填空题
- Tomcat容器中会话的有效时间可以在【 】文件中设置,默认会话过期时间为30分钟。
- 使用Session技术时,实质上是服务器与客户端,通过set-cookie响应头及cookie请求头,传递【 】属性来识别不同的客户端。
- Web应用中的会话指的是一个客户端(浏览器)与【 】之间连续发生的一系列请求和响应过程。
- Session是借助【 】来传递ID属性的。
- 使用Cookie类中的【 】方法会通知浏览器立即删除这个Cookie信息。
- URL重写可以使用【 】接口中,所提供的方法encodeURL(String url)和encodeRedirectURL(String url)来实现。
- Cookie技术用于将会话过程中的数据保存到【 】中,从而使浏览器和服务器可以更好地进行数据交互。
- Session的默认有效时长是【 】。
- Session是一种将会话数据保存到【 】端的技术。
- 当服务器向客户端发送Cookie时,其实质是在HTTP响应头字段中增加【 】响应头字段信息。
- 判断题
- Tomcat容器中如果将<session-timeout>元素中的时间值设置成0或一个负数,则表示会话永不超时。( )
- Session是一种将会话数据保存到服务器端的技术,需要借助Cookie技术来实现。( )
- Cookie的domain属性是用来指定浏览器访问的域,设置domain属性时严格区分大小写。( )
- Cookie的path属性设置后,只对当前访问路径所属的目录有效。( )
- 一次会话过程中,只允许客户端与服务器进行一次请求与响应过程。( )
- 无论浏览器是否支持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类有且仅有一个构造方法。( )
- 选择题
- 阅读下面代码:
Book book = BookDB.getBook(id);
HttpSession session = req.getSession();
List<Book> cart = (List) session.getAttribute("cart");
if (cart == null) {
cart = new ArrayList<Book>();
session.setAttribute("cart", cart);
}
cart.add(book);
下面选项中,哪个是对上述代码功能的正确描述?( )
A: 实现不同用户的不同浏览器之间共享同一个购物车中的数据
B: 实现不同的应用程序之间共享同一个购物车中的数据
C: 实现放在不同web容器中的不同应用程序共享同一个购物车中的数据
D: 实现了每个不同的浏览器都有自己对应的一个购物车,来实现数据共享
- Tomcat服务器的默认会话超时时间是( )
A: 30秒
B: 30分钟
C: 30毫秒
D: 30小时
- 下面选项中,用于强制使Session对象无效的方法是( )
A: request. invalidate ();
B: session. validate ();
C: response. invalidate ();
D: session. invalidate ();
- 下面选项中,当存在Session对象直接返回,否则返回null的方法是( )
A: request.getSession();
B: request.getSession(true);
C: request.getSession(false);
D: response.getSession();
- 下列选项中,能够用于获取客户端所有cookie对象的方法是( )
A: List<Cookie> cookies = request.getCookies();
B: Cookie[] cookies = request.getCookies();
C: List<Cookie> cookies = response.getCookies();
D: Cookie[] cookies = response.getCookies();
- 下列选项中,用于对超链接和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: 默认值是无穷大
答案
- web.xml
- ID
- Web服务器(或服务器)
- Cookie技术
- setMaxAge(0)
- HttpServletResponse
- 客户端(或浏览器)
- 30分钟
- 服务器
- Set-Cookie
- 判断题
- 对
- 对
- 错
- 错
- 对
- 对
- 错
- 错
- 错
- 对
- 选择题
- D
- B
- D
- C
- B
- A
- B
- C
- D
- B
- JSP技术
习题
- 填空题
- JSP页面中out对象是javax.servlet.jsp.JspWriter类的实例对象,它的作用与ServletResponse.getWriter()方法返回的PrintWriter对象非常相似,都是用来向【 】发送文本形式的实体内容。不同的是,out对象的类型为【 】,它相当于一种带缓存功能的PrintWriter。
- 在JSP页面中,经常需要处理一些异常信息,这时,可以通过【 】对象来实现。
- 除了RequestDispatcher接口的forward()方法可以实现转发外,还可以通过JSP的【 】标签来实现转发。
- page指令的buffer属性指定缓存的大小,只能取值为none或指定数据大小,但它要有效,还需要设置【 】的值为true。
- 当用户第一次访问JSP页面时,该页面都会被JspServlet翻译成一个Servlet源文件,然后将源文件编译为后缀名为【 】的文件。
- 需要在JSP页面静态包含一个文件时,可采用【 】指令来实现。
- 使用EL表达式中的pageContext对象,可以成功的获取到了request、response、【 】和servletConfig对象中的属性。
- JSP页面中的静态HTML内容称之为【 】。
- 在JSP文件中,可以同时存在HTML代码与【 】代码。
- JSP全名是Java Server Page,它是建立在【 】规范之上的动态网页开发技术。
- 判断题
- JSP隐式对象out可以通过response.getWriter()方式获取,然后再通过println()或者write()方法向页面发送文本内容。( )
- EL表达式中的隐式对象与JSP中的隐式对象除了pageContext对象是它们共有的,其它隐式对象则毫不相关。( )
- Include指令用于静态包含一个文件,它的file属性只能取相对路径。( )
- page指令的属性中,所有的属性都只能出现一次,否则会编译失败。( )
- JSP文件与html文件有所不同,它不可以直接在浏览器中运行。( )
- EL表达式中的隐式对象与JSP中的隐式对象除了pageContext对象是它们共有的,其它隐式对象则毫不相关。( )
- 在处理JSP页面的异常时,如果page指令的errorPage属性和web.xml文件中的<error-page>元素都进行了配置,那么这两项配置都会起作用。( )
- page指令的属性中,所有的属性都只能出现一次,否则会编译失败。( )
- Tomcat在将JSP页面翻译成Servlet程序时,会忽略JSP注释的内容,不会将注释信息发送到客户端。( )
- JSP文件与html文件一样,在编写好后都可以直接在浏览器中运行。( )
- 选择题
- 阅读下面代码片段:
<body>
<%
out.println("first line ");
response.getWriter().write("second line ");
%>
</body>
当使用浏览器访问该jsp页面时会什么结果( )
A: 将上述代码原样输出
B: first line
C: 先输出first line,再输出second line
D: 先输出second line,再输出first line
- 下面关于动态包含的语法格式,书写正确的是( )
A: <jsp:forward file=”relativeURL” />
B: <jsp:forward path=”relativeURL” />
C: <jsp:forward page=”relativeURL” />
D: <%@include file=”relativeURL” />
- 在JSP中,exception隐式对象所对应的类是( )
A: java.lang.Exception
B: java.lang.Throwable
C: java.lang.ExceptionThrowable
D: java.lang. ThrowableException
- 下列是page指令中的一些属性,其中,用于告知客户端浏览器采用什么文档类型的属性是( )
A: session
B: contentType
C: content
D: isThreadSafe
- 阅读下列JSP代码片断:
<% int x=5; %>
<%! private int m(int a){ return a+1;} %>
<% x=3; %>
x=<%=x%>,<%=m(x)%>
其运行结果是( )
A: x=3,6
B: x=3,4
C: x=5,4
D: 编译错误
- 下面选项中,属于<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
答案
- 客户端;JspWriter
- exception
- <jsp:forward>
- autoFlush
- .class
- include
- servletContext
- JSP模版元素
- Java
- Servlet
- 判断题
- 错
- 对
- 对
- 错
- 对
- 对
- 错
- 错
- 对
- 错
- 选择题
- D
- C
- A
- B
- B
- D
- B
- B
- C
- C
- EL表达式和JSTL
习题
- 填空题
- JSTL标签库是由【 】个不同功能的标签库共同组成。
- EL表达式的【 】隐式对象用于获取客户端的Cookie信息。
- EL的【 】隐式对象,代表application域中用于保存属性的Map对象。
- 在JavaBean中,如果一个属性只有setter方法,则该属性为【 】。
- 【 】是一个【 】标签库,它包含了实现Web应用中通用操作的标签。
- 使用JSTL时需导入【 】和standard.jar这两个JAR包。
- 如果要在JSP页面中导入Core标签库,需要使用【 】指令。
- EL表达式中的点运算符,用于访问JSP页面中某些对象的【 】。
- 在JavaBean中,如果一个属性既有getter方法,又有setter方法,则该属性为【 】。
- EL的【 】对象用来获取请求参数的所有值,并返回请求参数所有值组成的数组。
- 判断题
- EL表达式的initParam隐式对象可获取web.xml文件中配置的Servlet信息。( )
- JSTL标签库中的Core标签库的URI为http://java.sun.com/jsp /core。( )
- EL表达式的cook隐式对象用于获取客户端的Cookie信息。( )
- EL表达式中的隐式对象与JSP中的隐式对象除了pageContext对象是它们共有的,其它隐式对象则毫不相关。( )
- EL表达式中条件运算符用于执行某种条件判断,它类似于Java语言中的if-else语句。( )
- 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对象。( )
- 选择题
- 在c_if.jsp有如下部分代码:
<c:if test="true" >
true
</c:if>
<c:else test="false" >
false
</c:else>
对于上述代码片段说法正确的是( )
A: 该页面代码部署启动时,控制台会报错
B: 在该页面会出现编译错误,并有红叉提示
C: 访问该页面会出现结果:true false
D: 访问该页面时,浏览器没有任何信息显示
- 阅读下面代码片段:
c_out.jsp:
<%--第1个out标签 --%>
userName1属性的值为:
<c:out value="username1" default="unknown" />
<%--第2个out标签 --%>
userName2属性的值为:
<c:out value="username2">
unknown
</c:out>
当使用浏览器访问c_out.jsp时会什么结果( )
A: userName1属性的值为:unknown userName2属性的值为: username2
B: userName1属性的值为:username1 userName2属性的值为: username2
C: userName1属性的值为: null userName2属性的值为: null
D: userName1属性的值为:username1 userName2属性的值为: unknown
- 下面隐式对象中,用于获取请求头字段的某个值的是( )
A: header
B: headerValue
C: headerValues
D: headerScope
- 已知JSP页面中存在如下代码:
<% session.setAttribute("pageContext", "itcast"); %>
${pageContext}
则以下说法,正确的是( )
A: 将出现语法错误,因为pageContext是保留字
B: 运行时存在异常
C: 不出现异常,输出null
D: 不出现异常,输出pageContext对象
- 下面选项中,与request.getAttribute(“p”);等效的EL表达式是( )
A: $<request.p>
B: $[requestScope.p]
C: $(request.p)
D: ${requestScope.p}
- 下面隐式对象中,返回结果为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
答案
- 5
- cookie
- applicationScope
- 只写属性
- Core;核心
- jstl.jar
- taglib
- 属性
- 读写属性
- paramValues
- 判断题
- 错
- 错
- 错
- 对
- 对
- 错
- 对
- 对
- 对
- 错
- 选择题
- C
- B
- A
- D
- D
- C
- D
- D
- A
- D
- Servlet高级
习题
- 填空题
- 为了实现统计网站当前在线人数,当用户登录成功将信息保存到session域中时,可以使用【 】监听器在后台工作,以计算当前在线人数。
- 一个web.xml中可以配置【 】个监听器。
- 用于监听HttpSession对象生命周期的接口是【 】。
- 产生事件的对象称为【 】。
- 元素< dispatcher >的默认取值是【 】。
- 新添加一个属性到【 】域中,则所对应的监听器类要获得该值,可以使用ServletRequestAttributeEvent对象的方法。
- 当删除被监听对象中的一个属性时,Web容器调用事件监听器的【 】方法进行响应。
- 实现ServletContextAttributeListener接口的监听器类,可以用于监听【 】对象中的属性变更。
- 用于监听ServletRequest对象生命周期的接口是【 】。
- Filter链中各个Filter执行请求时的拦截顺序与响应时的拦截顺序【 】。
- 判断题
- 实现ServletRequestAttributeListener接口的监听器类,可以用于监听ServletRequest对象中的属性变更。( )
- <session-timeout>标签指定的超时必须为一个整数,如果这个整数是为0或负整数,则session永远不会超时。( )
- 在web.xml中,一个 <listener>元素中可以出现多个< listener-class>子元素。( )
- Servlet事件监听器根据监听事件的不同,可以分为两类。( )
- 获取FilterConfig对象,可以通过手动调用它的构造方法,从而进行它的实例化。( )
- 新添加一个属性到session域中,则所对应的监听器类要获得该值,可以使用HttpSessionAttributeListener对象的方法。( )
- 在web.xml中,一个 <listener>元素中可以出现多个< listener-class>子元素。( )
- 在Filter中实现统一全站编码时,对于请求方式post和get解决乱码问题的方式是相同的。( )
- <dispatcher>元素的取值共有三个,分别是:REQUEST,INCLUDE,FORWARD。( )
- 一个Filter对象中的doFilter方法可以被多次调用。( )
- 选择题
- 下面选项中,关于统计网站当前在线人数的计数器count变量应该保存的域范围是( )
A: request
B: session
C: application
D: page
- 已知web.xml中存在如下配置:
<session-config>
<session-timeout>2</session-timeout>
</session-config>
下面的说法,正确的是( )
A: 在空闲状态下,2秒后将导致session对象销毁
B: 在空闲状态下,2分钟后将导致session对象销毁
C: 在空闲状态下,2毫秒后将导致session对象销毁
D: 在空闲状态下,2小时后将导致session对象销毁
- 下面选项中,能够返回Filter设置的所有初始化参数名称的方法是( )
A: getServletContext()
B: getFilterName()
C: getInitParameter(String name)
D: getInitParameterNames()
- 关于Filter链的执行顺序,是由web.xml文件中的哪个元素决定的( )
A: <filter>元素顺序决定
B: <filter-mapping>元素顺序决定
C: <filter-class>元素顺序决定
D: 由过滤器类名的顺序决定
- 下列选项中,哪个元素可以指定Filter拦截的资源被容器调用的方式( )
A: <filter-name>
B: <url-pattern>
C: <filter-class>
D: <dispatcher>
- 下面选项中,用于监听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>
答案
- HttpSessionListener
- 零或多
- HttpSessionListener
- 事件源
- REQUEST
- request
- attributeRemoved()
- ServletContext
- ServletRequestListener
- 相反
- 判断题
- 对
- 对
- 错
- 错
- 错
- 错
- 错
- 错
- 错
- 对
- 选择题
- C
- B
- D
- B
- D
- A
- C
- C
- C
- B
- JDBC
习题
- 填空题
- ResultSet接口中的常量CONCUR_READ_ONLY,所代表的含义是【 】。
- ResultSet接口中,能将游标移动到此 ResultSet 对象的最后一行的方法是【 】。
- PreparedStatement是Statement的子接口,用于执行【 】的SQL语句。
- Statement接口的executeUpdate(String sql)方法用于执行SQL中的insert、【 】和delete语句。
- JDBC常用API 中,【 】类用于加载JDBC驱动并且创建与数据库的连接。
- ResultSet接口中的常量TYPE_SCROLL_INSENITIVE,所代表的含义是【 】。
- Statement提供了一个子接口【 】,它可以实现SQL的预编译。
- 使用DriverManager.registerDriver()进行驱动注册时,会导致数据库驱动被注册【 】次。
- ResultSet接口中定义了大量的getXXX()方法,如果使用字段的索引来获取指定的数据,字段的索引是从【 】开始的。
- Connection接口的【 】方法用于创建一个PreparedStatement对象来将参数化的SQL语句发送到数据库。
- 判断题
- 对于相同的SQL语句,Statement对象只会对其编译执行一次。( )
- 使用DriverManager.registerDriver进行驱动注册时,数据库驱动会被注册2次。( )
- ResultSet接口表示select查询语句得到的结果集,该结果集封装在一个逻辑表格中。( )
- Statement接口的executeUpdate(String sql)返回值是int,它表示数据库中受该SQL语句影响的记录的数目。( )
- JDBC的全称是Java数据库连接,它是一套用于执行HTML语句的Java API。( )
- 对于相同的SQL语句,Statement对象每次执行时,都会对其进行编译。( )
- 使用DriverManager.registerDriver进行驱动注册时,数据库驱动会被注册1次。( )
- Statement接口的execute(String sql)返回值是boolean,它代表sql语句的执行是否成功。( )
- PreparedStatement是Statement的子接口,用于执行预编译的SQL语句。( )
- 使用JDBC的应用程序可以直接与不同的数据库进行连接,而不需要依赖于底层数据库驱动。( )
- 选择题
- 下列选项,可用于存储结果集的对象是( )
A: ResultSet
B: Connection
C: Statement
D: PreparedStatement
- 下面选项中,能够将游标从当前位置向下移一行的方法是( )
A: next()
B: absolute(introw)
C: previous()
D: last()
- 下面关于executeQuery(String sql)方法,说法正确的是( )
A: 可以执行insert语句
B: 可以执行update语句
C: 可以执行select语句
D: 可以执行delete语句
- 下面Statement接口的方法中,用于执行各种SQL语句的是( )
A: executeUpdate(Stringsql)
B: executeQuery(Stringsql)
C: execute(Stringsql)
D: executeDelete(Stringsql)
- 下面选项中,用于将参数化的SQL语句发送到数据库的方法是( )
A: prepareCall(Stringsql)
B: prepareStatement(Stringsql)
C: registerDriver(Driverdriver)
D: createStatement()
- 下列选项中,能够实现预编译的是( )
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对象初始化时,游标在表格的最后一行
答案
- 以只读形式打开结果集
- last()
- 预编译
- update
- DriverManager
- 结果集可滚动
- PreparedStatement
- 2
- 1
- prepareStatement(String sql)
- 判断题
- 错
- 对
- 对
- 对
- 错
- 对
- 错
- 错
- 对
- 错
- 选择题
- A
- A
- C
- C
- B
- C
- A
- B
- D
- B
- 数据库连接池和DBUtils工具
习题
- 填空题
- DBCP的全称是【 】。
- JDBC提供了【 】接口,它负责与数据库建立连接,提供统一的标准数据源。
- 单独使用DBCP数据源时,需要在应用程序中导入【 】和【 】两个JAR包。
- 数据源对象的创建方式有两种,一种是通过【 】直接创建数据源对象,另一种是通过【 】创建数据源对象。
- C3P0的核心类是【 】。
- 自定义ResultSetHandler接口的实现类时,只要重写【 】方法,就可以实现结果集的处理。
- 将结果集中的第一行数据封装到一个对应的JavaBean实例中,可选择ResultSetHandler接口的【 】子类。。
- DBUtils类为了方便方法的调用 ,所提供的方法都是【 】方法。
- C3P0的配置文件c3p0-config.xml必须放在工程的【 】目录下。
- 我们可以使用【 】工厂类读取配置文件,创建数据源对象,获取数据库连接对象。
- 判断题
- ResultSet接口用于处理ResultSet结果集,它可以将结果集中的数据转为不同的形式。( )
- 在ResultSetHandler接口中,提供了一个方法handle (java.sql.ResultSet rs),可以通过自定义一个实现ResultSetHandler接口的类,然后通过重写handle()方法,实现结果集的处理。( )
- C3P0配置文件中<named-config>结点代表自定义配置,一个配置文件中可以有零个或多个的自定义配置。( )
- 我们可以使用BasicDataSourceFactory工厂类读取配置文件,创建数据源对象,然后获取数据库连接对象。( )
- DBCP是数据库连接池(DataBase Connection Pool)的简称,是Sun公司下的开源连接池实现,也是Tomcat服务器使用的连接池组件。( )
- ResultSetHandler接口用于处理ResultSet结果集,它可以将结果集中的数据转为不同的形式。( )
- QueryRunner类的update()方法只能用于执行update语句。( )
- commons-dbutils类库封装了JDBC,由Apache组织提供,用于简化JDBC的编码工作量。( )
- DBCP是数据库连接池(DataBase Connection Pool)的简称,是Oracle公司下的开源连接池实现,也是Tomcat服务器使用的连接池组件。( )
- 数据库连接池,可有效的解决频繁创建和断开Connection对象的操作,从而提高数据库的访问效率。( )
- 选择题
- 已知,存在 QueryRunner对象 runner , SQL语句:String sql = "select * from user where id=?";下面操作中,能实现查询指定记录的选项是( )
A: User user=(User)runner.query(sql, new BeanListHandler(User.class), new Object[]{id});
B: User user=(User)runner.query(sql, new BeanHandler(User.class));
C: User user=(User)runner.query(sql, new BeanListHandler(User.class), id);
D: User user=(User)runner.query(sql, new BeanHandler(User.class), new Object[]{id});
- 下面关于自定义ResultSetHandler接口实现类的描述,正确的是( )
A: 通过重写handle()方法,从而实现结果集的处理
B: 通过重写update()方法,实现结果集的处理
C: 通过重写query()方法,实现结果集的处理
D: 通过重写delete()方法,实现结果集的处理
- 下面选项中,关于DBUtils类中用于装载并注册JDBC驱动程序的方法是( )
A: close()方法
B: closeQuietly()方法
C: commitAndCloseQuietly()方法
D: loadDriver()方法
- 下面选项中,属于QueryRunner类的query()方法可执行的操作语句是( )
A: SELECT语句
B: DELETE语句
C: UPDATE语句
D: INSERT语句
- 关于DriverManager和DataSource接口中getConnection()方法的区别,解释正确的是( )
A: 前者需要close(),而后者不需要close()
B: 前者的close()是释放Connection,而后者的close()只会把Connection归还给连接池
C: 两者没有区别
D: DataSource的getConnection()每次都会创建新的数据库链接
- 下面关于自定义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)
答案
- 数据库连接池
- DataSource
- commons-dbcp.jar;commons-pool.jar
- BasicDataSource类;读取配置文件
- ComboPooledDataSource
- handle()
- BeanHandler
- 静态
- src
- BasicDataSourceFactory
- 判断题
- 错
- 对
- 对
- 对
- 错
- 对
- 错
- 对
- 错
- 对
- 选择题
- D
- A
- D
- A
- B
- A
- D
- A
- D
- C
- JSP开发模型
习题
- 填空题
- 为了更方便地使用JSP技术,Sun公司为JSP技术提供了两种开发模型:【 】和【 】。
- JSP Model1采用【 】的技术,将页面显示和业务逻辑分开。
- JSP Model2模型就是【 】设计模式,其中控制器的角色是由Servlet实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。
- 【 】负责管理应用程序的业务数据、定义访问控制以及修改这些数据的业务规则。
- 控制器(Controller)是负责应用程序中处理【 】的部分。
- MVC模式将软件程序分为3个核心模块:模型(Model)、视图(View)和【 】。
- 在JSP Model 2架构模型有效地实现了整个程序页面显示、流程控制和【 】的分离。
- 在JSP Model 2架构模型采用JSP+【 】+ JavaBean的技术。
- 在JSP Model 1中,使用JSP实现流程控制和页面显示,使用【 】对象封装数据和业务逻辑。
- 在Web开发中,为了更方便地使用JSP技术,Sun公司为JSP技术提供了两种开发模型:JSP Model1和【 】。
- 判断题
- JSP Model1架构模型采用JSP+Servlet+JavaBean的技术,实际上它就是就是MVC(模型Model-视图View-控制器Controller)设计模式。( )
- 在JSP Model1模型中,封装数据和处理数据的业务逻辑交给了JavaBean组件,JSP只负责接收用户请求和调用JavaBean组件来响应用户的请求。( )
- 在JSP Model2模型中,控制器的角色是由Servlet实现,视图的角色是由JSP页面实现。( )
- MVC设计模式,是一种软件设计模式,它提供了一种按功能对软件进行模块划分的方法。( )
- 控制器负责管理应用程序的业务数据、定义访问控制以及修改这些数据的业务规则。( )
- 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
- MVC模式中用于负责与用户交互并展示模型中数据的模块是( )
A: 模型(Model)
B: 表示层(View)
C: 视图(View)
D: 控制器(Controller)
- 下列选项中,哪个是MVC设计模式中的模型?( )
A: JSP
B: Servlet
C: Action
D: JavaBean
- 下面关于MVC设计模式的特点描述中,错误的是( )
A: 有利于开发中的分工
B: 使程序结构的耦合性增强
C: 有利于组件的重用
D: MVC设计模式是当前主流的设计模式之一
- 在JSP Model2模型中,接收浏览器请求的是( )
A: JSP
B: JS
C: Servlet
D: JavaBean
- 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 Model1;JSP Model2
- JSP+JavaBean
- MVC
- 模型(Model)
- 用户交互
- 控制器(Controller)
- 业务逻辑
- Servlet
- JavaBean
- JSP Model2
- 判断题
- 错
- 对
- 对
- 对
- 错
- 对
- 错
- 错
- 错
- 对
- 选择题
- A
- C
- D
- B
- C
- D
- C
- A
- D
- A
- 文件上传和下载
习题
- 填空题
- 如果下载的资源文件名为中文时,可以使用【 】类来解决下载文件所产生乱码问题。
- 文件下载时,需指定的两个响应消息头是【 】和Content-Type。
- ServletFileUpload类的parseRequest()方法用于解析出FORM表单中的每个字段的数据,并且返回值是【 】类型。
- DiskFileItemFactory类用于将请求消息实体中的每一个文件封装成单独的【 】对象。
- 文件上传时form表单的enctype属性取值是【 】。
- 使用URLEncoder类中的【 】方法,可成功解决文件下载过程中的乱码问题。
- ServletFileUpload类的【 】方法,用于判断请求消息中的内容是否是“multipart/form-data”类型。
- 用于设置单个上传文件大小的方法是【 】。
- 在文件上传过程中,【 】方法以流的形式返回上传文件的数据内容。
- Commons-FileUpload组件也是通过【 】技术来实现文件上传功能的。
- 判断题
- 使用URLEncoder类中的decode()方法,可成功解决文件下载过程中的乱码问题。( )
- 为了防止上传文件名重复,在上传文件的名称前面可添加UUID前缀。( )
- ServletFileUpload类的isMultipartContent()方法是一个静态方法,不用创建ServletFileUpload类的实例对象即可被调用。( )
- 设置所有上传文件的总大小的方法是setSizeMax()。( )
- FileItem类的getContentType ()方法获取普通表单字段将抛出异常。( )
- 要实现文件的下载,不仅需要指定文件的路径,还需要在HTTP消息中设置两个响应消息头。( )
- 设置单个上传文件的大小的方法是setSizeMax()。( )
- ServletFileUpload类的getHeaderEncoding ()方法如果返回null,此时上传组件将采用系统默认的字符编码。( )
- 使用setRepository()方法,可设置上传文件所保存的临时文件目录。( )
- FileItem对象的getSize()方法返回该上传文件的大小,并以MB为单位。( )
- 选择题
- 文件下载时,用于设定实体内容的MIME类型的响应头是( )
A: Content-Disposition
B: Content-Type
C: ContentEncoding
D: ContentAttachment
- 下面方法,用于判断请求消息中的内容是否是“multipart/form-data”类型的是( )
A: isMultipartData()
B: isMultipartFormData()
C: isMultipartContent()
D: isMultipartDataContent()
- 下面用于将请求消息实体中的文件封装成FileItem对象的是( )
A: DiskFileFactory类
B: ItemFactory类
C: DiskFileItemFactory类
D: FileItemFactory类
- 下面用于读取上传文件类型的方法是( )
A: getName()
B: getType()
C: getContentType()
D: getString()
- 关于Commons-FileUpload组件内部所使用的技术是( )
A: Servlet
B: JavaBean
C: EJB
D: Struts2
- 下面选项,可以解决文件下载的中文文件名乱码问题的类是( )
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()
答案
- URLEncoder
- Content-Disposition
- List<FileItem>
- FileItem
- multipart/form-data
- encode(String s, String enc)
- isMultipartContent()
- setFileSizeMax()
- getInputStream ()
- Servlet
- 判断题
- 错
- 对
- 对
- 对
- 错
- 对
- 错
- 对
- 对
- 错
- 选择题
- A
- C
- C
- C
- A
- B
- C
- D
- C
- D