谢谢哪位能帮小弟看看这是什么原因

axiang757 2012-05-07 02:55:10
在linux系统下的一个简单的测试,代码如下:

Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/username?","root","");
Statement st = conn.createStatement();
String sql = "select passwd,username from user";
ResultSet rs = st.executeQuery(sql);
while(){
out.println(rs.getString(1));
out.println(rs.getString(2));
}
rs.close();
st.close();
conn.close();

开启tomcat后输入地址,显示的内容正确,可是刷新一下就出错了,重启tomcat后又可以了。好像只能连接一次数据库似的,不知道是tomcat的问题,还是数据库的问题。

显示正确内容后,刷新就报错:java.sql.SQLException: ResultSet is from UPDATE.No DATA
...全文
717 44 打赏 收藏 转发到动态 举报
写回复
用AI写文章
44 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxax 2013-12-23
  • 打赏
  • 举报
回复
DriverManager.getConnection("jdbc:mysql://localhost:3306/username?","root","");有看没有懂
comjn 2013-12-23
  • 打赏
  • 举报
回复
我也遇到这个问题,等找到解决办法再来留言
axiang757 2012-05-09
  • 打赏
  • 举报
回复
[Quote=引用 41 楼 的回复:]
应该是MySql 连接池的问题 你应该每次连接的时候判断一下是否连接上 断开就重新连接
[/Quote]
能不能说的在清楚点
每次程序运行的时候conn都为了空了
Connection conn = null;
conn =DriverManager.getConnection("");
  • 打赏
  • 举报
回复
应该是MySql 连接池的问题 你应该每次连接的时候判断一下是否连接上 断开就重新连接
axiang757 2012-05-09
  • 打赏
  • 举报
回复
昨天弄了半天,谁知道Linux系统怎么崩溃了,今天起不来了
所以今天重新装了系统
chuangone123 2012-05-08
  • 打赏
  • 举报
回复
厉害

既然人生无法预知,那就让我们淡定面对吧,因为有些事情是逃避不了的。加油吧!
刚开了一个淘宝,支持一下。。

淘宝店铺名:年轻的谢老头
网址是: http://shop70432849.taobao.com/
昨日凡阳 2012-05-08
  • 打赏
  • 举报
回复
[Quote=引用 35 楼 的回复:]

引用 33 楼 的回复:
引用 32 楼 的回复:

引用 30 楼 的回复:
引用 29 楼 的回复:

我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这


所以我让你改成;连接Windows中mysql看看是否ok

不知道怎么搞的,登陆密码为000000,连接密码为空,换一下不行
虚拟机暂时连不上……
[/Quote]

我说的是你的密码问题。你命名密码改了,居然却还能用空密码登陆mysql。改了密码,要重启mysql的。你重启了吗?
axiang757 2012-05-08
  • 打赏
  • 举报
回复
[Quote=引用 33 楼 的回复:]
引用 32 楼 的回复:

引用 30 楼 的回复:
引用 29 楼 的回复:

我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这


所以我让你改成;连接Windows中mysql看看是否ok

不知道怎么搞的,登陆密码为000000,连接密码为空,换一下不行
虚拟机暂时连不上window主机


那明……
[/Quote]
跟这没关系,我mysql是安装在linux虚拟机上的
我今天试试连一下window吧
d945332077 2012-05-08
  • 打赏
  • 举报
回复
我觉得应该是9楼的问题 没有关闭连接啊 之类的东西 上一次都没有完成 你这一次又来...........
昨日凡阳 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 32 楼 的回复:]

引用 30 楼 的回复:
引用 29 楼 的回复:

我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这


所以我让你改成;连接Windows中mysql看看是否ok

不知道怎么搞的,登陆密码为000000,连接密码为空,换一下不行
虚拟机暂时连不上window主机
[/Quote]

那明显这里有文章。虚拟机为什么连不上宿主机?应该是可以的呀。
axiang757 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 30 楼 的回复:]
引用 29 楼 的回复:

我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这


所以我让你改成;连接Windows中mysql看看是否ok
[/Quote]
不知道怎么搞的,登陆密码为000000,连接密码为空,换一下不行
虚拟机暂时连不上window主机
  • 打赏
  • 举报
回复
mark学习帮顶下,虽说不太规范,但测试用也差不多。
lz说下mysql版本吧
希望不是有一个bug
昨日凡阳 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 29 楼 的回复:]

我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这
[/Quote]

所以我让你改成;连接Windows中mysql看看是否ok
axiang757 2012-05-07
  • 打赏
  • 举报
回复
我在终端用的是root 密码为000000能够登录
可是程序里连接数据库的时候密码为空才能登录,会不会问题出在这
axiang757 2012-05-07
  • 打赏
  • 举报
回复
如果程序有问题的话,刚开启tomcat的时候是不能显示正确内容的,问题是为什么关闭网页后就出错了呢
axiang757 2012-05-07
  • 打赏
  • 举报
回复
linux中的username是我自己写进去的,正常访问的时候显示的内容也是正确的
昨日凡阳 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 的回复:]

引用 23 楼 的回复:

密码我改掉过了,数据库中有username


你确定在windows中一切ok?在linux中才会这样?

你linux中的username 和 windows中的username这个库,数据都一样?
[/Quote]

这个异常,我在mysql官方搜索了一下,以前也有人遇到过,还给mysql报bug了。
不知道你这款mysql版本。
你试着去连接你windows中的mysql,试试,看是否是mysql的问题。
昨日凡阳 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 的回复:]

密码我改掉过了,数据库中有username
[/Quote]

你确定在windows中一切ok?在linux中才会这样?

你linux中的username 和 windows中的username这个库,数据都一样?
axiang757 2012-05-07
  • 打赏
  • 举报
回复
密码我改掉过了,数据库中有username
昨日凡阳 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 的回复:]

引用 20 楼 的回复:
引用 19 楼 的回复:

引用 18 楼 的回复:
引用 17 楼 的回复:

在windows上做这样的测试,代码没问题,可是到了linux上不知道为什么不行了


跟你说话,干着急。你能不能每次把出错信息都说一下。

说来说去还是那一个错误,不能进行二次访问,第一次可以读取数据库的内容,刷新页面后就报错,错误截图不知道怎么贴到贴子上,在我空……
[/Quote]

linux中,你的mysql有没有一个数据库叫/username?
你最好把linux中mysql默认root密码改掉。
加载更多回复(20)

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧