Die Beispiele in diesem Artikel teilen den spezifischen Code des Quellcode des Java Student Information Management Systems für Ihre Referenz. Der spezifische Inhalt ist wie folgt
1.Studetmanage -Klasse (Hauptschnittstelle)
Paket com.sms3; import Java.awt.*; Javax.swing importieren.*; import Java.awt.event.*; public class studentManage erweitert JFrame implementiert actionListener { / ** * @param args * / public static void main (String [] args) {// Todo automatisch generierte Methode Stub New StudentManage (); } // ======== Panel Control Private JLabel Quylab = null; private JTextField queryTxt = null; Privat Jbutton queryBtn = null; Privat Jbutton AllBtn = NULL; Private JTable resulttb = null; private JScrollpane jsp = null; Privat Jbutton addBtn = null; Privat Jbutton DeletEBTN = NULL; private Jbutton updateBtn = null; Privat Jpanel Top = NULL; Privat Jpanel boden = null; // ======= Private Stumodel SM = NULL; //Constructor public StudentManage() { /****************************** Initialize the panel control**********************/ //======== Query bar queryLab = new JLabel("Please enter a name:"); queryTxt = new JTextField (10); queryBtn = new Jbutton ("Query"); AllBtn = New Jbutton ("All"); //......Add Query Bar, um queryBtn.addactionListener (this) zu hören; queryBtn.setActActionCommand ("Query"); AllBtn.AddactionListener (this); AllBtn.SetactactionCommand ("All"); // =========== adds-and-deletion-Spalte addBtn = new Jbutton ("add"); DeleteBtn = new Jbutton ("delete"); updateBtn = new Jbutton ("modify"); //......Add Add-and-Deletion-Spalte Listen addBtn.addactionListener (this); addBtn.setActActionCommand ("add"); DeleteBtn.AddactionListener (this); DeleteBtn.SetActActionCommand ("Delete"); DeleteBtn.AddactionListener (this); DeleteBtn.SetActActionCommand ("Delete"); updateBtn.AddactionListener (this); updateBtn.setActActionCommand ("Update"); // ========= Erstellen Sie das Gesamtlayout des Fensters // ...... Abfragebalken von Top-Level Top = new Jpanel (); Top.Add (queylab); top.add (queryTxt); top.add (queryBtn); top.add (AllBtn); // ...... die add-and-deletion-Spalte unter untener Ebene unten = new jpanel (); boden.add (addBtn); boden.Add (DeletBETN); booth.add (UpdateBtn); // ...... Anzeigeleiste mit mittlerer Ebene sm = neuer Stumodel (); String SQL = "SELECT * von STU"; sm.querystu (sql, null); resulttb = new JTable (SM); JSP = new JScrollPane (Ergebnis); //......Konstruieren Sie das Gesamtlayout this.add (oben, borderLayout.north); this.add (JSP, BorderLayout.Center); this.add (unten, BorderLayout.South); // ======= Setzen Sie die Fenstereigenschaft this.setSize (400, 300); this.setDefaultCloseOperation (jframe.exit_on_close); this.setvisible (true); this.setResizable (falsch); } // Listen @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getActionCommand().equals("query")) { /***************************************/ //======= Get the name of the input student String name = queryTxt.getText().trim(); if (name.length ()! String [] paras = {name}; //......Update das Modell JTableUpDate (SQL, Paras); } else {// ========== Wenn der Name leer ist, setzen Sie die Erinnerung joptionpane.showMessagedialog (dieser "Name Eingabe kann nicht leer sein"); } } else if(e.getActionCommand().equals("add")) { /************************************/ new StuAddDialog(this, "Add student information", true); String SQL = "SELECT * von STU"; JTableUpDate (SQL, NULL); } else if(e.getActionCommand().equals("all")) { /************************************ All shows *************************/ String sql = "select * from stu"; JTableUpDate (SQL, NULL); } else if(e.getActionCommand().equals("delete")) { /************************************/ //======== Get the selection line number int rowNum = this.resultTb.getSelectedRow(); if (Rownum == -1) {joptionpane.showMessagedialog (this, "Bitte eine Zeile auswählen"); zurückkehren ; } // ========= Die Schüler -ID -Nummer String stuid = (String) sm.getValueat (Rownum, 0); // ========= Student String SQL = "Aus stu löschen wo stuid =?"; String [] paras = {stuid}; Stumodel tmp = neuer stumodel (); tmp.cudstu (SQL, paras); // ========== Aktualisieren Sie das Modell sql = "select * aus stu"; JTableUpDate (SQL, NULL); } else if(e.getActionCommand().equals("update")) { /******************************Modify************************/ //========= Get the selection line number int rowNum = this.resultTb.getSelectedRow(); if (Rownum == -1) {joptionpane.showMessagedialog (this, "Bitte eine Zeile auswählen"); zurückkehren ; } neuer stuupdatedialog (dies, "Schülerinformationen modifizieren", true, sm, rownum); String SQL = "SELECT * von STU"; JTableUpDate (SQL, NULL); }} // ========== Aktualisieren Sie Daten in jtable public void JTableUpDate (String SQL, String [] paras) {//...create modell sm = new Stumodel (); Sm.Quystu (SQL, Paras); //......Update das resultTtb.setModel (SM); }}2. Stumodelklasse (Student Database Model)
Paket com.sms3; importieren java.sql.resultset; Import Java.util.Vector; import javax.swing.table.abstractTablemodel; öffentliche Klasse Stumodel erweitert abstractTablemodel {private Vector ColumnNames; Private Vector Rowdates; // public stumodel () {string sql = "select * aus stu"; String [] paras = {}; } // ========= addieren und löschen Sie die Schüler public boolean cudstu (String SQL, String [] paras) {return New SQLHelper (). Cudexecute (SQL, Paras); } // ========= Fragen Sie den student public void querystu (String SQL, String [] paras) {SQLHELPER SQLHELPER = NULL; // ========= Initialisieren Sie JTable Information columnnames = new vector (); Rowdates = new vector (); columnNames.add ("Schülernummer"); columnNames.add ("name"); columnNames.add ("Geschlecht"); columnNames.add ("Alter"); columnnames.add ("home"); columnNames.add ("Teil"); try {sqlhelper = new SqlHelper (); ResultSet rs = sqlhelper.Queryexecute (SQL, paras); while (rs.Next ()) {vector row = new vector (); row.add (rs.getString (1)); row.add (rs.getString (2)); row.add (rs.getString (3)); row.add (rs.getString (4)); row.add (rs.getString (5)); row.add (rs.getString (6)); rowdates.add (row); }} catch (Exception e) {// toDo: Handle -Ausnahme} endlich {sqlhelper.close (); }} @Override public int getColumnCount () {// Todo automatisch generierte Methode Stub return this.columnnames.size (); } @Override public int getRowCount () {// Todo automatisch generierte Methode Stub return this.rowdates.size (); } @Override öffentliches Objekt getValueat (int row, int col) {// Todo automatisch generierte Methode Stub if (! Rowdates.isempTy () return ((vector) this.rowdates.get (row). Get (col); sonst kehre null zurück; } @Override public String getColumnName (int-Spalte) {// Todo automatisch generierte Methode Stub return (String) this.columnnames.get (Spalte); }}3.. Stuadddialog -Klasse (Fügen Sie Schülerinformationen hinzufügen)
Paket com.sms3; Import Java.awt.BorderLayout; import Java.awt.dialog; import Java.awt.frame; importieren java.awt.gridlayout; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; Javax.swing importieren.*; öffentliche Klasse Stuadddialog erweitert JDialog implementiert ActionListener {// ========= Panel Control // ...... linke Titelleiste privat jlabel idlab, namelab, sexlab, agelab, jglab, deptlab; //......Select Füllen Sie die Informationen auf dem Recht aus, um die Spalte private JTextField IDTXT, nametxt, sextxt, agetxt, jgtxt, depttxt; //......Add und stornieren button private jbutton addBtn, CancerBtn; //......Layout Control Private Jpanel links, Mitte, unten; // Konstruktor public stuadddialog (Rahmenbesitzer, String -Titel, boolescher Modal) {// ======== Die übergeordnete Klassenmethode Super (Eigentümer, Titel, Modal); // ============ Die Tag -Spalte links ist idlab = new JLabel ("Schülernummer:"); namelab = new JLabel ("Name:"); sexLab = new Jlabel ("Geschlecht:"); AGELAB = new JLabel ("Alter:"); jglab = new Jlabel ("Heimatstadt:"); Deptlab = new JLabel ("Richtung:"); // ========= Füllen Sie die Informationsspalte auf der rechten Seite aus idtxt = new JTextField (); nametxt = new JTextField (); sextxt = new JTextField (); Agetxt = new JTextField (); Agetxt = new JTextField (); Agetxt = new JTextField (); Jgtxt = new JTextField (); Depttxt = new JTextField (); // =========== add und abbrechen Schaltflächen addBtn = new Jbutton ("hinzufügen"); CancelBtn = new Jbutton ("Cancel"); //......Add listen addBtn.addactionListener (this); addBtn.setActActionCommand ("add"); CancelBtn.AddactionListener (this); CancelBtn.SetActActionCommand ("Cancel"); // ======= Layout erstellen // ...... links column = new jpanel (); links.setLayout (neuer GridLayout (6, 1)); links.Add (idlab); links.Add (Namelab); links.Add (sexLab); links.Add (Agelab); links.Add (jglab); links.Add (Deptlab); //...... creatieren Sie das rechte Spaltencenter = new Jpanel (); Center.SetLayout (neuer GridLayout (6, 1)); Center.Add (idtxt); Center.Add (nametxt); Center.Add (Sextxt); Center.Add (Agetxt); Center.Add (jgtxt); Center.Add (Depttxt); // =================== Die zugrunde liegende Hinzufügen und Abbrechen -Taste booton = new Jpanel (); boden.add (addBtn); boden.add (CancelBtn); // ========= Gesamtlayout this.add (links, BorderLayout.West); this.add (Mitte, BorderLayout.Center); this.add (unten, BorderLayout.South); // ========== Setzen Sie das Fenster ein. SetSetSize (300, 250); this.setResizable (falsch); this.setvisible (true); } @Override public void actionPerformed (actionEvent e) {// Todo automatisch generierte Methode Stub if (E.GetactactactactionCommand (). Equals ("add") { / ************************************************************************************************************************************* String SQL = "In stu -Werte einfügen (?,?,?,?,?,?)"; String [] paras = {idtxt.getText (), nametxt.getText (), sextxt.getText (), agetxt.getText (), jgtxt.getText (), depttxt.Getext ()}; if (! tmp.cudstu ( // ========= Schließen Sie das Fenster this.dispon (); } else if (e.getActionCommand (). Equals ("Cancel")) {// ======== Schließen Sie das Fenster. }}}V.
Paket com.sms3; Import Java.awt.BorderLayout; import Java.awt.frame; importieren java.awt.gridlayout; import Java.awt.event.ActionEvent; import Java.awt.event.ActionListener; import Javax.swing.jbutton; import Javax.swing.jdialog; import Javax.swing.jlabel; import Javax.swing.joptionpane; import Javax.swing.jpanel; import Javax.swing.jpanel; importieren javax.swing.jtextfield; import javax.swing.table.abstractTablemodel; Public Class StuUpdatedialog erweitert JDialog implementiert ActionListener {// ========= Panel Controls // ...... linke Titelleiste privat jlabel idlab, namelab, sexlab, agelab, jglab, deptlab; //......Right Information Wählen Sie die Spalte private jTextField idtxt, nametxt, sextxt, agetxt, jgtxt, depttxt; //...Add und abbrechen Schaltfläche Privat Jbutton addBtn, CancelBtn; //......Layout Control Private Jpanel links, Mitte, unten; // Constructor Public Stuupdatedialog (Rahmenbesitzer, String -Titel, Boolean Modal, Stumodel SM, Int Rownum) {// ========= Die übergeordnete Klassenmethode Super (Eigentümer, Titel, Modal); // ============ Die linke Label -Bar idlab = new JLabel ("Schülernummer:"); namelab = new JLabel ("Name:"); sexLab = new Jlabel ("Geschlecht:"); AGELAB = new JLabel ("Alter:"); jglab = new Jlabel ("Heimatstadt:"); DEPTLAB = New JLabel ("Dimension:"); // ======== Füllen Sie die Informationen auf der rechten Seite idtxt = new JTextField () aus; idtxt.setText ((String) sm.getvalueat (Rownum, 0)); idtxt.seteditable (false); nametxt = new JTextField (); nametxt.setText ((String) sm.getvalueat (Rownum, 1)); sextxt = new JTextField (); Sextxt.setText ((String) sm.getvalueat (Rownum, 2)); Agetxt = new JTextField (); Agetxt.setText ((String) sm.getvalueat (Rownum, 3)); Jgtxt = new JTextField (); jgtxt.setText ((String) sm.getvalueat (Rownum, 4)); Depttxt = new JTextField (); Depttxt.setText ((String) sm.getValueat (Rownum, 5)); // ======== addieren und abbrechen Schaltflächen addBtn = new Jbutton ("modify"); CancelBtn = new Jbutton ("Cancel"); //......Add listen addBtn.addactionListener (this); addBtn.setActActionCommand ("Update"); CancelBtn.AddactionListener (this); CancelBtn.SetActActionCommand ("Cancel"); // ======== Layout erstellen // ...... create links = new jpanel (); links.setLayout (neuer GridLayout (6, 1)); links.Add (idlab); links.Add (Namelab); links.Add (sexLab); links.Add (Agelab); links.Add (jglab); links.Add (Deptlab); //...... creatieren Sie das rechte Spaltencenter = new Jpanel (); Center.SetLayout (neuer GridLayout (6, 1)); Center.Add (idtxt); Center.Add (nametxt); Center.Add (Sextxt); Center.Add (Agetxt); Center.Add (jgtxt); Center.Add (Depttxt); // ============ Die untere Schalttaste hinzufügen und abbrechen. boden.add (addBtn); boden.add (CancelBtn); // ======== Gesamtlayout this.add (links, BorderLayout.West); this.add (Mitte, BorderLayout.Center); this.add (unten, BorderLayout.South); // ========== Setzen Sie das Fenster ein. SetSetSize (300, 250); this.setResizable (falsch); this.setvisible (true); } @Override public void ActionPersformed (actionEvent e) {// Todo Auto-Generated-Methode Stub if (E.GetActActionCommand (). Equals ("Update") { /** String SQL = "Aktualisieren stu -set stuname =?, Stusex =?, Stuage =?, Stujg =? String [] paras = {nametxt.getText (), sextxt.getText (), agetxt.getText (), jgtxt.getText (), depttxt.getText (), idtxt.gettext ()}; if (! tmp.cudstu ( // ========= Schließen Sie das Fenster this.dispon (); } else if (e.getActionCommand (). Equals ("Cancel")) {// ======== Schließen Sie das Fenster. }}} 5. SQLHELPER -Klasse (niedrigste Datenbankklasse)
Paket com.sms3; Java.sql.*importieren; öffentliche Klasse SQLHELPER {// ========= DATA -Datenbank private Verbindung ct = null; private prepectStatement ps = null; privates Ergebnis rs = null; private String driver = "com.microsoft.sqlserver.jdbc.sqlserverdriver"; private String url = "JDBC: SQLSERVER: //127.0.0.1: 1433; Database = StudentMan"; private String user = "sa"; private String passwd = "****"; // =========== Abfrage public resultSet queryExecute (String SQL, String [] paras) {try {// ========= 1. Laden Sie die Treiberklasse.Forname (Treiber); // ======== 2. Ct = driverManager.getConnection (URL, Benutzer, PassWD) anschließen; // ======== 3. Erstellen proprepedStatement ps = ct.preparestatement (SQL); // ======== 4. Dem Fragezeichen einen Wert zuweisen, wenn (paras! }} // ======= 5. Rs = ps.executeQuery () ausführen; } catch (Ausnahme e) {// toDo: Behandeln Sie die Ausnahme E.PrintStackTrace (); } endlich {//this.close (); } // ========= Rückgabewert Return Rs; } // ======== addieren oder löschen öffentliche boolean codexecute (String SQL, String [] paras) {boolean b = true; Versuchen Sie {// ======== 1. Laden Sie die Treiberklasse.Forname (Treiber); // ======= 2. Ct = driverManager.getConnection (URL, Benutzer, PassWD) anschließen; // ======= 3. Erstellen proprepedStatement ps = ct.preparestatement (SQL); // ======== 4. Dem Fragezeichen für (int i = 0; i <paras.length; i ++) {psSetString (i+1, paras [i]) zuweisen; } // ========= 5. Ausführen if (ps.executeUpdate ()! = 1) b = false; } catch (Ausnahme e) {// Todo: Behandeln Sie die Ausnahme b = false; E. printstacktrace (); } endlich {this.close (); } // ========== Rückgabewert Return B; } // =========== Ressource public void close () {try {if (rs! = Null) rs.close (); if (ps! = null) ps.close (); if (ct! = null) ct.close (); } catch (Ausnahme e2) {// toDo: Behandeln Sie die Ausnahme e2.printstacktrace (); }}}Hauptschnittstelle
Fügen Sie Schülerinformationsschnittstellen hinzu
Ändern Sie die Interformation der Schülerinformation
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.