2021年9月28日,老是遇到一些非常奇葩的问题。就离谱、好好的一个web项目就莫名奇妙坏了。

简介: 开发者在使用IDEA 2020编辑器搭建的SSM框架图书管理系统中,遇到删除功能异常问题,经过一系列尝试后发现是IDEA编译缓存导致的,最终通过重新编译项目解决了问题。

起因是这样的:我前几天用idea2020编辑器,用ssm框架搭建了一个图书管理系统。只是将图书信息的增删改查实现,还有用户的注册和登录功能实现。本来想着今天将用户信息的删除和修改完善以下,本来是很简单的事情,就在我将删除逻辑(从前台到后盾)实现后,然后满怀信息的打开Tomcat服务器,就等测试…结果一场四个小时的辛酸旅程开始了。

打开页面后,我先实现注册和登录,然后检查了一遍以前的功能都可以正常使用。就当我打开用户信息展示页面的时候,也没感觉到异常,就当我准备点击删除按钮,删除一个用户的信息的时候,发现一个讨厌的事情。那个删除我使用的是超链接的形式,鼠标移动到删除上时,删除字样应该会变色而且应该要在删除按钮下出现下划线(我还未对该超链接的形式进行修改)。但是他没有一点反应,是的你没听错,它一点反应都没有。我当时就纳闷了。我开始设置Tomcat的时候已经设置了页面的修改,只需要刷新页面就可以了。咋会没起作用呢。不慌、这样不行,我直接重新部署总可以了吧,重新启动Tomcat后,还是这个样子。还能这样玩。干脆一点,我直接删除这个信息注释掉。这样这个页面就不会有这个选项了吧,就当我兴冲冲的运行服务的时候,啪啪啪的打脸,他还在,你没听错,被我注释掉的删除还在页面上展示。我真的老无语了,我一不做二不休,直接将这个文件的内容全部注释掉了,这样应该啥也看不到了吧。就当我再次运行服务的时候,我真的要骂人了,他还在,他还在,他还在啊。不慌,不慌,不慌,我还有招,直接把访问到这个页面的地址改掉,这样总不会找到这个页面了吧。就当我再次燃起希望的时候,再次运行界面,然后输入一个错误的连接地址,的确是没有找到这个页面。就当我以为解决的时候,我又手贱,运行了一下历史记录的那个正确的地址。他又出现了,我已经把路径改了还能找到,牛批哦。没办法,上网搜,我就把浏览器的历史记录给删除了。但是最后的结果没有一点用。我真的是无语了。然后我就想着把这个页面的文件给删除算了,这样总不可能找到了吧。但是、但是、但是。他又出现了。我的天、我要死了。然后我就想再次建立个jsp页面吧,搞笑的事情来了,当我new的时候,发现没有jsp这个选项,啊啊啊啊,我要炸了啊。然后重点来了、重点来了、重点来了。我就去看了一下那个编译文件,我发现删除的那个页面还在,我真是日你妹的了,我都删除了,咋还会有这个文件(我此时对编译文件还不太了解),然后我就手动把这个文件给删除了。然后再次启动Tomcat服务器的时候,就算我输入正确的地址还是怎样的地址,那个页面都不会存在了。我此时特别的高兴啊。然后我就把那个页面直接复制了一),然后我就再次重启服务器,就当我以为全部搞好的时候。啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊,又来。我真的要死了。我此时特别的气愤啊,我直接把这些编译的文件全部删除了,然后,再次编译的时候,有文件编译出来。我又再次重启服务器。不出所料,啥东西都没有了。然后,我看那个编译的文件和我当前的目录文件差异好大。我心已死、我真的醉了。然后我就直接把这个项目换了一个位置,然后重新导入,啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊。我真的要死了,都一样,我们都一样。他还是那个样子。然后我就重新建立一个项目,最后导入web框架,就在这个时候,我发现了。新建的web有一个亮点,而我的那个web项目没有亮。而且新建的web项目时可以正常创建jsp页面的。然后,我就恍然大悟,我之前用的2020版本的idea已经把web项目给编译好了,导入的时候,运行的是之前编译好的文件,并没有编译我现在的文件

2021-9-30 17:45 我又重新建立一个项目运行这个项目,然后又遇到一个古老的bug…
https://blog.csdn.net/weixin_43304253/article/details/120570356

相关文章
|
2天前
|
JSON 搜索推荐 API
Python的web框架有哪些?小项目比较推荐哪个?
【10月更文挑战第15天】Python的web框架有哪些?小项目比较推荐哪个?
9 1
|
17天前
|
前端开发 JavaScript API
惊呆了!学会AJAX与Fetch API,你的Python Web项目瞬间高大上!
在Web开发领域,AJAX与Fetch API是提升交互体验的关键技术。AJAX(Asynchronous JavaScript and XML)作为异步通信的先驱,通过XMLHttpRequest对象实现了局部页面更新,提升了应用流畅度。Fetch API则以更现代、简洁的方式处理HTTP请求,基于Promises提供了丰富的功能。当与Python Web框架(如Django、Flask)结合时,这两者能显著增强应用的响应速度和用户体验,使项目更加高效、高大上。
34 2
|
1月前
|
前端开发 Python
前后端分离的进化:Python Web项目中的WebSocket实时通信解决方案
在现代Web开发领域,前后端分离已成为一种主流架构模式,它促进了开发效率、提升了应用的可维护性和可扩展性。随着实时数据交互需求的日益增长,WebSocket作为一种在单个长连接上进行全双工通讯的协议,成为了实现前后端实时通信的理想选择。在Python Web项目中,结合Flask框架与Flask-SocketIO库,我们可以轻松实现WebSocket的实时通信功能。
47 2
|
9天前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
44 0
|
2月前
|
测试技术 开发者 Python
FastAPI的神奇之处:如何用Python引领Web开发的新浪潮,让你的项目一鸣惊人?
【8月更文挑战第31天】在现代软件开发中,Web应用至关重要,而FastAPI作为高性能Python Web框架,凭借简洁的语法与高效的开发体验,备受开发者青睐。本文将介绍FastAPI的基础概念、使用方法及最佳实践,涵盖路由、模板、请求对象等核心概念,并探讨其优势与社区扩展,助您高效构建Web应用。
76 1
|
2月前
|
存储 JSON 数据安全/隐私保护
"FastAPI身份验证与授权的奥秘:如何用Python打造坚不可摧的Web应用,让你的项目一鸣惊人?"
【8月更文挑战第31天】在现代Web开发中,保证应用安全性至关重要,FastAPI作为高性能Python框架,提供了多种身份验证与授权方式,包括HTTP基础认证、OAuth2及JWT。本文将对比这些机制并附上示例代码,展示如何使用HTTP基础认证、OAuth2协议以及JWT进行用户身份验证,确保只有合法用户才能访问受保护资源。通过具体示例,读者可以了解如何在FastAPI项目中实施这些安全措施。
98 1
|
2月前
|
存储 数据库 开发者
Web2py的神秘力量:如何用Python打造快速原型设计与开发,让你的项目一鸣惊人?
【8月更文挑战第31天】在现代软件开发中,快速原型设计至关重要。Web2py作为一款Python Web框架,凭借其简洁的语法和高效开发流程受到开发者青睐。本文通过在线调查问卷系统的案例,展示Web2py在快速原型设计中的应用,包括需求分析、数据库设计、表单创建及路由实现,并提供示例代码,帮助读者理解其最佳实践。
20 1
|
2月前
|
API 数据库 开发者
解锁Web2py新境界!揭秘如何利用神秘插件系统,让你的Web项目瞬间起飞?
【8月更文挑战第31天】Web2py是一款轻量级且功能全面的Python Web框架,其插件系统允许开发者在不修改核心代码的情况下扩展框架功能,提升项目灵活性和可扩展性。本文介绍如何利用Web2py插件系统增强Web项目,包括插件的优势、选择与安装方法,并通过集成身份认证插件的具体示例展示其应用过程。通过合理利用插件,可以显著提高开发效率和用户体验。
39 1
|
2月前
|
开发者 Java 安全
Struts 2 实战秘籍:Action 驱动业务,配置文件成就高效开发!
【8月更文挑战第31天】Struts 2 框架作为 Apache 软件基金会的顶级项目,广泛应用于企业级 Web 应用开发。其核心组件 Action 类处理用户请求,而配置文件定义请求与 Action 类间的映射关系。掌握 Action 组件的最佳实践包括继承 `ActionSupport` 类、实现 `execute` 方法及使用类型安全的方法;配置文件的最佳实践则涉及组织 Action 到包中、定义全局结果及使用通配符映射。遵循这些最佳实践,可构建高效、可维护的 Web 应用程序。
37 0
|
2月前
|
Java 数据库连接 Spring
Struts 2 插件开发竟如魔法盛宴,为框架注入超能力,开启奇幻编程之旅!
【8月更文挑战第31天】在Web开发中,Struts 2插件开发允许我们在不改动框架核心代码的前提下,通过创建实现特定接口的Java类来扩展框架功能、调整其行为或促进与其他框架(如Spring、Hibernate)的集成,从而更好地满足特定业务需求。遵循良好的设计原则与实践,能够确保插件的高效稳定运行并提升整体项目的可维护性。具体步骤包括创建项目、定义插件类、实现初始化与销毁逻辑,并将插件部署至应用中。
52 0