那些年很脑残的bugs
1.老师给了前端界面,我们用java写后台。
我改了表单form的action属性,让它跳到自己写的servlet上面去。自己在servlet里面对数据库一顿操作猛如虎,然后让servlet跳回原来页面。
但是测试的时候点了页面上的按钮之后,数据库里面的数据一点变化都没有。
开始一点点排查问题……
数据库连接------没错!
sql语句------没错!
eclipse控制台------没报错!
跳转情况------成功跳回原来界面!
但就是不出结果!
不对,最后回到原来界面真的是通过servlet跳转的吗?
最后看了下地址栏,没有跳转。。。
重新检查jsp代码,action属性没填错啊,就算填错了不也应该报404错误码?
偶然瞥到了按钮的type属性------button。。。。
遂改为submit,一发入魂。
2.因为之前做练习的时候都用mysql配合navicat整数据库,给页面添加功能之前会把sql语句先在navicat里面打一遍看看语法对不对,然后再在后台里面操作。
直到有一天我用了oracle,pl-----启动!删除语句-----编译!pl查询一下结果-----删除成功!
然后给后台加入了删除记录的功能。从页面查询了一下。。。。
为什么我刚刚在pl中删除的记录还在页面上!java这么diao的吗!?!连没有的东西都能查出来!
还是先试试页面的功能吧!
点击页面的删除按钮删除其他记录尝试,检查数据库,删除成功,检查页面的查询结果,同样已经删掉了,但是之前从pl里删除的数据还是挂在页面上。
当时就迷了,灵异事件吗?明明pl里都没有了,你是怎么查到的!大哥!jdbc都删的掉的数据为啥pl里删不掉!
遂,百度,发现,oracle在pl中操作,事务不会自动提交,所以需要在pl中输入“commit;”手动提交事务才能在java的查询中正确显示结果,才算是真正完成了删除事务,而jdbc事务是自动提交的,不用担心这个。mysql在navicat中也是自动提交的,也不用担心。
3.
那些年很脑残的bugs的更多相关文章
- 在Ubuntu里部署Javaweb环境脑残版
最近在瞎折腾Unbunt,喜欢这里的干净和静谧.能留在这里,那么就得在这里工作,于是部署javaweb就成了头件大事了. 咨询了大牛,都说不会命令你玩毛玩linux,但是万万没有想到,原来ubuntu ...
- 脑残手贱:被NFS祸害的调度系统
建议:任何时候,都要三思而后行!!! 事请的缘由 系统中采用slurm调度系统来进行并行计算.但是在GPU节点上,无论如何都无法启动slurmd,报插件初始化错误的故障. 因此需要编译新的munge和 ...
- 脑残式网络编程入门(六):什么是公网IP和内网IP?NAT转换又是什么鬼?
本文引用了“帅地”发表于公众号苦逼的码农的技术分享. 1.引言 搞网络通信应用开发的程序员,可能会经常听到外网IP(即互联网IP地址)和内网IP(即局域网IP地址),但他们的区别是什么?又有什么关系呢 ...
- 脑残式网络编程入门(五):每天都在用的Ping命令,它到底是什么?
本文引用了公众号纯洁的微笑作者奎哥的技术文章,感谢原作者的分享. 1.前言 老于网络编程熟手来说,在测试和部署网络通信应用(比如IM聊天.实时音视频等)时,如果发现网络连接超时,第一时间想到的就是 ...
- 脑残式网络编程入门(四):快速理解HTTP/2的服务器推送(Server Push)
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.前言 新一代HTTP/2 协议的主要目的是为了提高网页性能(有关HTTP/2的介绍,请见<从HTTP/0.9到HTTP/2:一文读 ...
- 脑残式网络编程入门(三):HTTP协议必知必会的一些知识
本文原作者:“竹千代”,原文由“玉刚说”写作平台提供写作赞助,原文版权归“玉刚说”微信公众号所有,即时通讯网收录时有改动. 1.前言 无论是即时通讯应用还是传统的信息系统,Http协议都是我们最常打交 ...
- 脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?
1.引言 本文接上篇<脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手>,继续脑残式的网络编程知识学习 ^_^. 套接字socket是大多数程序员都非常熟悉的概念,它是计算机 ...
- [转帖]脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?
脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么? http://www.52im.net/thread-1732-1-1.html 1.引言 本文接上篇<脑残式网 ...
- 脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手
.引言 网络编程中TCP协议的三次握手和四次挥手的问题,在面试中是最为常见的知识点之一.很多读者都知道“三次”和“四次”,但是如果问深入一点,他们往往都无法作出准确回答. 本篇文章尝试使用动画图片的方 ...
随机推荐
- Linux基础之输入输出
第十五章 输入输出 一.重定向概述 1.1.什么是重定向? 将原本要输出到屏幕的数据信息,重新定向到指定的文件中. 比如:每天凌晨定时备份数据,希望将备份数据的结果保存到某个文件中.这样第二天通过查看 ...
- W3C 事件切换 颜色变化
颜色变化代码: HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...
- URL编码表
url编码是一种浏览器用来打包表单输入的格式. 定义 url编码是一种浏览器用来打包表单输入的格式.浏览器从表单中获取所有的name和其中的值 ,将它们以name/value参数编码(移去那些不能传送 ...
- php7 mysqli_query返回1 , 但是更新失败
HTML中忘了传id
- MainRun
package Testlink; import java.io.IOException; public class MainRun { public static void main(String[ ...
- OC 类的load方法
+(void)load 方法 不需要主动调用,类加载时会走这个方法
- Primary Key Increase by Trigger
Oracle Create Table: CREATE TABLE TAB( ID NUMBER(10) NOT NULL PRIMARY KEY, NAME VARCHAR(19) NOT NULL ...
- Java 迭代器删除元素ConcurrentModificationException异常。
Java是不支持容器类在使用迭代器迭代过程中,使用如 list.remove(obj)方法删除元素.否则会抛出ava.util.ConcurrentModificationException异常.应该 ...
- Apache服务器出现Forbidden 403错误提示的解决方法
默认web目录/var/www/html 改成 /data/www出现403问题解决: vim /etc/apache2/apache2.conf <Directory /data/www/&g ...
- 相同name,取最小的id的值,mysql根据相同字段 更新其它字段
id name info1 a 1232 a 2353 a 1244 b 125 b 987相同name,取最小的id的值id name info1 a 1232 a 1233 a 1234 b 12 ...