


Java-Betriebsdatenbank – Verwenden Sie den Verbindungspool, um eine Verbindung zur Datenbank herzustellen
Traditionelle Methode und Verbindungspooling-Methode
Schritte der traditionellen Methode
Verwenden Sie die traditionelle Methode in JDBC wird in Java verwendet, um eine Verbindung zur Datenbank herzustellen und einen Datenbankvorgang abzuschließen. Im Allgemeinen gibt es die folgenden Schritte:
1.
2. Verbindung herstellen.
3. SQL-Anweisung ausführen.
4. Trennen Sie die Verbindung.
5. Nachteile der herkömmlichen Methode
Jeder Vorgang in der Datenbank muss eine Verbindung herstellen, und das erhaltene Verbindungsobjekt wird in den Speicher geladen, was viel Speicher und Zeit verbraucht. . Wenn es viele Vorgänge gibt, die in kurzer Zeit einen Verbindungsaufbau erfordern, werden viele Systemressourcen beansprucht und sogar zum Absturz des Servers führen.
Entsprechend dem Herstellen einer Verbindung müssen Sie die Verbindung bei jeder Verwendung manuell freigeben. Wenn Sie vergessen, die Verbindung freizugeben, oder das Programm sie aufgrund einer Ausnahme nicht freigeben kann, führt dies zu einem Speicherverlust .
Darüber hinaus kann die herkömmliche Methode die Anzahl der Verbindungen nicht steuern, wenn zu viele Personen verbunden sind, was zu einer unbegrenzten Erstellung von Verbindungsobjekten führt, was zu übermäßigem Speicheraufwand und Serverabsturz führt.
(Empfohlenes Video: Java-Video-Tutorial)
Schritte des Verbindungspools
1. Erstellen Sie einen Verbindungspool und konfigurieren Sie ihn die Verbindungseigenschaft.
2. Verwenden Sie einen Verbindungspool, um eine Verbindung herzustellen.
Vorteile des Verbindungspools
Jedes Mal, wenn Sie eine Verbindung zur Datenbank herstellen müssen, müssen Sie keine Verbindung herstellen, sondern diese über den Verbindungspool beziehen stellt die Verbindung her.
Nachdem Sie die Verbindung verwendet haben, müssen Sie die Verbindung nicht manuell freigeben, sondern lassen Sie den Verbindungspool die Verbindung freigeben.
Die Anzahl der Verbindungen kann über den Verbindungspool gesteuert werden. Die Verbindungen im Verbindungspool können mehrfach wiederverwendet werden, wodurch das Problem der unbegrenzten Verbindungserstellung vermieden wird.
Verbindungspool verwenden
C3P0-Datenbankverbindungspool verwenden
JAR-Paket importieren:
c3p0-0.9.5.2.jar
Im Code-Stammverzeichnis des Aktuelles Projekt Erstellen Sie unter src eine neue Konfigurationsdatei mit dem Namen c3p0-config.xml. Der Inhalt lautet wie folgt:
<c3p0-config> <!-- 连接名称 --> <named-config name="mysql"> <!-- 接数据库的驱动类名 --> <property name="driverClass">com.mysql.jdbc.Driver</property> <!-- 连接属性 --> <property name="jdbcUrl">jdbc:mysql://192.168.35.128:3306/demo</property> <property name="user">root</property> <property name="password">123456</property> <!-- 当连接池用完时等待获取新连接的时间,超时后将抛出SQLException,单位毫秒,如设为0则无限期等待。默认为0。 --> <property name="checkoutTimeout">5000</property> <!-- 当连接用尽后,一次获取的连接个数 --> <property name="acquireIncrement">2</property> <!-- 初始连接数 --> <property name="initialPoolSize">1</property> <!-- 最小连接数 --> <property name="minPoolSize">3</property> <!-- 最大连接数 --> <property name="maxPoolSize">5</property> </named-config> </c3p0-config>
Verwenden Sie DBCP Datenbankverbindungspool
Importieren Sie das JAR-Paket:
public class TestDataPool { // 根据配置文件里的名称创建连接池 public static ComboPooledDataSource cpds = new ComboPooledDataSource("mysql"); /** * 主程序 */ public static void main(String[] args) { // 模拟多次对数据库的查询操作 for (int i = 0; i < 6; i++) { new Thread(new Runnable() { @Override public void run() { select(); } }, "线程" + i).start(); } } /** * 查询程序 */ public static void select() { Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; // 获取连接并执行SQL try { conn = cpds.getConnection(); pstmt = conn.prepareStatement("select * from student where id = 906"); rs = pstmt.executeQuery(); while (rs.next()) { System.out.println(Thread.currentThread().getName() + "\t" + rs.getString(1) + "\t" + rs.getString(2) + "\t" + rs.getString("address")); } } catch (Exception e) { e.printStackTrace(); } finally { // 释放资源 try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } try { pstmt.close(); } catch (SQLException e) { e.printStackTrace(); } try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
Erstellen Sie eine neue Konfigurationsdatei mit dem Namen dbcp.properties im Code-Stammverzeichnis src des aktuellen Projekts. Der Dateiname muss mit dem übereinstimmen Der im Code referenzierte Dateiname lautet wie folgt:
commons-dbcp-1.4.jar2 commons-pool-1.5.5.jar
Programmcode:
# 接数据库的驱动类名 driverClassName=com.mysql.jdbc.Driver # 连接属性 url=jdbc:mysql://192.168.35.128:3306/demo username=root password=123456 # 初始化连接数 initialSize=10 # 最大连接数 maxActive=15
Das obige ist der detaillierte Inhalt vonJava-Betriebsdatenbank – Verwenden Sie den Verbindungspool, um eine Verbindung zur Datenbank herzustellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel werden verschiedene Algorithmen für Java -Müllsammlungen (seriell, parallel, CMS, G1, ZGC), deren Leistungsauswirkungen und Eignung für Anwendungen mit großen Haufen erörtert.

In dem Artikel werden die Java Virtual Machine (JVM) erörtert, in der die Rolle bei der Ausführung von Java -Programmen auf verschiedenen Plattformen aufgeführt ist. Es erläutert die internen Prozesse, Schlüsselkomponenten, das Speichermanagement, die Müllsammlung und das Leistungsoptimizatio des JVM

Javas Nashorn Engine ermöglicht JavaScript Scripting in Java -Apps. Zu den wichtigsten Schritten gehören das Einrichten von Nashorn, das Verwalten von Skripten und die Optimierung der Leistung. Hauptfragen beinhalten Sicherheit, Speicherverwaltung und zukünftige Kompatibilität aufgrund von Nashorns Deprecus

Javas Try-with-Ressources vereinfacht das Ressourcenmanagement, indem Ressourcen wie Dateiströme oder Datenbankverbindungen automatisch geschlossen werden und die Code-Lesbarkeit und -wartbarkeit verbessert werden.

Java Enum repräsentieren feste Wertesätze und bieten durch benutzerdefinierte Methoden und Konstruktoren Typensicherheit, Lesbarkeit und zusätzliche Funktionalität. Sie verbessern die Codeorganisation und können in Switch -Anweisungen zur effizienten Wertschreibung verwendet werden.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Dreamweaver Mac
Visuelle Webentwicklungstools

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool