JavaWeb 复习题库

全部题目与答案

一、单选题

1 单选题
下面关于HTTP响应消息的说法中正确的是( )
A 一个完整的响应消息主要包括响应状态行、响应消息头和实体内容
B 一个完整的响应消息主要包括响应消息头和实体内容
C 一个完整的响应消息只包括响应消息头和实体内容
D 以上说法都正确
答案: A
2 单选题
下列选项,关于HTTP消息描述正确的是( )
A HTTP请求消息和HTTP响应消息统称为HTTP消息
B 浏览器向服务器发送数据称为HTTP响应消息
C 服务器向浏览器发送数据称为HTTP请求消息
D 在HTTP消息中,所有信息对用户都是不可见的
答案: A
3 单选题
关于提交大量数据时,form表单的method属性取值是( )
A delete
B get
C put
D post
答案: D
4 单选题
下列选项中,不是标准的HTTP消息头字段的是( )
A Status
B Host
C Accept
D Referer
答案: A
5 单选题
程序中创建了一个Servlet,该Servlet重写了其父类的doGet()和doPost()方法,那么其父类可能是 ( )
A RequestDispatcher
B HttpServletResponse
C HttpServletRequest
D HttpServlet
答案: D
6 单选题
关于getParameter(String name)获取请求参数方法的说法中,正确的是( )
A 如果请求消息中没有包含指定名称的参数,getParameter()方法返回空字符串
B 如果请求消息中没有包含指定名称的参数,getParameter()方法返回null
C 如果请求消息中包含多个指定名称的参数,getParameter()方法返回最后一个出现的参数值
D 如果请求消息中包含多个指定名称的参数,getParameter()方法返回任意一个参数
答案: B
7 单选题
ServletRequest接口中用于获取请求客户端的IP地址的方法是( )
A getRemoteAddr()
B getRemoteHost()
C getRemotePort()
D getLocalAddr()
答案: A
8 单选题
关于servlet生命周期描述错误的是( )
A Servlet的每一次访问请求,Servlet容器都会调用一次Servlet的service( )方法
B 服务器启动时就会创建Servlet
C Servlet的生命周期可以由init,service,destory 3个方法体现
D 每请求一次Servlet就会调用一次service方法,但init方法只会调用一次
答案: B
9 单选题
下面选项中, 用于实现一个Web应用中的所有Servlet共享数据的对象是( )
A HttpSession
B ServletContext
C ServletConfig
D ServletRequest
答案: B
10 单选题
下列关于ServletContext的说法中,错误的是( )
A ServletContext对象用来保存当前Web应用中的所有信息
B 在一个Web应用中可以有多个ServletContext对象
C ServletContext接口封装了获取当前Web应用中资源文件的方法
D ServletContext对象中保存的属性可以被Web应用中的所有Servlet访问
答案: B
11 单选题
以下哪一个方法可以解决post请求时传递的中文参数乱码问题( )
A req.setCharacterEncoding(“utf-8”);
B new String( req.getParameter(key).getBytes() , “utf-8” );
C resp.setContentType(“text/html;charset=utf-8”);
D resp.getOutputStream( )
答案: A
12 单选题
下列哪一个方法用于设置HttpServletResponse的响应内容类型( )
A setParameter()
B setContentType()
C setAttribute()
D doPost()
答案: B
13 单选题
Servlet程序的入口点是( )
A init()
B main()
C service()
D doGet()
答案: A
14 单选题
下列关于Servlet接口的说法中,正确的是( )
A Servlet接口中只有一个默认的实现类HttpServlet
B Servlet接口中定义了4个抽象方法
C Servlet接口的抽象方法中,init()、service()和destroy()方法可以表现Servlet的生命周期
D GenericServlet类不是Servlet接口的实现类
答案: C
15 单选题
关于ServletRequest对象的setAttribute()方法,说法正确的是( )
A 如果ServletRequest对象中已经存在指定名称的属性,setAttribute()方法将会先删除原来的属性,然后再添加新的属性
B 如果ServletRequest对象中已经存在指定名称的属性,setAttribute()方法将会将新添加的属性直接覆盖原来的属性
C 如果ServletRequest对象中已经存在指定名称的属性,setAttribute()方法会直接在原来的属性后面追加上新的属性
D 以上说法都不正确
答案: A
16 单选题
在一个Web应用中有页面index.html,具体代码如下。
A 1
B 2
C 3
D 4
答案: D
17 单选题
下列选项中,使用cookie获取对象的用法错误的是( )。
A ${cookie.userName}
B ${cookie.userName.name}
C ${cookie.userName.value}
D ${cookie.userName.text}
答案: D
18 单选题
下面关于请求转发动作的语法格式,书写正确的是()
A <jsp:forward file="relativeURL" />
B <jsp:forward path="relativeURL" />
C <jsp:forward page="relativeURL" />
D <%@include file="relativeURL" />
答案: C
19 单选题
下面选项中,表示服务器内部错误的状态码是()
A 100
B 500
C 404
D 303
答案: B
20 单选题
在jQuery的Ajax请求方法中,最基本、最常用的方法之一是( )。
A $.load()
B $.getJSON()
C $.post()
D $.get()
答案: A
21 单选题
在jQuery提供的方法中,用于获取JSON格式的数据( )。
A $.load()
B $.getJSON()
C $.post()
D $.get()
答案: B
22 单选题
下面选项中,可以用来代替jQuery的符号是()。
A
B $
C &
D #
答案: B
23 单选题
在jQuery提供的方法中,用于发送请求的方法是( )。
A $.load()
B $.getJSON()
C $.getScript()
D $.get()
答案: D
24 单选题
已知代码<p id="test">这是另外一个段落</p>,通过选择器获取id为test的元素对象,下列选项中正确的是( )。
A #("test")
B $("test")
C $("id=test")
D $("#test")
答案: D
25 单选题
下列选项中,JSON数据格式正确的是( )。
A [{"name": "Java基础"}]
B [{"name": "Java基础",}]
C {["name": "Java基础"]}
D [{'name': 'Java基础'}]
答案: A
26 单选题
jQuery中最底层的Ajax方法是( )。
A $.get()
B $.post()
C $.ajax()
D $.ready()
答案: C
27 单选题
在$.ajax()的参数中,用于指定Ajax请求成功时所触发的回调函数的是( )。
A complete
B type
C success
D async
答案: C
28 单选题
jQuery的常用操作中,不包括下列选项中的( )。
A 选择器的使用
B 元素对象的操作
C 响应式编程
D 事件的绑定
答案: C
29 单选题
阅读下面的代码:
A 获取id值为myId的元素对象
B 获取元素的内容
C 设置元素的内容
D 事件的绑定
答案: A
30 单选题
关于Ajax说法错误的是( )。
A 通过Ajax技术可以通过JavaScrip发送到服务器,可实现只更新局部页面而不需要刷新整个页面
B Ajax技术的核心组件是XMLHttpRequest,它可以向服务器端发送异步请求
C Ajax并不是全新的技术,而是整合了现有的技术
D 请求集中
答案: D
31 单选题
下列选项中,客户端在一次会话过程中可以发送的请求次数是()
A 0
B 1
C 2
D 多次
答案: D
32 单选题
下列对于setMaxAge(-1)方法的描述中,正确的是()
A 表示通知浏览器保存这个Cookie信息
B 表示通知浏览器立即删除这个Cookie信息
C 表示当浏览器关闭时,Cookie信息会被删除
D 以上都不正确
答案: C
33 单选题
下列关于Cookie和Session的描述中,错误的是( )
A Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术
B HttpSession会话对象的默认保持时间可以修改
C HttpSession默认是基于Cookie运作的
D 浏览器可以接受任意多个Cookie信息保存任意长的时间
答案: D
34 单选题
Tomcat服务器的默认会话超时时间是( )
A 30秒
B 30分钟
C 30毫秒
D 30小时
答案: B
35 单选题
在一个Cookie对象中,若调用了setMaxAge(0)方法,表示()
A 将Cookie的持久化时间设置为0,意味着删除Cookie
B Cookie永久生效
C Cookie在10分钟后失效
D Cookie在30分钟后失效
答案: A
36 单选题
下列选项中,关于Cookie中保存的数据,说法正确的是( )
A 保存在服务器中
B 保存在客户端浏览器中
C 保存在数据库中
D 以上说法都不对
答案: B
37 单选题
下面选项中,哪个方法可以用于设置Cookie的有效域()
A String setPath(String pattern)
B void setPath(String pattern)
C void setDomain(String pattern)
D String setDomain(String pattern)
答案: C
38 单选题
下面关于setMaxAge(int expires)方法参数默认值的描述中,正确的是()
A 默认值是1
B 默认值是-1
C 默认值是0
D 默认值是无穷大
答案: B
39 单选题
下面选项中,用于强制使Session对象无效的方法是()
A request.invalidate ();
B session.validate ();
C response.invalidate ();
D session.invalidate ();
答案: D
40 单选题
在Java EE中,定义了getSession()方法的接口是()
A HttpServlet
B HttpSession
C HttpServletRequest
D HttpServletResponse
答案: C
41 单选题
下列选项中,能够用于获取客户端所有cookie对象的方法是( )
A List cookies = request.getCookies();
B Cookie[] cookies = request.getCookies();
C List cookies = response.getCookies();
D Cookie[] cookies = response.getCookies();
答案: B
42 单选题
下列选项中,正确设置Set-Cookie响应头字段的是()
A Set-Cookie; user=itcast; Path=/;
B Set-Cookie user=itcast; Path=/;
C Set-Cookie: user=itcast; Path=/;
D Set-Cookie: user=itcast Path=/;
答案: C
43 单选题
下面选项中,当存在Session对象直接返回,否则返回null的方法是( )
A request.getSession();
B request.getSession(true);
C request.getSession(false);
D response.getSession();
答案: C
44 单选题
若想修改Tomcat服务器的默认会话时间,则需要进入下列哪个文件中修改?( )
A 在<tomcat安装目录>\conf\context.xml文件中修改
B 在<tomcat安装目录>\conf\web.xml文件中修改
C 在<tomcat安装目录>\conf\server.xml文件中修改
D 在<tomcat安装目录> \conf\当前应用\web.xml文件中修改
答案: B
45 单选题
下列选项中,可以更改Cookie的存活时间的是()
A cookie.setMaxAge(3600*24);
B cookie.setPath("/app");
C cookie.setDomain("localhost");
D cookie.setValue("share");
答案: A

二、填空题

2 填空题
XML 声明
在 XML 声明中,可以通过 standalone 属性来声明这个文档是否为独立的文档。默认情况下,standalone 属性的值为
答案: no
3 填空题
CSS 样式类型
CSS 样式包括内联式、内嵌式、外链式和
答案: 导入式
4 填空题
XML 元素构成
在 XML 文档中,元素一般由开始标签、属性、 和结束标签构成。
答案: 元素内容
5 填空题
元素属性设置
定义元素的属性时,有四种设置说明:#REQUIRED、#IMPLIED、 和默认值。
答案: #FIXED
6 填空题
CSS 定义
CSS 中文译为 ,是用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标签性语言。
答案: 层叠样式表
7 填空题
XML 枚举约束
在 XML 文档中,如果将 XML 元素的内容限制为一组可接受的值,可以使用 约束。
答案: 枚举
8 填空题
表单构成
表单主要由 3 部分构成,分别是表单控件、提示信息和
答案: 表单域
10 填空题
浏览器对象模型
浏览器对象模型中,核心对象是 对象。(注意:单词首字母小写)
答案: window
11 填空题
端口查看命令
在命令行窗口输入 命令,可以查看本机运行的程序都占用了哪些端口号。
答案: netstat -na
12 填空题
Java 异常声明
Java 允许在方法的后面使用 关键字声明该方法有可能发生的异常。
答案: throw
13 填空题
动画对象实例
当使用 animator 对象创建动画时,通过调用 create() 方法返回的是一个 实例。
答案: AnimatorResult
14 填空题
HTTP 请求方式
HttpRequest 实例的 request() 方法的 options 参数的 属性用于设置请求方式。
答案: method
15 填空题
动画无限播放
在使用 animation 属性设置属性动画时,如果希望动画无限次播放,则需要将 AnimateParam 实例的 属性设置为 -1。
答案: iterations
16 填空题
权限类型
根据授权方式的不同,权限类型可分为
答案: system_grant
17 填空题
响应结果实例
在 Remote Communication Kit 中, 实例表示响应结果。
答案: Response
18 填空题
资源释放方法
在完成 HttpRequest 实例的请求后,为了释放资源,应该调用 方法。
答案: destroy()
19 填空题
文件上传方法
在 Remote Communication Kit 中,Session 实例发送上传文件请求的方法是
答案: uploadFromFile()
20 填空题
图像动画反向播放
在 ImageAnimator 组件中,如果需要让动画从最后 1 张图像播放到第 1 张图像,则需要将 属性设置为 true。
答案: reverse
21 填空题
组件状态共享
在祖先组件中通过 提供一个状态后,后代组件可以通过 来使用这个状态。
答案: @Provide
22 填空题
UIAbility 信息获取
通过 UIAbilityContext 实例的 属性可以获取 UIAbility 的相关信息。
答案: abilityInfo
23 填空题
必需变量装饰器
使用 装饰器装饰的变量必须由父组件提供值。
答案: @Require
24 填空题
AppStorage 双向同步
在使用 AppStorage 时,若想让组件中的状态变量与 AppStorage 中的数据建立双向同步关系,则应使用 装饰器。
答案: @StorageLink
25 填空题
UIAbility 生命周期
在 UIAbility 生命周期中,当 UIAbility 从后台转到前台时触发的方法是
答案: onForeground()
26 填空题
页面显示更新
如果需要在页面每次显示时更新一次数据,则应该使用 方法。
答案: onPageShow()
27 填空题
LocalStorage 双向同步
使用 LocalStorage 时,可以通过 装饰器实现双向同步。
答案: @LocalStorageLink
28 填空题
父子组件状态同步
使用 装饰器让子组件的状态与父组件的状态建立双向同步关系。
答案: @Link
29 填空题
组件导航模式
使用组件导航时,在 模式下,组件会根据设备屏幕宽度动态调整布局。
答案: 自适应
30 填空题
屏幕方向改变回调
如果需要在屏幕方向改变时执行某些逻辑,可以通过设置拦截器中的 回调函数来实现。
答案: modeChange
31 填空题
页面返回参数传递
在使用 router.back() 方法进行页面返回时, 属性用于向返回页传递参数。
答案: params
32 填空题
子页文件路径字段
在 router_map.json 文件中,用于指定子页的文件路径的字段是
答案: pageSourceFile
33 填空题
页面跳转模式
在使用 pushUrl() 方法进行页面跳转时,可以通过 参数来指定跳转模式。
答案: mode
34 填空题
工具栏设置
在 Navigation 组件中,通过 属性可以设置工具栏。
答案: toolbarConfiguration
35 填空题
页面跳转方法
router 对象提供了 两种方法实现页面跳转。
答案: pushUrl()
36 填空题
导航页组成
在组件导航中,导航页由标题栏、 和工具栏组成。
答案: 内容区
37 填空题
拦截器参数
在拦截器的回调函数中, 参数表示页面跳转之前的栈顶页面信息,而 参数则表示页面跳转之后的栈顶页面信息。
答案: from
38 填空题
命名路由属性
在实现基于命名路由方式的跳转时,需要在 @Entry 装饰器中添加 属性以定义命名路由。
答案: routeName
39 填空题
UI 结构复用
为了简化重复的 UI 结构编写,可以使用 装饰器来封装并复用该结构。
答案: @Builder
40 填空题
循环渲染函数
在 ArkUI 中,循环渲染语句使用的函数是
答案: ForEach()
41 填空题
尾随闭包
用于在组件调用时通过在组件名后添加大括号来实现组件代码的定制。
答案: 尾随闭包

三、简答题

42 简答题
简述 EL 语法的特点
答案:
- EL 可以与 JavaScript 语句结合使用
- EL 可以自动进行类型转换
- EL 不仅可以访问一般变量,还可以访问 JavaBean 中的属性、嵌套属性和集合对象
- 在 EL 中,可以执行算术运算、逻辑运算、关系运算和条件运算等
- 在 EL 中,可以获取 `pageContext` 对象,进而获取其他内置对象
- 在使用 EL 进行除法运算时,如果除数为 0,则返回表示无穷大的 `Infinity`,而不返回错误
- 在 EL 中,可以访问 JSP 的作用域(`request`、`session`、`application` 以及 `page`)
43 简答题
简述 JavaBean 的种类及应用
答案:
JavaBean 分为可视化的 JavaBean 和非可视化的 JavaBean 两类。

- **可视化的 JavaBean**:主要用于实现一些可视化界面,如一个窗体、按钮、文本框等
- **非可视化的 JavaBean**:主要用于实现一些业务逻辑或封装一些业务对象
44 简答题
请在 web.xml 文件中使用 `<error-page>` 元素为整个 Web 应用程序设置错误处理页面
**已知:** - 处理状态码为 404 的页面为 `404.jsp` - 处理状态码为 500 的页面为 `500.jsp`
答案:
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>
45 简答题
相较于传统异步请求方式,Ajax 异步请求具有哪些优势,请简要说明
答案:
1. **请求数据量少**:因为 Ajax 请求只需要得到必要数据,对不需要更新的数据不作请求,所以数据量少,传输时间较短

2. **请求分散**:Ajax 是按需请求,请求是异步形式,可在任意时刻发出,所以请求不会集中爆发,一定程度上减轻了服务器的压力,响应速度也比较快

3. **用户体验优化**:Ajax 数据请求响应时间短、数据传送速度快已经很大程度提升了用户的使用体验。又由于 Ajax 是异步请求,不会刷新页面,使得页面上用户行为得到了有效保留
46 简答题
实现程序,调用 `$.get()` 方法请求数据内容
**要求:** 在 `get.jsp` 中调用 `$.get()` 方法请求 `target.jsp` 文件(target 文件中摘录一段文字即可),并将返回的数据显示到页面指定位置。
答案:
#### get.jsp 文件:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>get</title>
<script type="text/javascript" src="${pageContext.request.contextPath}/JS/jquery-3.6.0.js"></script>
</head>
<body>
<button id="btn">加载数据</button>
<div id="box"></div>
<script>
$('#btn').click(function() {
$.get('http://localhost:8080/target.jsp', function(data) {
$('#box').html(data);
}, 'html');
});
</script>
</body>
</html>

#### target.jsp 文件:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>target</title>
</head>
<body>
<h3>静夜思</h3>
<h6>唐 李白</h6>
<pre>床前明月光,疑似地上霜。举头望明月,低头思故乡。</pre>
</body>
</html>
47 简答题
简述 jQuery 的常用操作及用法
答案:
jQuery 的常用操作包括选择器的使用、元素对象的操作、事件的绑定、链式编程。

1. **选择器的使用**:jQuery 选择器用于获取网页元素对象

2. **元素对象的操作**:jQuery 中对获取的元素对象可以进行一系列的操作

3. **事件的绑定**:在 jQuery 中,事件一般直接绑定在元素上

4. **链式编程**:jQuery 中支持多个链式编程方法,在完成相同功能的情况下,开发者可以编写最少的代码
48 简答题
简述什么是会话技术?
答案:
会话过程类似于生活中的打电话过程,它指的是一个客户端(浏览器)与 Web 服务器之间连续发生的一系列请求和响应过程。

在 Servlet 技术中,提供了两个用于保存会话数据的对象,分别是 **Cookie** 和 **Session**。