gpt4 book ai didi

java - 如何在 TimerTask 中处理数据库连接

转载 作者:行者123 更新时间:2023-12-05 07:53:09 24 4
gpt4 key购买 nike

我每 4 分钟安排一个计时器任务,其任务是将值插入/更新到 mysql 表中。

我的问题是,我是否需要为每次迭代(运行方法)创建 DBConnection

我的部分代码

public class App 
{
public static void main( String[] args )
{
TimerTask task = new RunMeTask();
Timer timer = new Timer();
timer.schedule(task, 1000,60000);
}
}

public class RunMeTask extends TimerTask
{
PreparedStatement inserpstmt = null;
Connection conn = null;
String insertsql = "";
@Override
public void run() {
try {
inserpstmt = conn.prepareStatement(insertsql);
inserpstmt.setString(1, symbol);
inserpstmt.setString(2, date);
}
catch (Exception e) {
e.printStackTrace();
}
}
}

请告诉我,提前谢谢

最佳答案

最好的模式是重用连接。如果您的 TimerTask 在容器内,请利用该基础设施,您应该有数据库连接池,甚至可以享受容器管理事务的好处。

如果这不适合您,请不要尝试自己建立连接池。那里有实现,例如https://commons.apache.org/proper/commons-dbcp/

关于java - 如何在 TimerTask 中处理数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33018368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com