Wie verbinde ich mich mit JDBC mit der Datenbank? (mit Code)
In diesem Artikel erfahren Sie, wie Sie JDBC mit der Datenbank verbinden. (Beigefügt ist der Code), der einen gewissen Referenzwert hat. Freunde in Not können sich darauf beziehen. Ich hoffe, er wird Ihnen hilfreich sein.
Einführung in JDBC
Der vollständige Name von JDBC lautet: Java Data Base Connectivity (Java-Datenbankverbindung), die einen einheitlichen Zugriff ermöglichen kann eine Vielzahl von Datenbanken. JDBC ist eine Reihe von Programmierschnittstellen für den Datenbankzugriff, die von Sun entwickelt wurden. Es handelt sich um eine API auf SQL-Ebene. Da es in der Java-Sprache geschrieben ist, verfügt es über gute plattformübergreifende Eigenschaften. Datenbankanwendungen, die mit JDBC geschrieben wurden, können auf jeder Plattform ausgeführt werden, die Java unterstützt, ohne dass unterschiedliche Anwendungen auf verschiedenen Plattformen geschrieben werden müssen. [Empfohlenes Video-Tutorial: Java-Tutorial]
JDBC-Programmierschritte
(1) Laden Sie den Treiber:
Laden Sie das Treiberpaket herunter: http://dev.mysql.com/downloads/connector/j/
Entpacken Sie die JAR-Datei und holen Sie sich sie. Kopieren Sie diese Datei in das Java-Projektverzeichnis Java Resources/Libraries/, → buildpath.
(2) Datenbankverbindung herstellen
(3) Statement-Objekt erstellen:
(4) SQL-Befehl an Datenbank senden
(5 ) Verarbeiten Sie die zurückgegebenen Ergebnisse aus der Datenbank (ResultSet-Klasse)
package com.baidu.emp.jdbcTest; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import com.mysql.jdbc.Driver; /** * 开始使用jdbc连接数据库 * @author Admin * */ public class Test001 { public static void main(String[] args) throws Exception { /** * 加载驱动 */ // 方法一: /* * import java.sql.DriverManager; import com.mysql.jdbc.Driver; */ // Driver driver = new Driver(); // DriverManager.registerDriver(driver); // 方法二:(推荐使用) Class.forName("com.mysql.jdbc.Driver"); /** * 创建链接 */ String url = "jdbc:mysql://localhost:3306/testjdbc"; String user = "root"; String password = "root"; Connection connection = DriverManager.getConnection(url, user, password); // 创建statement对象 Statement statement = connection.createStatement(); /** * 执行SQL,获取结果集 */ String sql = "select * from test01"; ResultSet result = statement.executeQuery(sql); // 遍历结果集 while (result.next()) { String name = result.getString("name"); int id = result.getInt("id"); System.out.println(name + "\t" + id); } /** * 关闭链接,释放资源 */ result.close(); statement.close(); connection.close(); } }
Um SQL-Injection zu verhindern, verwenden Sie PrepareStatement
package com.boya.emp.jdbcTest; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; /** * SQL注入,使用prepareStatement对象进行预编译 * @author Admin * */ public class Test002 { public static void main(String[] args) throws Exception { /** * 加载驱动 */ Class.forName("com.mysql.jdbc.Driver"); /** * 创建链接 */ String url = "jdbc:mysql://localhost:3306/testjdbc"; String user = "root"; String password = "root"; Connection connection = DriverManager.getConnection(url, user, password); // 写SQL String sql = "select * from test01 where id = ?"; //创建statement对象,预编译 PreparedStatement statement = connection.prepareStatement(sql); //设置参数 statement.setInt(1, 2); /** * 执行SQL,获取结果集 */ ResultSet result = statement.executeQuery(); // 遍历结果集 while (result.next()) { String name = result.getString("name"); int id = result.getInt("id"); System.out.println(name + "\t" + id); } /** * 关闭链接,释放资源 */ result.close(); statement.close(); connection.close(); } }
Für die Codeoptimierung legen Sie Konfigurationsdateien und Toolklassen fest und implementieren Ergänzungen und Löschungen.
Fügen Sie Konfigurationsdateien hinzu, um Datenbankänderungen und Benutzeranmeldungen zu erleichtern. . .
jdbc.properties (Name der Konfigurationsdatei)
driverName=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/testjdbc userName=root password=root
Beachten Sie, dass beim Schreiben der Konfigurationsdatei keine Leerzeichen, Anführungszeichen usw. vorhanden sein dürfen.
Toolklasse: Erhöhte Codekomplexität Benutzerfreundlichkeit
package com.baidu.emp.utils; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Properties; import org.junit.Test; public class JdbcUtils { static String driverClassName; static String url; static String user; static String password; static { // 创建配置文件对象 Properties properties = new Properties(); // 加载配置文件输入流 InputStream inputStream = JdbcUtils.class.getClassLoader().getResourceAsStream("jdbc.properties"); // 重新加载配置文件 try { properties.load(inputStream); // 获取配置文件的值 driverClassName = properties.getProperty("driverName"); url = properties.getProperty("url"); user = properties.getProperty("userName"); password = properties.getProperty("password"); Class.forName(driverClassName); } catch (Exception e) { // 抛出异常 throw new RuntimeException(e); } } /** * 获取连接 */ @Test public void testName() throws Exception { System.out.println(driverClassName); } public static Connection getConnection() { Connection connection = null; try { connection = DriverManager.getConnection(url, user, password); } catch (SQLException e) { // 抛出异常 throw new RuntimeException(e); } return connection; } /** * 关闭链接,释放资源 */ public static void close(Connection connection, PreparedStatement statement, ResultSet resultSet) { try { if (resultSet != null) { resultSet.close(); } resultSet = null; // 垃圾及时清除 //注意,不要弄成死循环 close(connection, statement); } catch (SQLException e) { throw new RuntimeException(e); } } /** * 增删改释放资源 */ public static void close(Connection connection, PreparedStatement statement) { try { if (connection != null) { connection.close(); } connection = null; if (statement != null) { statement.close(); } statement = null; } catch (SQLException e) { throw new RuntimeException(e); } } }
Ergänzungen, Löschungen und Änderungen testen:
package com.baidu.emp.jdbcTest; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import org.junit.After; import org.junit.Before; import org.junit.Test; import com.baidu.emp.utils.JdbcUtils; /** * 使用jdbcUtils连接数据库进行增删改查 * * @author Admin * */ public class Test003 { // 初始化值 Connection connection = null; PreparedStatement statement = null; ResultSet result = null; @Before public void start() throws Exception { // 创建链接 connection = JdbcUtils.getConnection(); System.out.println("创建链接"); } @After public void end() throws Exception { // 关闭链接 JdbcUtils.close(connection, statement, result); System.out.println("关闭链接"); } /** *插入数据 * @throws Exception */ @Test public void add() throws Exception { String sql = "insert into test01 values(null,?)"; statement = connection.prepareStatement(sql); statement.setString(1, "李四"); int result = statement.executeUpdate(); if (result!=0) { System.out.println("添加成功"); } } /** * 删除数据 * @throws Exception */ @Test public void del() throws Exception { String sql = "delete from test01 where id =?"; statement = connection.prepareStatement(sql); statement.setInt(1,3); int result = statement.executeUpdate(); if (result!=0) { System.out.println("删除成功"); } } /** * 修改数据 * @throws Exception */ @Test public void change() throws Exception { String sql = "update test01 set name = ? where id = ?"; statement = connection.prepareStatement(sql); statement.setString(1, "张飞"); statement.setInt(2, 2); int result = statement.executeUpdate(); if (result!=0) { System.out.println("修改成功"); } } /** * 查询全部数据 * @throws Exception */ @Test public void findAll() throws Exception { String sql = "select id , name from test01"; statement = connection.prepareStatement(sql); result = statement.executeQuery(); if (result.next()) { System.out.println("查询成功"); } } /** * 条件查询数据 * @throws Exception */ @Test public void findOne() throws Exception { String sql = "select id , name from test01 where id = ?"; statement = connection.prepareStatement(sql); statement.setInt(1, 2); result = statement.executeQuery(); if (result.next()) { System.out.println("查询成功"); } } }
Es gibt Fehler, ich hoffe, die Kollegen weisen Sie darauf hin.
Das Obige ist der gesamte Inhalt Ich hoffe, dass das Lernen für alle von Nutzen sein kann. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonWie verbinde ich mich mit JDBC mit der Datenbank? (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Nach Java8-291 ist TLS1.1 deaktiviert, sodass JDBC keine Verbindung zu SqlServer2008 über SSL herstellen kann. Was soll ich tun? es ist jre, gehen Sie zu {JAVA_HOME}/jre/ In lib/security, zum Beispiel????C:\ProgramFiles\Java\jre1.8.0_301\lib\security Wenn es sich um die grüne, installationsfreie tragbare Version von Eclipse handelt , suchen Sie im Installationsordner nach java.security, z. B.????xxx\plugins \org

Durch die weit verbreitete Anwendung von Java treten häufig JDBC-Fehler auf, wenn Java-Programme eine Verbindung zu Datenbanken herstellen. JDBC (JavaDatabaseConnectivity) ist eine Programmierschnittstelle in Java, die zum Herstellen einer Verbindung zu einer Datenbank verwendet wird. Daher ist ein JDBC-Fehler ein Fehler, der auftritt, wenn ein Java-Programm mit einer Datenbank interagiert. Hier sind einige der häufigsten JDBC-Fehler und wie man sie löst und vermeidet. ClassNotFoundException Dies ist die häufigste JDBC-Ausnahme

1. Erklären Sie, dass in JDBC die Methode „executeBatch“ mehrere DML-Anweisungen stapelweise ausführen kann und die Effizienz viel höher ist als die einzelne Ausführung von „executeUpdate“. Wie implementiert man die Batch-Ausführung in MySQL und Oracle? Dieser Artikel stellt Ihnen das Prinzip dahinter vor. 2. Einführung in das Experiment Dieses Experiment wird in den folgenden drei Schritten durchgeführt: a. Zeichnen Sie den Zeitaufwand für die Stapelausführung und Einzelausführung von JDBC in Oracle auf. c. Zeichnen Sie die Batch-Ausführung und die Einzelausführung von Oracleplsql auf. Die ausführungsaufwändigen Java- und Datenbankversionen sind wie folgt: Java17, Mysql8, Oracle

In den letzten Jahren hat sich die Anwendung der Java-Sprache immer weiter verbreitet, und JDBCAPI ist eine kreative Methode für Java-Anwendungen zur Interaktion mit Datenbanken. JDBC basiert auf einem offenen Datenbankverbindungsstandard namens ODBC, der es Java-Anwendungen ermöglicht, eine Verbindung zu beliebigen Datenbanken herzustellen Datenbank. Managementsystem (DBMS). Unter ihnen ist MySQL ein beliebtes Datenbankverwaltungssystem. Allerdings werden Entwickler auch auf einige häufige Probleme stoßen, wenn sie eine Verbindung zu MySQL-Datenbanken herstellen. Dieser Artikel zielt darauf ab, die JDBCAPI-Verbindung M vorzustellen

1. Voraussetzungen für die Datenbankprogrammierung Programmiersprachen wie Java, C, C++, Python und andere Datenbanken wie Oracle, MySQL, SQLServer und andere Datenbanktreiberpakete: Verschiedene Datenbanken stellen beispielsweise unterschiedliche Datenbanktreiberpakete bereit, die verschiedenen Programmiersprachen entsprechen : MySQL stellt das Java-Treiberpaket mysql-connector-java zur Verfügung, das für den Betrieb von MySQL auf Java-Basis erforderlich ist. Ebenso ist für den Betrieb einer auf Java basierenden Oracle-Datenbank das Datenbanktreiberpaket ojdbc von Oracle erforderlich. 2. Java-Datenbankprogrammierung: JDBCJDBC, JavaDatabaseConnectiv

Wie lese ich die ersten paar Datensätze in einer Datenbank mit PHP? Bei der Entwicklung von Webanwendungen müssen wir häufig Daten aus der Datenbank lesen und dem Benutzer anzeigen. Manchmal müssen wir nur die ersten paar Datensätze in der Datenbank anzeigen, nicht den gesamten Inhalt. In diesem Artikel erfahren Sie, wie Sie mit PHP die ersten Datensätze in der Datenbank lesen und spezifische Codebeispiele bereitstellen. Gehen Sie zunächst davon aus, dass Sie eine Verbindung zur Datenbank hergestellt und die Tabelle ausgewählt haben, die Sie bearbeiten möchten. Das Folgende ist ein einfaches Beispiel für eine Datenbankverbindung:

In Java-Programmen ist das Herstellen einer Verbindung zur Datenbank ein sehr häufiger Vorgang. Obwohl vorgefertigte Klassenbibliotheken und Tools zum Herstellen einer Verbindung zur Datenbank verwendet werden können, können während der Programmentwicklung dennoch verschiedene abnormale Situationen auftreten, darunter SQLException. SQLException ist eine von Java bereitgestellte Ausnahmeklasse. Sie beschreibt Fehler, die beim Zugriff auf die Datenbank auftreten, z. B. Fehler in der Abfrageanweisung, nicht vorhandene Tabellen, Verbindungsabbrüche usw. Für Java-Programmierer, insbesondere diejenigen, die JDBC (Java Data

Unterschiede zwischen Hibernate und JDBC: Abstraktionsebene: Hibernate bietet Objektzuordnung und Abfragegenerierung auf hoher Ebene, während JDBC manuelle Codierung erfordert. Objektrelationale Zuordnung: Hibernate bildet Java-Objekte und Datenbanktabellen ab, während JDBC diese Funktionalität nicht bereitstellt. Abfragegenerierung: Hibernate verwendet HQL, um die Abfragegenerierung zu vereinfachen, während JDBC das Schreiben komplexer SQL-Abfragen erfordert. Transaktionsverwaltung: Hibernate verwaltet Transaktionen automatisch, während JDBC eine manuelle Verwaltung erfordert.
