11.14【JAVA EXP3】【DEBUG】

比较疑惑的一点是当前页面(资源的url)与请求的url?

请求的url由webService接收,servelt当中也可以发送出这个url

进行页面跳转,是跳转到某个Jsp页面,这个页面的url是在哪里定义的?

在Jsp打印信息,这个报错?

报错原因: out 对象在 JSP 页面中默认是 JspWriter 类型,而不是 PrintWriter。JspWriter 没有 println 方法,只有 print 方法。

报错原因是 out 对象没有正确解析为 JspWriter 类型,导致 print 方法无法被识别。
提供修复建议: 确保 out 对象是 JspWriter 类型,并且在 JSP 页面中正确使用。可以通过显式声明 out 对象来解决这个问题。

JspWriter 类未导入,导致编译器无法识别该类型。
out 变量已经在 JSP 页面中隐式定义,再次声明会导致重复定义错误。
pageContext.getOut() 方法调用正确,但 out 变量已经存在,不需要重新获取

和解决log4j一样的方法,在头部导入import

根本原因就是pom.xml当中少导了一个包,jsp和servlet-api不在同一个包里

导入后就完全可以了,即使不用显示地声明

request.getRequestDispatcher("home.jsp").forward(request, response);什么意思?

forward有什么用

数据库连接问题

太抽象了,

太抽象了,拼错了

原因是init并没有被调用

不是这个原因,既然是对框架进行覆写,那么在调用的时候就会进行init的调用

'tomcat当中并没有mySql-connect的包,

但这很抽象,因为在java文件当中是可以连接上数据库的

这很合理,因为在doPost中是由tomcat服务器去连接数据库的,普通java文件的Main并不直接经过服务器,而是直接对数据库进行操作的,所以与Tomcat的lib无关,用的是Maven当中的mySql-connection包

而要经过Tomcat服务器就必须要在lib当中包含mySql的connect包

这里没有,所以会报错

解决

PRO2

PRO3

maven管理第三方库,但是tomcat启动时,用不到maven管理的Jar包,需要手动将由Maven管理的项目中第三方jar包逐个导入tomcat的lib目录下,服务器才可以调用这些第三方库的方法,有没有什么好的解决方法,可以不用一个一个调?

从Maven构建的WAR文件中提取Jar包并部署到Tomcat的lib目录下

maven的jar包与tomcat共享

java - 【曹工杂谈】Maven和Tomcat能有啥联系呢,都穿打补丁的衣服吗 - 个人文章 - SegmentFault 思否

Java -jar启动服务与Tomcat服务器上部署JAR之间的区别_jar运行和tomcat部署区别-CSDN博客

[BYD史前大坑]MAVEN与Tomcat的关系

通过这种方式启动的tomcat和maven可以说是一点关系都没有

构建过程中生成的输出文件,通常是Jar、War、Ear等格式的文件。这些文件包含了项目的代码、资源以及依赖的Jar包,它们是项目构建的结果,可以被部署到服务器或应用到其他项目中

工件是Maven项目构建的最终产物,它包含了项目的代码、资源文件以及所有传递性依赖(即项目直接依赖的库以及这些库所依赖的其他库)

每个Maven项目可以有一个或多个工件,这取决于项目的打包方式(Packaging)。例如,一个Web应用项目可能会有一个War类型的工件,而一个Java库项目可能会有一个Jar类型的工件

IDEA项目发布中,Web Application:Exploded和Web Application:Archive的详细解释_web application archive-CSDN博客

exploded意味着项目的资源和类文件被展开放置在一个目录结构中,而不是被打包成一个Jar或War文件。这样做的好处是可以方便地进行调试和测试,因为可以直接修改资源文件而不需要重新打包整个应用

能否更改工件的方式?即不是exploded,而是每次必须打包,使其内部自带所依赖的jar包? 

不,是如何在服务器部署时进行指定?因为那里是连接maven打出的jar包和Tomcat的,那里指定的是构建 'tomcatTest:Web exploded' 工件

  1. JAR

    • JAR(Java Archive)是一种打包Java类文件和相关资源文件的压缩包格式。在Maven中,JAR通常用于打包Java库或应用程序。
  1. Web 应用程序:展开型(Web Application: Exploded)

    • 这是一个展开的Web应用程序,其中包含所有必要的文件和资源,但没有被打包成一个WAR文件。这种形式的部署允许在开发过程中进行快速迭代和测试,因为不需要重新打包应用程序。

  1. Web 应用程序:归档型(Web Application: Archive)

    • 这是一个打包好的Web应用程序,通常以WAR(Web Application Archive)格式存在。WAR文件是一个压缩包,包含了Web应用程序的所有文件和资源,以及所有必要的依赖库。

  1. 归档(Archive)

    • 归档通常指的是WAR或EAR文件,它们是打包好的应用程序,包含了运行应用程序所需的所有文件和资源。归档文件中是否包含第三方Jar包取决于项目的依赖管理和打包配置。如果Maven配置正确,归档文件应该包含所有必要的依赖。

终于!!!!

使用 HS512 算法时,密钥的大小必须至少为 512 位(即 64 字节)。当前使用的密钥长度为 32 位(4 字节),这不符合 RFC 7518 的要求。

这四种方式有什么区别?

这里能否从cookie中取得用户名?cookie和token,和session什么关系?

Cookie 中存储的是 Token,而不是用户名。Token 是一个加密字符串,用于验证用户的身份。
如果你需要从 Cookie 中获取用户名,可以先从 Cookie 中获取 Token,然后通过 Token 解析出用户名

Cookie:客户端存储的小型数据片段,通常用于保存会话标识符(如 Token)。
Token:一种加密字符串,用于验证用户的身份。通常存储在 Cookie 或本地存储中。
Session:服务器端存储的用户会话数据。Session 通常与 Cookie 结合使用,Cookie 中存储的 Token 用于标识用户的会话。

就是说cookie是客户端存储的,里面包含着各种信息,其中一种关键的标识用户信息的就是token

Cookie cookie = new Cookie("sso-token",token);

对于token来说,相关信息是由加密算法进行加密后存储的,而处理完后的token等是以键值对,json格式存储在cookie当中的,如这里就是把token以名称sso-token进行对应

然后Session就是服务端存储的

客户端发来的请求当中自动包含cookie


Token当中能否存储多个字段的数据?如果能,那么最后解析时如何进行区分?

JWT(JSON Web Token)可以存储多个字段的数据。每个字段称为一个声明(claim),可以是标准声明(如 sub、exp、iat 等)或自定义声明

如果是自定义的,就直接用get的方法,以键值对的形式获取即可

如何在界面显示用户的cookie在当前所剩的有效时间

logger.info("匹配到了用户名且密码正确,生成token"); String token = jwtUtil.generateToken(username); logger.info("生成的token为: "+token); Cookie cookie = new Cookie("sso-token",token); cookie.setPath("/"); cookie.setMaxAge(3600); response.addCookie(cookie);

能否在前端实时更新这个时间?

为什么在loginServlet当中设置了request的maxAge,但是到home.jsp时,从request当中获取的maxAge为null?

这通常是因为 request 对象的生命周期较短,仅在一次请求-响应周期内有效。当用户从 LoginServlet 跳转到 home.jsp 时,request 对象已经重新创建,之前的属性不再存在。
解决方案:
使用 session 对象来存储 maxAge,因为 session 对象的生命周期较长,可以在多次请求之间共享数据。
在 LoginServlet 中将 maxAge 存储到 session 中。
在 home.jsp 中从 session 中获取 maxAge。

这个cookie是保存多久?保存到哪?保存到什么时候?在这个home.jsp页面的时候,点击web1.jsp时,request是否还会附带cookie?为什么会直接返回到index.jsp重新登录?

当点击web1.jsp会发生什么?发送的request是什么,有什么信息?如何进行调试查看?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/62035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

陈若尧新歌《一来二去》陆续登陆全球音乐平台

由青年演员,歌手陈若尧带来的全新创作单曲《一来二去》由索尼音乐发行,于2024年11月18日陆续全球上线。这也是陈若尧与索尼音乐合作的第一首单曲。探索古典风格与流行音乐的新结合。歌曲上线不久,就因优美抒情的动人旋律,诗意而意味深远的歌词…

Jenkins凭据管理及使用详解

简介:Jenkins凭据管理是指对Jenkins中存储的敏感信息进行管理的功能,这些信息通常用于认证和授权,以确保Jenkins能够安全地与其他系统和服务进行交互。以下是关于Jenkins凭据管理添加及作用的详细介绍: 一、Jenkins凭据管理的添加 进入凭据管理页面: 登录Jenkins后,点击…

YOLOv10改进,YOLOv10添加CARAFE轻量级通用上采样算子,可提高目标检测性能

摘要 CARAFE模块的设计目的是在不增加计算复杂度的情况下,提升特征图的质量,特别是在视频超分辨率任务中,提升图像质量和细节。CARAFE结合了上下文感知机制和聚合特征的能力,通过动态的上下文注意力机制来提升细节恢复的效果。 理论介绍 传统的卷积操作通常依赖于局部区域…

Hbase整合Mapreduce案例2 hbase数据下载至hdfs中——wordcount

目录 整合结构准备数据下载pom.xmlMain.javaReduce.javaMap.java操作 总结 整合结构 和案例1的结构差不多,Hbase移动到开头,后面跟随MR程序。 因此对于输入的K1 V1会进行一定的修改 准备 在HBASE中创建表,并写入数据 create "wunaii…

【开源】A064—基于JAVA的民族婚纱预定系统的设计与实现

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看项目链接获取⬇️,记得注明来意哦~🌹 赠送计算机毕业设计600个选题ex…

软考高级架构-9.4.4-双机热备技术 与 服务器集群技术

一、双机热备 1、特点: 软硬件结合:系统由两台服务器(主机和备机)、一个共享存储(通常为磁盘阵列柜)、以及双机热备软件(提供心跳检测、故障转移和资源管理功能的核心软件)组成。 …

elasticSearch(一):elasticSearch介绍

一、搜索引擎 搜索引擎的核心目的是帮助用户以最小的成本才海量数据中找到最想要的结果。糟糕的搜索引擎往往会所问非所答,用户查了半天也得不到自己想要的,好的搜索引擎往往第一页就是用户最想要的结果。而目前判断搜索引擎好坏一般是从召回率、精确率…

开发中使用UML的流程_08 PIM-4:定义操作及方法

目录 1、序列图概述 2、序列图调用方式 3、创建消息与销毁消息 4、几项建议 1、序列图概述 在PIM-4中,系统分析员可以用序列图来表达,系统内部一群对象合力完成某一个系统用例时,执行期间的交互情形。之后,序列图可能通过设计…

关于线扫相机的使用和注意事项

引言 线扫相机作为工业视觉系统中的核心设备之一,以其高分辨率和高速成像的特点被广泛应用于印刷质量检测、电子元件检测、纺织品缺陷检测等领域。本文从线扫相机的基本原理出发,探讨其使用方法,并总结在实际应用中的注意事项,为…

UE5 像素流进行内网https证书创建

确定证书需求 内网 HTTPS 通信通常需要以下内容: 自签名证书(适用于内网环境,不需要通过公开的证书颁发机构 CA) 或者通过内部的企业 CA 签发的证书(更安全)。 生成自签名证书 使用工具(如 Ope…

QNX的IPC通信

资料参考: QNX官网文档 QNX内核名义上提供了四种服务:进程调度、IPC通信、底层网络通信、中断处理,而提供给进程的IPC通信种类有三种:Message、Pulse和Signal Message QNX最基本也是最核心的IPC方式,通常用于C/S架构的软件模式,是一对多的关系 添加图片注释,不超过 …

Python酷库之旅-第三方库Pandas(259)

目录 一、用法精讲 1226、pandas.tseries.offsets.Week.name属性 1226-1、语法 1226-2、参数 1226-3、功能 1226-4、返回值 1226-5、说明 1226-6、用法 1226-6-1、数据准备 1226-6-2、代码示例 1226-6-3、结果输出 1227、pandas.tseries.offsets.Week.rule_code属性…

Kubernetes架构原则和对象设计

云原生学习路线导航页(持续更新中) 快捷链接 Kubernetes常见问题解答 本文从 Google Borg系统的架构设计开始,深入讲解Kubernetes架构及组件的基本原理 1.什么是云计算 1.1.传统行业应用 假设有10台服务器,两个应用。小规模管…

组件中的回调方法

文章目录 1. 概念介绍2 使用方法3 示例代码我们在上一章回中介绍了Flutter中如何使用三方包相关的内容,本章回中将介绍Widget的生命周期.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 本章回中介绍的生命周期是指Widget从创建到结果的整个过程,这里提到的Widget是一个…

w~深度学习~合集1

我自己的原文哦~ https://blog.51cto.com/whaosoft/12663254 #Motion Plan 代码 github.com/liangwq/robot_motion_planing 轨迹约束中的软硬约束 前面的几篇文章已经介绍了,轨迹约束的本质就是在做带约束的轨迹拟合。输入就是waypoint点list,约束…

MR30分布式IO模块赋能喷水织机

纺织行业作为我国传统支柱产业,历经数千年的演变,如今仍面临着诸多困境,在纺织行业中,每一次技术的飞跃都是对行业边界的勇敢探索。在纺织行业,喷水织机作为关键生产设备,其性能直接影响到产品质量和产能。…

【单片机】ESP32-S3+多TMC2209控制步进电机系列1 UART通信及无传感回零 硬件部分

目录 1. 硬件选型1.1 esp32硬件型号1.2 TMC2209 硬件型号 2 原理接线图2.1 esp32接线2.2 TMC2209接线2.2.1 单向通讯 不配置地址2.2.2 单向通讯 配置地址2.2.3 双向通讯 单UART 【本文采用】2.2.4 双向通讯 多UART 3. 成品效果 1. 硬件选型 1.1 esp32硬件型号 采用的是微雪ES…

组件中的生命周期

文章目录 1 概念介绍2 使用方法3 示例代码我们在上一章回中介绍了Flutter中如何使用三方包相关的内容,本章回中将介绍Widget的生命周期.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 本章回中介绍的生命周期是指Widget从创建到结果的整个过程,这里提到的Widget是一个泛…

【英一】1998年

阅读1 suffering. 苦难at the mercy of. 完全受...的支配do ones bidding. 服从某人threaten to. 可能...(发生不好的事情)do more harm than good. 弊大于利strive to. 争取,努力assert. 主张cement. 巩固bid for. (尤指许下诺言)企图获得&…

Zookeeper集群数据是如何同步的?

大家好,我是锋哥。今天分享关于【Zookeeper集群数据是如何同步的?】面试题。希望对大家有帮助; Zookeeper集群数据是如何同步的? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Zookeeper集群中的数据同步是通过一种称为ZAB(Zo…