Примеры в этой статье делятся конкретным кодом исходного кода системы управления информацией о студентах Java для вашей справки. Конкретный контент заключается в следующем
1. Studetmanage Class (основной интерфейс)
пакет com.sms3; Импорт java.awt.*; импортировать javax.swing.*; импортировать java.awt.event.*; Public Class Student Manage Extens JFrame реализует ActionListener { / ** * @param args * / public static void main (string [] args) {// todo автоматически сгенерированный метод. } // ======== Панель управление частным jlabel QueryLab = null; private jtextfield QueryTxt = null; Частный jbutton Querybtn = null; Частный jbutton allbtn = null; Частный jtable resulttb = null; Частный jscrollpane jsp = null; Частный jbutton addbtn = null; Частный jbutton deletebtn = null; Частный Jbutton updatebtn = null; Частный jpanel top = null; Частный JPanel Bottom = NULL; // ======= Private Stumodel SM = NULL; // Constructor public Student Manage () {/********************************* QueryTxt = new JTextField (10); Querybtn = new Jbutton ("Query"); allbtn = new jbutton ("all"); //.......... Долд запросов, чтобы послушать Querybtn.addactionListener (это); QueryBtn.SetActionCommand ("запрос"); allbtn.addactionListener (это); allbtn.setActionCommand ("All"); // ===== = deleteBtn = new Jbutton ("Delete"); UpdateBtnt = new Jbutton ("Modify"); //..........Дд столбец добавления и удаления addBtn.setActionCommand ("добавить"); deletebtn.addactionListener (это); deleteBtn.setActionCommand ("delete"); deletebtn.addactionListener (это); deleteBtn.setActionCommand ("delete"); updatebtn.addactionListener (это); UpdateBtbn.SetActionCommand («Обновление»); // ======== Создать общую планировку окна // ...... верхняя часть запроса верхнего уровня = new jPanel (); top.add (QueryLab); top.add (Querytxt); top.add (Querybtn); top.add (allbtn); // ...... нижний столбец добавления и удаления нижнего уровня = new jPanel (); внизу. ADD (addBtn); Bottom.add (deletebtn); Bottom.Add (UpdateBtn); // ...... дисплей среднего уровня sm = new Stumodel (); String sql = "select * from stu"; sm.querystu (sql, null); resultTB = new jtable (sm); jsp = new jscrollpane (resulttb); //........... Создайте общий макет this.add (top, borderlayout.north); this.add (jsp, borderlayout.center); this.add (внизу, borderlayout.south); // ======= Установите свойство окна This.SetSize (400, 300); this.setDefaultCloseoPeration (jframe.exit_on_close); this.setvisible (true); this.SetReSizable (false); } // Слушать @Override public void actionPerformed (actionEvent e) {// todo Автогенерированный сгенерированный метод if (e.getActionCommand (). Equals ("Query")) { /************************************* // ====== Получите название входной строки Student String. if (name.length ()! = 0) {// ======== Когда ввод имени действителен, выполните запрос //........... определить строку параметра sql = "select * из stu, где Stuname =?"; String [] paras = {name}; //........... } else {// ========== Когда имя пустое, установите напоминание joptionpane.showmessageDialog (это, «Имя ввод не может быть пустым»); }} else if (e.getActionCommand (). equals ("add")) { / ******************************** / Новый stuadddialog (это, «добавить информацию о студенте», true); String sql = "select * from stu"; JtableUpdate (SQL, NULL); } else if (e.getActionCommand (). Equals ("all")) { / *********************************** JtableUpdate (SQL, NULL); } else if (e.getActionCommand (). Equals ("delete")) { /********************************** /// ======== if (rownum == -1) {joptionpane.showmessageDialog (это, «Пожалуйста, выберите ряд»); возвращаться ; } // ==== = // ========= Удалить Student String SQL = "Удалить из Stu, где Stuid =?"; String [] paras = {stuid}; Stumodel tmp = new Stumodel (); tmp.cudstu (sql, paras); // ========= Модель обновления sql = "select * from stu"; JtableUpdate (SQL, NULL); } else if (e.getActionCommand (). equals ("update")) { /*********************************** if (rownum == -1) {joptionpane.showmessageDialog (это, «Пожалуйста, выберите ряд»); возвращаться ; } new Stuupdatedialog (это, «изменить информацию о студентах», true, sm, rownum); String sql = "select * from stu"; JtableUpdate (SQL, NULL); }} // ========== Обновление данных в jtable public void jtableUpdate (string sql, string [] paras) {//...create model sm = new Stumodel (); Sm.Querystu (SQL, Paras); //........... }}2. класс Stumodel (модель базы данных студентов)
пакет com.sms3; импортировать java.sql.resultset; импортировать java.util.vector; импортировать javax.swing.table.abstracttablemodel; открытый класс Stumodel расширяет AbstractTableModel {Private Vector ColumnNames; частный векторный гребень; // public stumodel () {string sql = "select * from stu"; String [] paras = {}; } // ======== Добавить и удалить студентов public boolean cudstu (string sql, string [] paras) {return new sqlhelper (). Cudexecute (sql, paras); } // ========= Запрос студента public void Querystu (String sql, String [] paras) {sqlhelper sqlhelper = null; // ======== Инициализируйте JTable Information ColumnNames = new Vector (); rowdates = new Vector (); colunnames.add ("номер студента"); columnnames.add ("name"); colunnames.add («пол»); colunnames.add ("age"); colunnames.add ("Home"); colunnames.add ("part"); 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: обрабатывать исключение} наконец {sqlHelper.close (); }} @Override public int getColumnCount () {// todo Автопогенетированный метод recute this.columnnames.size (); } @Override public int getRowCount () {// todo Автогенерированный метод gtub return this.rowdates.size (); } @Override public Object getValueat (int row, int col) {// todo автоматическое сгенерированное метод if (! Rowdates.isempty ()) return ((вектор) this.rowdates.get (row)). Get (col); иначе вернуть ноль; } @Override public String getColumnName (int column) {// todo автоматическое сгенерированное метод return (string) this.columnnames.get (column); }}3. Stuadddialog Class (добавьте информацию о студенческой информации)
пакет com.sms3; импортировать java.awt.borderlayout; импортировать java.awt.dialog; импортировать java.awt.frame; импортировать java.awt.gridlayout; импортировать java.awt.event.actionevent; импортировать java.awt.event.actionlistener; импортировать javax.swing.*; открытый класс Stuadddialog расширяет JDialog реализует ActionListener {// ======== Control // ...... Left Title Bar Private Jlabel Idlab, Namelab, Sexlab, Agelab, Jglab, deptlab; //......... Выберите заполнение информации о праве на заполнение в столбце Private Jtextfield Idtxt, nametxt, sextxt, agetxxt, jgtxt, depttxt; //.......... кнопка и кнопка отмены //........... // Constructor public stuadddialog (владелец кадра, название строки, логический модал) {// ======== Перепишите метод родительского класса Super (владелец, заголовок, модальный); // ====== = namelab = new jlabel ("name:"); sexlab = new Jlabel («Пол:»); agelab = new jlabel («Возраст:»); jglab = new jlabel ("родной город:"); deptlab = new jlabel ("Направление:"); // ========= Заполните информационный столбец справа is idtxt = new jtextfield (); nametxt = new JTextField (); sextxt = new JTextField (); agETXT = new JTextField (); agETXT = new JTextField (); agETXT = new JTextField (); jgtxt = new jtextfield (); depttxt = new jtextfield (); // ========== Добавить и отменить кнопки addBtn = new Jbutton ("Add"); cancelbtn = new jbutton ("cancel"); //..........Денд слушать addbtn.addactionListener (это); addBtn.setActionCommand ("добавить"); CancelBtn.AddactionListener (это); CancelBtn.SetActionCommand ("Cancel"); // ====== Create Mayout // ...... Создайте левый столбец = new jPanel (); left.setlayout (new Gridlayout (6, 1)); слева. Адд (Idlab); слева. Адд (namelab); слева. Адд (Sexlab); слева. Адд (agelab); Left.add (jglab); слева. Адд (deptlab); //.......... создать центр правой колонки = new jpanel (); Center.SetLayout (New Gridlayout (6, 1)); center.add (idtxt); center.add (nametxt); center.add (sextxt); center.add (agetxt); center.add (jgtxt); center.add (depttxt); // ============== = внизу. ADD (addBtn); Bottom.add (Cancelbtn); // ========= Общий макет This.Add (слева, borderlayout.west); this.add (Center, borderlayout.center); this.add (внизу, borderlayout.south); // ========== Установите атрибут окна this.setsize (300, 250); this.SetReSizable (false); this.setvisible (true); } @Override public void actionperformed (actionEvent e) {// todo автоматическое сгенерированное метод if (e.getActionCommand (). Equals ("Add")) { / *************************************** / Stumodel tmp = new Stumodel (); String sql = "вставьте в значения stu (?,?,?,?,?,?)"; String [] paras = {idtxt.getText (), nametxt.getText (), sextxt.getText (), agetxt.getText (), jgtxt.getText (), depttxt.getText ()}; if (! tmp.cudstu (sql, paras)) joptionpane.showmessageDialog (это, «добавить информацию о студенте»); // ======== Закрыть окно this.dispose (); } else if (e.getActionCommand (). equals ("cancel")) {// ======== Закрыть окно this.dispose (); }}}4. Stuupdatedialog Class (изменение информации о студентах subinterface)
пакет com.sms3; импортировать java.awt.borderlayout; импортировать java.awt.frame; импортировать java.awt.gridlayout; импортировать java.awt.event.actionevent; импортировать java.awt.event.actionlistener; Импорт javax.swing.jbutton; импортировать javax.swing.jdialog; импортировать javax.swing.jlabel; импортировать javax.swing.joptionpane; импортировать javax.swing.jpanel; импортировать javax.swing.jpanel; импортировать javax.swing.jtextfield; импортировать javax.swing.table.abstracttablemodel; открытый класс Stuupdatedialog Extends JDialog реализует ActionListener {// ======== Controls // ...... Left Title Bar Private Jlabel Idlab, Namelab, Sexlab, Agelab, Jglab, deptlab; //.......... Правая информация Выберите заполнить в столбце Private Jtextfield Idtxt, nametxt, sextxt, ageTxt, jgtxt, depttxt; //....Add и кнопка отмены частная jbutton addbtn, cancelbtn; //........... // Constructor public stuupdatedialog (владелец кадра, название строки, булево модал, Stumodel SM, Int Rownum) {// ========= Перепишите метод родительского класса Super (владелец, название, модальное); // =========== Левый бар namelab = new jlabel ("name:"); sexlab = new Jlabel («Пол:»); agelab = new jlabel («Возраст:»); jglab = new jlabel ("родной город:"); deptlab = new jlabel ("Dimension:"); // ======== Заполните информацию на правой стороне iDtxt = new JTextField (); idtxt.settext (((String) sm.getValueat (rownum, 0)); idtxt.setEdable (false); nametxt = new JTextField (); nametxt.settext (((String) sm.getValueat (rownum, 1)); sextxt = new JTextField (); sextxt.settext ((string) sm.getvalueat (rownum, 2)); agETXT = new JTextField (); agetxxt.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)); // ======== Добавить и отменить кнопки addBtn = new jbutton ("modify"); cancelbtn = new jbutton ("cancel"); //..........Денд слушать addbtn.addactionListener (это); addBtn.setActionCommand («Обновление»); CancelBtn.AddactionListener (это); CancelBtn.SetActionCommand ("Cancel"); // ======= Create Mayout // ...... Создание LEATE = NEW JPanel (); left.setlayout (new Gridlayout (6, 1)); слева. Адд (Idlab); слева. Адд (namelab); слева. Адд (Sexlab); слева. Адд (agelab); Left.add (jglab); слева. Адд (deptlab); //.......... создать центр правой колонки = new jpanel (); Center.SetLayout (New Gridlayout (6, 1)); center.add (idtxt); center.add (nametxt); center.add (sextxt); center.add (agetxt); center.add (jgtxt); center.add (depttxt); // ============ В нижнем слое добавить и отменить кнопку внизу = new jPanel (); внизу. ADD (addBtn); Bottom.add (Cancelbtn); // ======== Общий макет this.add (слева, borderlayout.west); this.add (Center, borderlayout.center); this.add (внизу, borderlayout.south); // ========== Установите атрибут окна this.setsize (300, 250); this.SetReSizable (false); this.setvisible (true); } @Override public void actionperformed (actionEvent e) {// todo автоматическое сгенерированное метод if (e.getActionCommand (). String sql = "Обновление stu set stuname =?, Stusex =?, Stuage =?, Stujg =?, Studept =? Где Stuid =?"; String [] paras = {nametxt.getText (), sextxt.getText (), agetxt.getText (), jgtxt.getText (), depttxt.getText (), idtxt.getText ()}; if (! tmp.cudstu (sql, paras)) joptionpane.showmessageDialog (это, «не удалось изменить информацию о студентах»); // ======== Закрыть окно this.dispose (); } else if (e.getActionCommand (). equals ("cancel")) {// ======== Закрыть окно this.dispose (); }}} 5. Class SqlHelper (самый низкий класс базы данных)
пакет com.sms3; Импорт java.sql.*; открытый класс SQLHELPER {// ========= CABSE CANBASE Private Connection CT = NULL; частное подготовленное предприятие PS = NULL; Частный результат 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"; частная строка passwd = "****"; // ========= Query Public Resultset QueryExecute (String SQL, String [] paras) {try {// ======== 1. Загрузить Driver Class.forname (Driver); // ======= 2. Подключить CT = DriverManager.getConnection (URL, пользователь, PassWD); // ======= 3. Создать подготовку ps = ct.prepareStatement (SQL); // ======= 4. Присвоить значение значению вопроса if (paras! = Null) {for (int i = 0; i <paras.length; i ++) {ps.setstring (i+1, paras [i]); }} // ====== 5. Выполнить rs = ps.executequery (); } catch (Exception e) {// todo: обрабатывать исключение explyStstackTrace (); } наконец {//this.close (); } // ========= возврат значения return rs; } // ======== Добавить или удалить Public Boolean Cudexecute (String SQL, String [] paras) {boolean b = true; Попробуйте {// ======== 1. Загрузить Driver Class.forname (Driver); // ====== 2. Подключить CT = DriverManager.getConnection (URL, пользователь, PassWD); // ====== 3. Создать подготовку ps = ct.prepareStatement (SQL); // ======= 4. Присвоить значение значению вопроса для (int i = 0; i <paras.length; i ++) {ps.setString (i+1, paras [i]); } // ======= 5. Выполнить if (ps.executeupdate ()! = 1) b = false; } catch (Exception e) {// todo: обрабатывать исключение b = false; e.printstacktrace (); } наконец {this.close (); } // ========== Значение возврата return b; } // ========== Close Resource public void cloid () {try {if (rs! = Null) rs.close (); if (ps! = null) ps.close (); if (ct! = null) ct.close (); } catch (Exception e2) {// todo: обрабатывать исключение e2.printstacktrace (); }}}Главный интерфейс
Добавить информационный интерфейс студента
Изменить информационный интерфейс студента
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.