
java使用jdbc进行多个操作只用一个连接会不会有问题?
是这样的,我有个专门用来操作数据库的类,我在构造方法里建立了连接,然后我定义了一些增删改查的方法,供很多进程调用,每个方法都有各自的statement,但使用同一个连接。...
是这样的,我有个专门用来操作数据库的类,我在构造方法里建立了连接,然后我定义了一些增删改查的方法,供很多进程调用,每个方法都有各自的statement,但使用同一个连接。
这样是可行的吗?要注意什么?
我在网上看到的代码都是在方法体里面建立连接,方法完成就关闭连接,我感觉效率不高啊,求指点。。
部分代码如下
public class SQLend {
private Connection con;
private ResultSet rs;//返回sql查询结果集
private int result;//返回sql语句执行结果
private String driver = "org.mariadb.jdbc.Driver";
private String url = "jdbc:mysql://localhost:3306/test";
/**
* Constructor
* 包含数据库链接阿巴拉巴拉
*/
public SQLend() {
//加载数据库驱动
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("无法加载数据库驱动: " + driver);
}
//与数据库建立连接
try {
con = DriverManager.getConnection(url, "SomeChat", "chat");
System.out.println("数据库已连接");
} catch (SQLException e) {
System.out.println("无法连接至数据库: " + url);
}
}
//接下来是各种操作
啊,抱歉,贴错代码了,改过了,rs和result的定义那两行是没有的 展开
这样是可行的吗?要注意什么?
我在网上看到的代码都是在方法体里面建立连接,方法完成就关闭连接,我感觉效率不高啊,求指点。。
部分代码如下
public class SQLend {
private Connection con;
private ResultSet rs;//返回sql查询结果集
private int result;//返回sql语句执行结果
private String driver = "org.mariadb.jdbc.Driver";
private String url = "jdbc:mysql://localhost:3306/test";
/**
* Constructor
* 包含数据库链接阿巴拉巴拉
*/
public SQLend() {
//加载数据库驱动
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("无法加载数据库驱动: " + driver);
}
//与数据库建立连接
try {
con = DriverManager.getConnection(url, "SomeChat", "chat");
System.out.println("数据库已连接");
} catch (SQLException e) {
System.out.println("无法连接至数据库: " + url);
}
}
//接下来是各种操作
啊,抱歉,贴错代码了,改过了,rs和result的定义那两行是没有的 展开
若以下回答无法解决问题,邀请你更新回答
1个回答
2018-01-03
展开全部
这是指一个客户端吧,没有什么问题的。。。。。如果担心可以 使用事务
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询