分叉一个线程来使用 a 执行插入是否安全 JdbcTemplate 在摇摆中。

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

有帮助吗?

解决方案

从Spring此答案论坛说yes.t = 25965

的JdbcTemplate是一旦它的设置将不会改变状态的单例。

其他提示

另请注意,它的线程安全性是 Spring 3.1 参考文档中有很好的解释:

13.2.1.2 JdbcTemplate最佳实践

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

为什么会认为它不会呢?

我没有从秋千使用JdbcTemplate直接,但我有几个Web应用程序(其中有每个请求单独的线程),我从来没有与它从线程问题的任何问题。在这种情况下,模板在应用程序启动一次配置,多次要求不同的参数。

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top