gpt4 book ai didi

java - 在 Java SE 应用程序中使用连接池的优点和缺点是什么?

转载 作者:行者123 更新时间:2023-11-30 06:31:15 24 4
gpt4 key购买 nike

我们正在开发一个 Java SE 应用程序,我正在使用 Hibernate 与数据库进行通信。我的数据库是 Oracle 11g 快捷版。到目前为止,我还没有在应用程序中使用连接池。但是我以前使用过 c3p0 连接池,但我从来没有真正了解它。

在 Java SE 应用程序中使用 c3p0 的优点和缺点是什么?当涉及到 Java EE 应用程序但 Java SE 时,我可以理解它的用处?

这是我的 Hibernate 配置。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:XE</property>
<property name="hibernate.connection.username">EP</property>
<property name="hibernate.connection.password">123</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property name="hibernate.default_schema">EP</property>
<property name="show_sql">true</property>

<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.timeout">300</property>
<property name="hibernate.c3p0.max_statements">50</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>

<mapping class="app.model.User"></mapping>
</session-factory>
</hibernate-configuration>

最佳答案

I can understand it's usefulness when it comes to a Java EE application but Java SE?

在 Java SE 中使用连接池的原因与在 Java EE 中基本相同。打开和关闭 JDBC 连接的成本相对较高,连接池允许您重用应用程序之前打开的连接。

(显然,如果 Java SE 应用程序只需要使用一个(或少量)JDBC 连接,则使用连接池没有任何返回。但这同样适用于具有相同的特征。)


Yeah but is it necessary for Java SE applications to have multiple connections at a time?

1) 这完全取决于应用程序及其作用。

2) 连接池对于连续需要多个连接的应用程序也很有用……但一次只需要一个连接。例如,如果在第 3 方库中创建和关闭连接。

关于java - 在 Java SE 应用程序中使用连接池的优点和缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9755481/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com