xx创新论坛返工友情项目总结
友情项目,顾名思义就不是我做的,只是处于友情帮别人改改别人的代码帮别人找找bug。。。之所以要强调这一点是因为里面的低级问题太多,实在是不好意思承认自己和这个项目有关系。。
整个过程还是挺辛苦的,毕竟代码不是自己写的,而且时间比较紧,所以加了几天班,提前体会到了程序员的苦逼。。
好了,废话少说,还是先说说这个项目遇到的几个比较严重并且花了比较多的时间才解决的问题。。
这个项目比较简单,因此当时可能为了锻炼自己对jdbc的熟悉程度,没有用任何框架,jdbcutils负责所有的数据库访问。
被要求返工的首要原因是在访问量加大时获取连接会得到一个空指针错误。其实事后想想当初初学java web时貌似老师是说过纯jdbc访问mysql连接时在大并发的情况下无法获取连接会产生空指针 错误。
因此果断翻了翻以前教程里的源码配了个c3p0上去。空指针是肯定不会报了,不过在学校喊学生到机房进行模拟测试时出现了死锁现象。
当时还都以为是大并发,虽然一两百个学生对于我们这种从来没有考虑过并发问题的非正规军来说也确实是比较大的并发了。。-_-||。
最后在无数次debug之后才发现是连接没有关闭,虽然开始时有人发现了这个问题并且修复了,不过只是修复了查询的,更新的方法还有一些其他的地方也存在这样的问题。。这说明了写代码良好的习惯很重要。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义