Spring JdbcTemplate和Threading

时间:2009-01-21 22:33:31

标签: java multithreading swing jdbc spring-jdbc

在Swing中使用JdbcTemplate分叉线程以执行插入是否安全。

这是一个记录事件,我不希望它影响感知性能。

3 个答案:

答案 0 :(得分:9)

另请注意,其线程安全性为very well explained in the Spring 3.1 reference documentation

13.2.1.2 JdbcTemplate最佳实践

  

一旦配置,JdbcTemplate类的实例就是线程安全的。这很重要,因为这意味着您可以配置JdbcTemplate的单个实例,然后将此共享引用安全地注入多个DAO(或存储库)。 JdbcTemplate是有状态的,因为它维护对DataSource的引用,但是这种状态不是会话状态。

答案 1 :(得分:6)

来自Spring论坛的

This answer说yes.t = 25965

JdbcTemplate是一个单例,一旦设置就不会改变状态。

答案 2 :(得分:0)

为什么你认为它不会?

我没有直接使用来自Swing的JdbcTemplate,但我有几个Web应用程序(每个请求都有一个单独的线程),我从来没有遇到任何线程问题。在这种情况下,模板在应用程序启动时配置一次,并使用不同的参数重复调用。

如果您担心线程问题,可以随时为每个日志记录线程创建一个新模板......