急!!!几个java连接mysql问题!!!
对Java连接MySQL,我有几个问题,请高手指点:
1。我知道“一个connection对象可以创建任意多个Statement对象”,那么这样做有什么缺点嘛?推荐这样做吗?为什么?
2。在connection对象创建Statement对象,并产生ResultSet结果集后,先关闭了connection对象,这时ResultSet结果还能用吗?Statement对象和ResultSet对象会自动close吗?
3。Statement对象产生ResultSet结果集后,先关闭了Statement对象,这时ResultSet结果还能用吗?ResultSet对象会自动close吗?
4。如果服务器本身支持数据库连接池,请问是推荐自己写管理数据库连接池的JavaBean还是用服务器提供的,理由分析?
请高手们赐教!感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
1.当你创建了几个Statement,如果其中一个地方关闭了Connection,那么其他几个statement就不能用了。
2.我测试下
public static void main(String[]agrs) throws SQLException{
Connection conn = getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from t_user");
conn.close();
//stmt.close()
System.out.println(rs);
}
当connection关闭后ResultSet还可以用、那么意味着ResultSet 不随着 connection的关闭而关闭。statement 关闭后resultSet也是有值的。应该和前面同理。
引用来自#2楼“禹帆”的帖子
创建对象顺序:Connectin->Statement->ResultSet
关闭对象顺序就得反过来。
创建对象顺序:Connectin->Statement->ResultSet
关闭对象顺序就得反过来。