Maison > Questions et réponses > le corps du texte
如题目描述,在对数据库操作完成之后是否需要关闭DataSource,还是只是关闭当前的Connection就可以了?
PHP中文网2017-04-17 17:46:55
La connexion doit être fermée lorsqu'elle est épuisée, que le pool de connexions soit utilisé ou non. Si le pool de connexions n'est pas utilisé, la fermeture de la connexion ferme en fait la connexion à la base de données. Si le pool de connexions est utilisé, la fermeture de la connexion remet en fait la connexion dans le pool de connexions au lieu de fermer réellement la connexion. Le but de l'utilisation du pool de connexions est d'empêcher la création et la fermeture fréquentes de connexions. Le pool de connexions réutilisera la connexion, c'est-à-dire la réutilisera plusieurs fois.
DataSource doit également être fermé après utilisation, généralement avant l'arrêt du programme. La plupart des projets ne ferment pas manuellement le DataSource dans le code car certains frameworks le font généralement pour vous. Par exemple, Spring configure DataSource :
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
...
</bean>
destroy-method="close"
signifie fermer le DataSource avant la fin du cycle de vie du DataSource.
PHPz2017-04-17 17:46:55
Une fois qu'une seule opération de base de données est terminée, la connexion doit être fermée. La source de données peut devoir être fermée avant la fin du programme, mais il n'est généralement pas nécessaire de le faire explicitement.