当前位置: 首页 > 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…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;百货中心供应链管理系统被用户普遍使用&#xff0c;为方…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...