当前位置: 首页 > news >正文

JavaWeb测试题

【第四小组】【姓名:郑梦飞】

说明:

  1. 上方【组】填入所在的组,上方【姓名】填入自己的真实姓名。

  1. 答题方式,基于Word文档基础上答题

  1. 编程题可利用工具编程完以后,复制到该文档内。

  1. 答完以后,导成PDF。以姓名.PDF命名。上传至老师指定邮箱。

一、 选择题(共10题,每题2分)

1、Tomcat默认端口号(B)

A) 80

B) 8080

C) 3306

D) 6379

2、 在Servlet中四大作用域不包含(B)

A) request。

B) response

C) session

D) application

3、在Servlet中,当获取到session对象后,下面哪行代码可以销毁session(C)

A) session.clear()

B) session.remove()

C) session.invalidate()

D) session.stop()

4. 在Servlet中,向请求域中设置参数名为name,值为张三的写法(C)

A) response.setAttribute(“name”,”张三”);

  B) response.setAttribute(“张三”,”name”);

  C) request.setAttribute(“name”,”张三”);

  D) request.setAttribute(“张三”,”name”);

5、以下哪个表达式可以产生一个0~7之间(含0,7)的随机整数?(C )

A) Math.floor(Math.random()*6)

  B)Math.floor(Math.random()* 7)

  C) Math.floor(Math.random()*8))

  D) Math.ceil(Math.random()*8)

6、如果需要在JSP页面中引入web根目录下的名为util文件夹中的checkLogin.jsp时,以下代码正确的是(A )

A) <% include file=”util/checkLogin.jsp”%>

B) <%= include file=”util/checkLogin.jsp”%>

C)<%! include file=”util/checkLogin.jsp”%>

D)< include file=”util/checkLogin.jsp”%>

7、使用response对象进行重定向时,使用的方法是(C)

A)getAttribute()

B)setContentType()

C) sendRedirect()

D)setAttribute()

8、以下关于session对象说法错误的是(C)。

A)session对象是用户首次访问服务器时由服务器自动为其创建的

B) 在JSP中可以通过pageContext对象获得session对象

C) 只有访问JSP、Servlet等程序时才会创建session对象

D) 只访问HTML、IMAGE等静态资源并不会创建session对象

9、获取本地所有Cookie的方法是(A)

A)request.getCookies()

B)request.getCookie()

C)response.getCookies()

D)response.getCookies()

10、 servlet中request.getParameter(String)得到的数据,其类型是(C)

A)Double

B)int

C) String

D)Integer

  1. 二、 填空题(共5题,每题2分)

1、在实际编程中,不需要编写service()方法,只需编写相应的___doGet()________和____doPost()________方法。

  1. 2、过滤器执行doFilter( )方法时,会自动获得___过滤器链_________对象,使用该对象的doFilter()方法可继续调用下一级过滤器。

  1. 3、JSP页面的字符编码方式默认是_____ISO8859-1_______________。

  1. 会话跟踪技术有 Cookie Session

  1. 在servlet中,使用HttpServletRequest.setCharacterEncoding("utf-8")设置请求的字符集。

三、 判断题(共5题,每题2分)

1、不能用一个page指令指定多个属性的取值。(F)

2、JSP内置对象是指不用声明就可以在JSP页面的脚本部分使用的对象。(T)

3、session对象的存在期限是指浏览器未关闭之前及默认时间内。(T)

4、过滤器是特殊的Servlet。(T)

5、仅通过pageContext对象不能访问到本页面中所有的其他对象。(T)

四、简答题(共5题,每题4分)

1、 写出JSP的九大内置对象以及其对应的含义。

Requset: request对象是javax.servlet.httpServletRequest类型的对象。

Response:response代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。

Session:一个会话中设置的内容,只要与此项目相关的页面都可以访问。关了浏览器就不见了。

Out—JspWriter:向客户端去输出内容。

Page:当前Jsp页面本身,实际上是一个对象,是当前jsp页面转换成.java类的对象。

Application:当前应用。

PageContext:域对象。page对象代表JSP本身,只有在JSP页面内才是合法的

Config:配置,servlet初始化的时候用到的参数,config来获取。

Exception:异常,前提是当前jsp是一个错误页。

2、JSP的include标签和include指令的区别。

从效果上来书没区别。

Include指令是把两个页面合成一个jsp,再编译成.class。

Jsp:include标签是N个JSP页面单独编译.class之后,再进行合并。

3、cookie和session的区别。

Cookie保存在客户端,Session保存在服务端

Cookie如果不设置最大时效,生命周期和session相同,关闭浏览器cookie失效。Session关闭浏览器则失效。Session可以利用cookie和JSESSIONID来持久化存储session,根据JSESSIONID来找到之前创建的。Session,cookie(”JSESSIONID”,session.getId()),

把cookie保存在客户端。

4、JSP和servlet的区别

JSP就是servlet

JSP更加侧重于视图的展示,servlet更加注重逻辑的处理。

5、请求转发与重定向的异同

请求转发是服务器行为、重定向是客户端浏览器行为

请求转发是request对象调用方法、重定向是response对象调用方法

请求转发只有一次请求所以可以实现request域对象中的数据共享,而重定向是多次请求、多次响应

请求转发的效率要高于重定向

请求转发url地址栏不变,而重定向会发生变化

既然请求转发是服务器内部的行为,所以只能访问服务器内部资源!而重定向既然是浏览器行为,地址栏会变,所以可以访问服务器外部资源!

如果既想要实现路径跳转,又需要实现数据共享,使用请求转发!

如果只是纯粹的想要实现路径跳转,我们可以使用重定向!

五、编程题(共2题,每题20分)

1、利用cookie实现7天内自动登录案例。

 <!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<script>location.href="index.do";
</script></body>
</html>
 package com.jsoft.test;import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;@WebServlet("/index.do")
public class IndexServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Cookie[] cookies = request.getCookies();if(cookies!=null&&cookies.length>0){for (Cookie cookie : cookies) {if(cookie.getName().equals("islogin")&&cookie.getValue().equals("1")){//如果进入此if,说明登陆过!response.sendRedirect("main.html");return;}}}response.sendRedirect("login.html");}
}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>主页</h1>
</body>
</html>
 package com.jsoft.test;import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;@WebServlet("/login.do")
public class LoginServlet extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String username = request.getParameter("username");String password = request.getParameter("password");if(username.equals("admin")&&password.equals("123456")){//登录成功,新建一个cookie并放入到cookieCookie cookie=new Cookie("islogin","1");cookie.setMaxAge(7*24*60*60);response.addCookie(cookie);//登陆成功,跳转到主页response.sendRedirect("main.html");}}
}

2、编写登录案例以及登录过滤器,包含登录以及安全退出功能。

 <!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>登陆成功!</h1></body>
</html>
 package com.jsoft.test.filter;import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.Objects;@WebFilter("/success.do")
public class HelloFilter implements Filter {@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterchain) throws ServletException, IOException {HttpServletRequest request=(HttpServletRequest) servletRequest;HttpServletResponse response=(HttpServletResponse) servletResponse;HttpSession session=request.getSession();Object username=session.getAttribute("username");if(Objects.nonNull(username)){filterchain.doFilter(request,response);return;}response.sendRedirect("login.html");}
}

相关文章:

JavaWeb测试题

【第四小组】【姓名&#xff1a;郑梦飞】说明&#xff1a;上方【组】填入所在的组&#xff0c;上方【姓名】填入自己的真实姓名。答题方式&#xff0c;基于Word文档基础上答题编程题可利用工具编程完以后&#xff0c;复制到该文档内。答完以后&#xff0c;导成PDF。以姓名.PDF命…...

Java EE|TCP/IP协议栈之数据链路层协议详解

文章目录一、数据链路层协议感性认识数据链路层简介以太网简介特点二、以太网数据帧格式详解帧头不同类型对应的载荷三、关于MTU什么是MTUMTU有什么作用ip分片&#xff08;了解&#xff09;参考一、数据链路层协议感性认识 数据链路层简介 从上图可以看出 &#xff0c; 在TCP/…...

Lighthouse组合Puppeteer检测页面

如上一篇文章lighthouse的介绍和基本使用方法结尾提到的一样&#xff0c;我们在实际使用Lighthouse检测页面性能时&#xff0c;通常需要一定的业务前置条件&#xff0c;比如最常见的登录操作、如果没有登录态就没有办法访问其他页面。再比如有一些页面是需要进行一系列的操作&a…...

【C++】仿函数、lambda表达式、包装器

1.仿函数 仿函数是什么&#xff1f;仿函数就是类中的成员函数&#xff0c;这个成员函数可以让对象模仿函数调用的行为。 函数调用的行为&#xff1a;函数名(函数参数)C中可以让类实现&#xff1a;函数名(函数参数)调用函数 自己写一个仿函数&#xff1a; 重载()运算符 cla…...

二叉树(二)

二叉树——堆存储1.堆的初始化2. 堆的销毁3.堆的插入4.堆的删除5.堆的打印6.取堆顶的数据7.堆的数据个数8.堆的判空9.堆的构建10.向上调整11.向下调整12.使用堆进行排序13.交换14.完整代码&#x1f31f;&#x1f31f;hello&#xff0c;各位读者大大们你们好呀&#x1f31f;&…...

爬虫知识简介

爬虫简介 爬虫与网络请求 ​ 网络爬虫是一个自动提取网页的程序&#xff0c;一般都分为3步&#xff1a;数据爬取&#xff0c;数据解析&#xff0c;数据存储。数据爬取就是模拟浏览器发送请求&#xff0c;所以需要对网络请求HTTP/HTTPS有一定了解 相关概念&#xff1a; ​ H…...

2023年全国最新会计专业技术资格精选真题及答案6

百分百题库提供会计专业技术资格考试试题、会计考试预测题、会计专业技术资格考试真题、会计证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 11.下列各项中&#xff0c;企业根据本月“工资费用分配汇总表”分配所列财务部门…...

同时学习C++语言和C#语言好吗?

同时学习两门编程语言并不是不好的选择&#xff0c;尤其是对于初学者而言&#xff0c;这样做能够帮助你更好地理解编程语言的基本概念和原则。C和C#都是常用的编程语言&#xff0c;它们都有各自的优点和用途。同时学习这两门语言能够让你更好地理解它们之间的异同点&#xff0c…...

Android8,source与lunch流程解析

source 流程 # build/make/envsetup.sh ---- # Execute the contents of any vendorsetup.sh files we can find. for f in test -d device && find -L device -maxdepth 4 -name vendorsetup.sh 2> /dev/null | sort \ test -d vendor && find -L vendo…...

大数据NiFi(二十):实时同步MySQL数据到Hive

文章目录 实时同步MySQL数据到Hive 一、开启MySQL的binlog日志 1、登录mysql查看MySQL是否开启binlog日志 2 、开启mysql binlog日志 3、重启mysql 服务&#xff0c;重新查看binlog日志情况 二、​​​​​​​​​​​​​​配置“CaptureChangeMySQL”处理器 1、创建“…...

mac 如何设置 oh my zsh 终端terminal 和添加主题powerlevel10k

Oh My Zsh 是什么 Oh My Zsh 是一款社区驱动的命令行工具&#xff0c;正如它的主页上说的&#xff0c;Oh My Zsh 是一种生活方式。它基于 zsh 命令行&#xff0c;提供了主题配置&#xff0c;插件机制&#xff0c;已经内置的便捷操作。给我们一种全新的方式使用命令行。 **Oh …...

王道《操作系统》学习(一)——计算机系统概述

1.1 操作系统的概念、功能 1.1.1 操作系统的概念&#xff08;定义&#xff09; &#xff08;1&#xff09;操作系统是系统资源的管理者 &#xff08;2&#xff09;向上层用户、软件提供方便易用的服务 &#xff08;3&#xff09;是最接近硬件的一层软件 1.1.2 操作系统的功能…...

什么是自适应平台服务?

总目录链接==>> AutoSAR入门和实战系列总目录 文章目录 什么是自适应平台服务?1.1 自适应平台服务包含哪些功能簇呢?1.1.1 ara::sm 状态管理 (SM)1.1.2 ara::diag 诊断管理 (DM)1.1.3 ara::s2s 信号到服务映射1.1.4 ara::nm 网络管理 (NM)1.1.5 ara::ucm 更新和配置管…...

QML Image and Text(图像和文字)

Image&#xff08;图片&#xff09; 图像类型显示图像。 格式&#xff1a; Image {source: "资源地址" } source&#xff1a;指定资源的地址 自动检测文件拓展名&#xff1a;source中的URL 指示不存在的本地文件或资源&#xff0c;则 Image 元素会尝试自动检测文件…...

图解LeetCode——剑指 Offer 25. 合并两个排序的链表

一、题目 输入两个递增排序的链表&#xff0c;合并这两个链表并使新链表中的节点仍然是递增排序的。 二、示例 2.1> 示例1&#xff1a; 【输入】1->2->4, 1->3->4 【输出】1->1->2->3->4->4 限制&#xff1a; 0 < 链表长度 < 1000 三、…...

2023年全国最新安全员精选真题及答案7

百分百题库提供安全员考试试题、建筑安全员考试预测题、建筑安全员ABC考试真题、安全员证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 11.&#xff08;单选题&#xff09;进入盾构机土仓进行维修工作时&#xff0c;需经&am…...

TypeScript笔记-进行中

学习来源&#xff1a; 本笔记由尚硅谷教学视频整理而来 文章目录学习来源&#xff1a;一.TS简介TypeScript是什么TypeScript增加了什么二环境搭建安装nvm环境搭建二.TypeScript中的基本类型类型声明类型类型示例代码三.编译配置自动编译文件自动编译整个项目四.使用webpack打包…...

阅读HAL源码之重点总结

HAL库的封装特点 HAL封装中有如下特点&#xff08;自己总结的&#xff09;&#xff1a; 特定外设要设置的参数组成一个结构体&#xff1b; 特定外设所有寄存器组成一个结构体&#xff1b; 地址基本都是通过宏来定义的&#xff0c;定义了各外设的起始地址&#xff0c;也就是对应…...

常见的http请求响应的状态码

常见的http请求响应的状态码 一些常见的状态码为&#xff1a; 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx&#xff08;临时响应&#xff09; 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 &#xff08;继续&#xff09…...

UML类图中的类图、接口图、关联、聚合、依赖、组合概念的解释

文章目录UML类图依赖和关联的主要区别UML类图 类&#xff1a;类有三层结构 第一层&#xff1a;类的名字第二层&#xff1a;类的属性第三层&#xff1a;类的方法 接口&#xff1a;接口跟类相似&#xff0c;不过多了一个<<interface>>来表示它是一个接口 第一层&a…...

【数据库】第九章 关系查询处理与优化

第九章 关系查询处理与优化 索引 索引文件是一种辅助存储结构&#xff0c;其存在与否不改变存储表的物理存储结 构&#xff1b;然而其存在&#xff0c;可以明显提高存储表的访问速度。 索引文件组织方式有两种&#xff1a;(相对照的&#xff0c;主文件组织有堆文件、排序文件、…...

大学物理期末大题专题训练总结-磁学大题

&#xff08;事先声明指的是简单的那个磁学大题&#xff0c;另外一类涉及储存的磁能、磁感应强度分布下次说&#xff09;求个磁通量&#xff0c;求个感应电动势&#xff0c;求个安培力大小......这个感觉是不是像你梦回高中&#xff1f;当然&#xff0c;这一块大题跟高中磁学部…...

聚类算法(上):8个常见的无监督聚类方法介绍和比较

无监督聚类方法的评价指标必须依赖于数据和聚类结果的内在属性&#xff0c;例如聚类的紧凑性和分离性&#xff0c;与外部知识的一致性&#xff0c;以及同一算法不同运行结果的稳定性。 本文将全面概述Scikit-Learn库中用于的聚类技术以及各种评估方法。 本文将分为2个部分&…...

华为OD机试真题Python实现【找到它】真题+解题思路+代码(20222023)

找到它 题目 找到它是个小游戏,你需要在一个矩阵中找到给定的单词 假设给定单词HELLOWORLD,在矩阵中只要能找HELLOWORLD就算通过 注意区分英文字母大小写,并且你只能上下左右行走 不能走回头路 🔥🔥🔥🔥🔥👉👉👉👉👉👉 华为OD机试(Python)真题目…...

English Learning - L2 语音作业打卡 Day4 2023.2.24 周五

English Learning - L2 语音作业打卡 Day4 2023.2.24 周五&#x1f48c; 发音小贴士&#xff1a;&#x1f48c; 当日目标音发音规则/技巧&#xff1a;&#x1f36d; Part 1【热身练习】&#x1f36d; Part2【练习内容】&#x1f36d;【练习感受】&#x1f353;元音 [u:]&#x…...

C#:Krypton控件使用方法详解(第九讲) ——kryptonRadioButton

今天介绍的Krypton控件中的kryptonRadioButton&#xff0c;这是一个单选按钮控件。下面开始介绍这个控件的属性&#xff1a;首先介绍的是外观属性&#xff0c;如下图所示&#xff1a;Cheacked属性&#xff1a;表示设置kryptonRadioButton控件的初始选中状态是什么样的&#xff…...

消失的数字(每日一题)

目录 一、题目描述 二、题目分析 2.1 方法一 2.1.1 思路 2.1.2 代码 2.2 方法二 2.2.1 思路 2.2.2 代码 2.3 方法三 2.3.1 思路 2.3.2 代码 三、完整代码 一、题目描述 oj链接&#xff1a;https://leetcode.cn/problems/missing-number-lcci 数组nums包含从0到n的…...

TypeScript算法基础——TS字符串的常用操作总结:substring、indexOf、slice、replace等

字符串的操作是算法题当中经常碰见的一类题目&#xff0c;主要考察对string类型的处理和运用。 在处理字符串的时候&#xff0c;我们经常会碰到求字符串长度、匹配子字符串、替换字符串内容、连接字符串、提取字符串字符等操作&#xff0c;那么调用一些简单好用的api可以让工作…...

Leetcode100-两数之和

参见官方题解 一、学到的知识 正面寻找两个数之和相加等于某个数&#xff0c;如 ab c&#xff0c;不如反过来寻找 a c - b 正面寻找需要两层 for 循环&#xff0c;把每个数都进行遍历&#xff0c;所以时间复杂度较高 反过来则可以通过维护一个 a 的集合&#xff0c;每次通过…...

4565: 删除中间的*

描述规定输入的字符串中只包含字母和*号&#xff0c;除了字符串前导和尾部的*号之外,将串中其他*号全部删除输入输入数据包括一串字符串&#xff0c;只包含字母和*&#xff0c;总长度不超过80。输出输出删除中间*后的字符串。样例输入*******A*BC*DEF*G****样例输出*******ABCD…...