急!!!几个java连接mysql问题!!!

发布于 2021-11-14 21:17:33 字数 383 浏览 921 评论 3

对Java连接MySQL,我有几个问题,请高手指点:
1。我知道“一个connection对象可以创建任意多个Statement对象”,那么这样做有什么缺点嘛?推荐这样做吗?为什么?
2。在connection对象创建Statement对象,并产生ResultSet结果集后,先关闭了connection对象,这时ResultSet结果还能用吗?Statement对象和ResultSet对象会自动close吗?
3。Statement对象产生ResultSet结果集后,先关闭了Statement对象,这时ResultSet结果还能用吗?ResultSet对象会自动close吗?
4。如果服务器本身支持数据库连接池,请问是推荐自己写管理数据库连接池的JavaBean还是用服务器提供的,理由分析?
请高手们赐教!感谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

秉烛思 2021-11-16 02:18:08

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也是有值的。应该和前面同理。

樱花落人离去 2021-11-15 04:02:20

引用来自#2楼“禹帆”的帖子

创建对象顺序:Connectin->Statement->ResultSet

关闭对象顺序就得反过来。

不乱于心 2021-11-15 01:32:44

创建对象顺序:Connectin->Statement->ResultSet

关闭对象顺序就得反过来。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文