1
11
让我简化一下Oxbow_Lakes的答案:您可以使用
所以你的代码:
应该变成:
现在要取消,你可以打电话
你可能想参考一下
|
2
1
你可以通过
这个
因此,现在响应用户取消的代码如下所示:
|
3
0
我认为在Spring中,您的意思是使用JDBCDAoTemplate和/或JDBCTemplate?如果是这样,这并不能真正帮助或阻碍你解决问题。 我假设您的用例是在一个线程中执行一个DAO操作,另一个线程进入并希望取消第一个线程的操作。 您必须解决的第一个问题是,第二个线程如何知道要取消哪个线程?这是具有固定线程数的GUI,还是具有多个线程的服务器? 一旦解决了这一部分,就需要了解如何在第一个线程中取消该语句。一种简单的方法是将第一个线程的PreparedStatement存储在某个字段中的某个地方(可能是在一个简单字段中,也可能是在线程ID到语句的映射中),允许第二个线程进入,检索statmentand调用cancel()。 请记住,cancel()可能只是阻塞,这取决于您的JDBC驱动程序和数据库。另外,确保您在这里认真考虑同步,您的线程是否会陷入一场斗争。 |
4
0
可以注册类型为的回调对象
|