I wonder if each time I get a connection from a DataSource with ds.getConnection() a new session between my application and MySQL instance is create or there is some reusing logic ?
答案 0 :(得分:3)
DataSource创建的每个Connection对象表示与数据库的连接 - 数据库中的会话,即。
数据库配置为支持的最大连接数限制了应用程序可能同时打开数据库的活动Connection对象的数量。
但是,如果驱动程序支持连接池并在代码中使用,则在代码中关闭Connection对象只会将Connection对象返回到池,并且不会关闭与数据库本身的连接。连接池中的连接对象可以在以后的代码中重用,而无需创建与数据库的新连接。
请参阅DataSource object上的Java文档了解详细信息。