我正在学习Spring如何支持多线程。我发现Spring文档称配置后JdbcTemplate是线程安全的。
人们建议为整个应用程序使用一个JdbcTemplate实例,因为它是线程安全的(这意味着不需要为每个类创建新的实例)。
但是当我查看JdbcTemplate代码时,我没有看到任何同步方法、锁或易失性变量。此外,它包含大量实例变量。我的问题是在这种情况下,JdbcTemplate如何是线程安全的?
但是当我查看JdbcTemplate代码时,我没有看到任何同步方法、锁或易失性变量。此外,它包含大量实例变量。我的问题是在这种情况下,JdbcTemplate如何是线程安全的?
synchronized
方法或对象锁。您看到的实例变量仅是委托,用于异常转换、获取连接等。 - M. Deinum