spring mvc 数据库方面如何处理并发的?

安静的敲代码 发布于 2016/05/26 17:05
阅读 1K+
收藏 1

看了ThreadLocal,了解其应用的场景多在数据库连接,事务管理方面,并在spring,hibernate的源码中有广泛运用。所以,这里在没有看源码的基础上,有个疑问:spirng mvc项目在连接数据库时都是根据线程来连接数据库的吗?即一次请求会连接一次数据库,然后销毁这样吗?因为之前一直理解是,初始化的时候连接好数据库,然后在服务关闭时才会销毁。不知应该是怎样的?谢谢

加载中
0
Gillian_Male
Gillian_Male
是有数据库连接池的好吗
0
beyondforever68
beyondforever68
数据库连接池啊
0
10书生
10书生

1. 数据库连接的创建和销毁成本是很高的,所以一般需要池化数据库连接提高数据库操作响应时间。

2. 推荐一个成熟的数据库连接池组件,可以学习其使用方式和实现原理,https://tomcat.apache.org/tomcat-8.0-doc/jdbc-pool.html

0
xpbob
xpbob
该评论暂时无法显示,详情咨询 QQ 群:点此入群
安静的敲代码
安静的敲代码
多谢。涨姿势了!
0
iBase4J
iBase4J
该评论暂时无法显示,详情咨询 QQ 群:点此入群
0
一只小桃子
一只小桃子
现在一般是配置一个dataSource,连接池。事物管理器会从连接池获取一个Connection绑定到当前线程。如果你的事务传播需要开新的事务,又会拿一个。用完了会返回到连接池内。不用关。
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部