Ich glaube, jeder ist mit JDBC vertraut. Solange Sie eine Java -Person sind, müssen Sie so etwas lernen, wenn Sie zum ersten Mal mit J2EE in Kontakt kommen. Wer sagt, dass Programme mit Datenbanken zu tun haben? JDBC ist ein sehr grundlegendes Wissen, um mit Datenbanken umzugehen, und ist auch relativ nahe an der zugrunde liegenden Ebene. In der tatsächlichen Arbeit verwenden Menschen reifere Frameworks wie Hibernate und MyBatis.
Als zugrunde liegende JDBC dieser ausgereiften Frameworks sollten wir es jedoch auch beherrschen. Nur durch das Verständnis der Hinzufügung, Löschung, Änderung und Abfrage von JDBC können wir besser verstehen, wie diese ausgereiften Frameworks Addition, Löschung, Änderung und Abfrage implementieren, wenn sie in Zukunft den Quellcode von Hibernate oder MyBatis untersuchen möchten.
Wenn wir zum Thema zurückkehren, schauen wir uns unsere Entwicklungsumgebung an:
Java -Sprache, Eclipse -Entwicklungstools, MySQL -Datenbank, Navicat -Datenbankvisualisierungstools.
Bitte überprüfen Sie die Informationen selbst für die Installation, Konstruktion und Verwendung der Entwicklungsumgebung (sehr einfach) und werden hier nicht ausführlich erläutert.
Der erste Schritt besteht darin , eine Datenbank zu erstellen, das Navicat-Datenbank-Visualisierungstool zu verwenden, um eine Datenbank zu erstellen, eine Tabelle in der Datenbank zu erstellen, mehrere Felder in der Tabelle zu erstellen (denken Sie daran, ein ID-Feld zu geben, einen eindeutigen Primärschlüssel, eine Selbstversorgungsequenz) und dann zwei Daten zu geben, um die Funktion zu testen, wie in der Abbildung gezeigt gezeigt:
Der zweite Schritt besteht darin, die Datenbank zu öffnen (ich hoffe, jeder kann auf dieses Beispiel tippen, was nicht viel Zeit in Anspruch nimmt. Seien Sie mit der Umgang mit der Datenbank vertraut, also werde ich sie in der Abbildung zeigen). Wie in der Abbildung gezeigt:
Der dritte Schritt besteht darin, die DBUTIL -Klasse zu transformieren, um den Erwerb von Datenbankverbindungen in der DAO -Schicht zu erleichtern. Der Code ist wie folgt:
Paket com.czgo.db; import Java.sql.Connection; import Java.sql.driverManager; Import Java.Sql.SqLexception; Public Class Dbutil {private statische endgültige String -String url = "jdbc: mysql: //127.0.1: 3306/imooc"; private statische endgültige Zeichenfolge Uname = "root"; private statische endgültige Zeichenfolge pwd = "root"; private statische Verbindung conn = null; static {try {// 1. Laden Sie die Treiberklasse.forname ("com.mysql.jdbc.driver"); // 2.. Erhalten Sie die Verbindung zur Datenbank conn = driverManager.getConnection (URL, UNAME, PWD); } catch (classNotFoundException e) {e.printstacktrace (); } catch (sqlexception e) {e.printstacktrace (); }} öffentliche statische Verbindung getConnection () {return conn; }} Schritt 4: Erstellen Sie Entity -Klassen (wie im obigen Bild gezeigt, beobachtet jeder die Zuweisung von Paketen. Wir werden MVC -Idee verwenden, um dieses Beispiel zu entwerfen. Es gibt Designideen zu MVC. Bitte lernen Sie es selbst, ich sage hier nicht viel) Der Code ist wie folgt:
Paket com.czgo.model; import Java.io.Serializable;/** * Entity Klasse: Goddess Klasse * * @Author Alanlee * */Public Class Goddess implementiert serialisierbar {private statische endgültige long serialversionuid = 1l; / *** eindeutig Primärschlüssel*/ private Ganzzahl -ID; / *** Name*/ privater Zeichenfolge Name; / *** Handynummer*/ private String mobie; / *** E -Mail*/ private Zeichenfolge E -Mail; / *** Home -Adresse*/ private String -Adresse; public Integer getid () {return id; } public void setId (Integer id) {this.id = id; } public String getName () {return name; } public void setName (String -Name) {this.name = name; } public String getMobie () {return mobie; } public void setMobie (String mobie) {this.mobie = mobie; } public String getemail () {E -Mail zurückgeben; } public void setemail (String -E -Mail) {this.email = E -Mail; } public String getAddress () {Rückgabeadresse; } public void setAddress (String -Adresse) {this.address = address; }} Schritt 5, Implementierung der DAO -Schicht (hier gibt es hier keine Schreibschnittstelle für große Projekte in der tatsächlichen Arbeit, was für die Wartung und Expansion der Programme geeignet ist). Der Code ist wie folgt:
Paket com.czgo.dao; import Java.sql.Connection; Import Java.sql.PreeParedStatement; Import Java.Sql.Resultset; Import Java.sql.sqlexception; com.czgo.model.Goddess;/** * Data layer processing class* * @author AlanLee * */public class GoddessDao{ /** * Query all goddesses* * @return * @throws SQLException */ public List<Goddess> query() throws SQLException { List<Goddess> goddessList = new ArrayList<Goddess>(); // Die Datenbankverbindung erhalten conn = dbutil.getConnection (); StringBuilder sb = new StringBuilder (); SB.Append ("ID, Name, Mobie, E -Mail, Adresse von Göttin"); // Die Datenbank über die Datenbankverbindung betreiben, um Addition, Löschung, Modifikation und Suche vorbereitetes statement ptmt = conn.preparestatement (sb.toString ()) zu realisieren; ResultSet rs = ptmt.executeQuery (); Göttin Göttin = Null; while (rs.Next ()) {Goddess = new Goddess (); GODDESS.SETID (rs.getint ("id")); GODDESS.SETNAME (Rs.GetString ("Name")); GODDESS.SETMOBIE (Rs.getString ("Mobie")); Goddess.Setemail (Rs.getString ("E -Mail")); GODDESS.SETADDRESS (Rs.GetString ("Adresse")); GODDESS.SETADDRESS (Rs.GetString ("Adresse")); Göttinlist.Add (Göttin); } kehren Sie GoddessList zurück; } / ** * Query Single Goddess * * @return * @throws SQLEXception * / Public Goddess QueryById (Integer id) löst SQLEXception aus {Goddess g = null; Verbindung conn = dbutil.getConnection (); String SQL = "" + "SELECT * von IMOOC_GODDESS" + "WO ID =?"; PrepedStatement ptmt = conn.preparestatement (SQL); ptmt.setint (1, id); ResultSet rs = ptmt.executeQuery (); while (rs.Next ()) {g = new Goddess (); g.setid (rs.getInt ("id")); g.setName (rs.getString ("name")); g.setmobie (rs.getString ("mobie")); g.setemail (rs.getString ("E -Mail")); G.SetAddress (rs.getString ("Adresse")); } return g; } / ** * Göttin hinzufügen * * @throw SQLEXception * / public void addgoddess (Goddess Goddess) löst sqlexception {// die Datenbankverbindung an conn = dbutil.getConnection (); String SQL = "In die Göttin (Name, Mobie, E -Mail, Adresse) Werte (?,?,?,?)"; PrepedStatement ptmt = conn.preparestatement (SQL); ptmt.setstring (1, Goddess.getName ()); ptmt.setstring (2, Göttin.getMobie ()); ptmt.setstring (3, Goddess.getemail ()); ptmt.setstring (4, Göttin.getAddress ()); ptmt.execute (); } / ** * Ändern Sie die Göttin -Information * * @throw SQLEXception * / public void updategoddess (Göttin Göttin) löscht sqlexception {connection conn = dbutil.getConnection (); String sql = "Goddess set name =?, Mobie =?, Mail =?, Address =? WO ID =?"; PrepedStatement ptmt = conn.preparestatement (SQL); ptmt.setstring (1, Goddess.getName ()); ptmt.setstring (2, Göttin.getMobie ()); ptmt.setstring (3, Goddess.getemail ()); ptmt.setstring (4, Göttin.getAddress ()); ptmt.execute (); } / ** * Goddess löschen * * @throws SQLEXception * / public void deletegoddess (Integer id) löst SQLEXception {Connection conn = dbutil.getConnection () aus; String SQL = "Von Goddess löschen Where id =?"; PrepedStatement ptmt = conn.preparestatement (SQL); ptmt.setint (1, id); ptmt.execute (); }} Schritt 6: Die Implementierung der Steuerungsschicht (mit der Steuerungsschicht wird hier die Steuerungsschicht und die Schnittstelle nachahmt und hier direkt Daten erstellen. Wenn es sich um die Daten der Schnittstelle handelt, können Sie die Empfangsparameter über Anfragen übergeben. Sie können den Code der Kontrollschicht gemäß der tatsächlichen Situation ändern und verbessern. Der Code ist wie folgt:
Paket com.czgo.action; import Java.sql.sqlexception; import java.util.list; import com.czgo.dao.goddessdao; com.czgo.model.goddess;/*** Kontrollschicht, erstellen Sie hier direkt Daten, und die Daten der Schnittstelle können durch Anfragen empfangen werden. Das gleiche ist wahr * * @author Alanlee * * */Public Class Goddessaction {/** * Fügte Göttin * * @param Goddess * @Throws Exception */Public void add (Göttin Göttin) aus der Ausnahme {Goddessdao dao = new Goddessdao (); Göttin.SetName ("aoi sora"); Göttin.SetMobie ("52220000"); Goddess.setemail ("[email protected]"); Göttin.SetAddress ("Peking Red Light District"); dao.addgoddess (Göttin); } / ** * Query Single Goddess * * @param id * @return * @throw SQLEXception * / Public Goddess Get (Integer id) löst Sqlexception aus {Goddessdao dao = new Goddessdao (); return dao.querybyid (id); } / ** * modifizieren Sie die Göttin * * @param Goddess * @Throws Exception * / Public void Edit (Göttin Göttin) Ausnahme {Goddessdao dao = new Goddessdao (); dao.updategoddess (Göttin); } / ** * Göttin löschen * * @param id * @throws SQLEXception * / public void del (Integer id) löst sqlexception {Goddessdao dao = new Goddessdao () aus; Dao.DeletEgoddess (ID); } / ** * Abfragen Sie alle Göttinnen * * @return * @throws Exception * / Public List <Goddess> query () löst eine Ausnahme aus {Goddessdao dao = new Goddessdao (); return dao.query (); } / ** * Testen Sie, ob es erfolgreich ist * * @param args * @throws SQLEXception * / public static void main (String [] args) löst Sqlexception {Goddessdao Goddessdao = new Goddessdao () aus; Liste <Goddess> GoddessList = Goddessdao.Query (); für (Göttin Göttin: GoddessList) {System.out.println (Goddess.getName () + "," + Goddess.getMobie () + "," + Goddess.getemail ()); }}} Lassen Sie uns schließlich sehen, ob die Hauptmethode erfolgreich ausgeführt wird:
Auf diese Weise wird eine einfache Java -JDBC -Verbindung zur MySQL -Datenbank abgeschlossen, um hinzuzufügen, zu löschen, zu ändern und abzufrage. Sie können versuchen, eine fortgeschrittene Abfrage zu erstellen, die auf der Abfrage basiert, dh eine Multi-Kondition-Abfrage, um die Verwendung von JDBC zu konsolidieren.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.