原因:没有input数据进入,但是当我填写数据进入的时候
get connection error!
这个消息,是我要抛出去的异常,源代码下
我一开始觉得是代码书写的问题,找..........
应该是数据库连接的代码有问题
修改了jar包,解决了问题【这里大家一定要注意mysql8.0和mysql5.0连接数据库的代码和驱动包的不同!!!】
之后就出现了另一个问题:java.lang.NumberFormatException: For input string: "id"
解决措施:
1.错误分析
数字格式转换异常,接着后面的For input string: "id"提示,说明想把String类型的“id”转换成整型时出错了。
2.找到问题点
看具体时哪个类的哪个方法的哪一行的错误,开始debug进行定位
于是我看了我的数据库的id类型,以及定义的id类型
问题是对于新增数据来说,可以实现数据库的更新,但是没办法显示在页面上。
debug后发现,在这一行代码上面出现的问题:接收不到数据
<c:forEach items="${list}" var="list">
<tr>
<td>${list.id}</td>
<td>${list.type}</td>
<td>${list.text}</td>
<td><a href="/noteServlet?action=QueryById=${list.id}" style="text-decoration:none" onclick="update(this)">修改 </a>
<a href="/noteServlet?action=Delete&id=${list.id}" style="text-decoration: none">删除</a> </td>
</tr>
</c:forEach>
我的问题就是c没有全部包含,就报了数据转换的问题,所以有的时候不一定就是数据类型的问题,最好还是debug一行一行代码看一下。
接着就有出现了另一个问题
点击修改的时候,servlet不会跳转到note.jsp页面(欸,这就让我很是无语啊)
找到问题啦!
注意我原来的代码是这样的
实际上应该是这样的
所以之前就接收不到id,自然没有办法查询到要修改的那条数据了
ok,下面就进入到了第二个问题
修改完之后,查询数据,修改效果为零,数据库里面也没有办法实现修改(欸,心累了,这么看我都感觉自己好菜啊,虽然确实菜,不过几乎每一个功能都有问题,话不多说了)
再次进行debug
这里可以看到数据是传进来了
不知道怎么搞的又可以了,就这样吧!
标签:lang,java,string,报错,input,id From: https://www.cnblogs.com/gbrr/p/17145844.html