1. Предисловие
Я выучил Java Language в этом семестре. В конце семестра я написал систему управления с операционным интерфейсом и связанной с базой данных для консолидации знаний, которые я узнал в этом исследовании.
Используются знания: Основы Java, дизайн интерфейса Java (GUI), база данных Oracle (необходимость освоить основные операторы операции базы данных) и базы данных Link.
Используются инструменты разработки: Myeclipse Professional 2014
2. Дизайн
Атрибуты, которыми мы управляем: номер проекта, название проекта, участник, ответственный человек, время начала проекта и время окончания. Система научно -исследовательских проектов имеет четыре основных функции: добавление, удаление, модификация и запрос научных исследовательских проектов. И режим входа, предназначенный для повышения безопасности системы.
2.1 Добавить: добавьте всю информацию о научных исследовательских проектах в таблицу в базе данных
После добавления используйте операторы SQL для поиска в консоли, чтобы убедиться, что она была добавлена в базу данных.
2.2 Запрос: Найдите всю информацию о проекте по уникальному номеру проекта
2.3 Модификация: выберите проект, который будет изменен в соответствии с номером проекта, и повторно введите информацию о проекте, чтобы изменить его
2.4 Удалить: удалить всю информацию соответствующего проекта через уникальный номер проекта
3. исходный код формы
3.1 Интерфейс входа в систему
пакет научных исследований системы управления информацией; импорт java.awt.*; import java.awt.event.*; import javax.swing.*; public class loginwindows extends frame реализует Windowlistener, ActionListener {public label lglabel; // Имя пользователя тег публичный лейбл Pwdlabel; // Tag Password Public Textfield LGText; // текстовое поле Имя пользователя Public Textfield Pwdtext; // пароль текстовой поля публикации кнопка ЛГБТ; // кнопка входа в систему кнопки общедоступной кнопки Quitbt; // кнопка выхода public loginwindows () {super (); это. setize (400, 300); this.SetTitle («Система управления научной информацией»); this.setlayout (null); lglabel = new Label (); lglabel.settext ("Входная учетная запись:"); lglabel.setsize (60, 30); Lglabel.SetLocation (70, 70); pwdlabel = new Label (); pwdlabel.settext ("пароль:"); pwdlabel.setsize (60, 30); pwdlabel.setLocation (70, 150); LGText = new TextField (); lgtext.setsize (180, 30); LGText.SetLocation (140, 70); pwdtext = new Textfield (); pwdtext.setsize (180, 30); pwdtext.setLocation (140, 150); LGBT = New Button (); lgbt.setlabel ("login"); lgbt.setsize (60, 30); LGBT.SetLocation (120, 220); Quitbt = new Button (); quitbt.setlabel ("exit"); quitbt.setsize (60,30); Quitbt.SetLocation (220,220); quitbt.addactionListener (это); lgbt.addactionListener (это); this.addwindowlistener (это); this.add (lglabel); this.add (pwdlabel); this.add (lgtext); this.add (ЛГБТ); this.add (Quitbt); this.setvisible (true); } public static void main (string args []) {loginWindows main = new LoginWindows (); } @Override public void actionperformed (actionEvent e) {кнопка bt = (кнопка) e.getSource (); if (bt.getlabel (). equals ("exit")) {System.exit (0); } else {if ((lgText.getText (). equals ("")) || (pwdtext.getText (). equals (""))) {joptionpane.showmessageDialog (это ", учетная запись или пароль пуст"); } else {if ((lgtext.getText (). equals ("admin")) && (pwdtext.getText (). equals ("111"))) //if(lgtext.getText (). equals ("")) || (pwdtext.getText (). equals (""))) {this.setvisible (false); // sqlwindow sql = new sqlwindow (); WindowsView w = new WindowsView (); w.sciencepro (); } else {joptionpane.showmessageDialog (это, "нет разрешения"); }}}} @Override public void windopened (windowevent e) {// todo автоматически генерируемый метод} @override public void windowsclose (windowevent e) {// todo автоматически сгенерированный метод Busb System.exit (0); } @Override public void windowclosed (windowEvent e) {// todo Автогенерированный метод busb} @override public void windowsiconified (windowevent e) {// todo Автогенерированный метод busb} @override public windowdeiconized (windowevent e) {// todo auto-gene-atemover ateor ateor ateor ateor ateor ateorsized ateride WindowActivated (windowEvent e) {// TODO Автопогенетированный метод busb} @Override public void windowdeActivativated (windowEvent e) {// TODO Автогенерированный метод busb}}3.2 Исходный код основной формы
Пакетная система управления информацией о научных исследованиях; импортировать javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.event.*; import javax.swing.tree.*; public class windowsview реализует TreeselectionListener, ActionListener // window class {jframe main; JPanel Leathpa; JPanel UPPA; JPanel Downpa; /// Query Control Jlabel Numla; // Query JTextfield Numtxt; Jbutton Numbt; JTextfield nametxt; // Показать текстовое поле, где отображается имя проекта JTextfield Peopletxt; // показать участника JTextfield chincialLtxt; // Показать главного человека, отвечающего jtextfield timestarttxt; // Показать текстовое поле, которое отображает время начала JTextField TimeEndTxt; // Показать текстовое поле, которое отображает ожидаемое время окончания // Добавить управление Jlabel Anumla; Jlabel Anamela; Jlabel Apeoplela; Jlabel aprincipalla; Jlabel Atimestartla; Jlabel Atimeendla; Jtextfield anumtxt; JTextfield Anametxxt; JTextField ApeOpLextxt; JTextfield Aprincipaltxt; JTextfield atimestartTxt; JTextfield atimeEndtxt; Jbutton addbt; JTable Showtable; // Удалить управление jlabel dnumla; Jbutton dnumbt; JTextfield dnumtxt; // изменять управление Jlabel alnumla; JTextfield allnumtxt; Jbutton Alsebt; Jlabel Allnumla; Jlabel Allnumla; Jlabel Alnamela; Jlabel alpeoplela; Jlabel Alprincipalla; Jlabel altimestartla; Jlabel Altimeendla; Jtextfield alnumtxt; JTextfield Almatext; JTextfield alpeopletxt; JTextfield Alprincipaltxt; JTextfield altimestarttxt; JTextfield AltimeEndtxt; public void sciencepro () {main = new jframe (); main.setsize (800 800); main.settitle («Управление информацией о научных исследованиях»); main.setlayout (null); LEATEPA = new jPanel (); Leathpa.setsize (150, 600); Leathpa.SetLocation (0, 0); Leathpa.setbackground (color.white); initleftPanel (); main.add (левша); uppa = new jpanel (); uppa.setsize (650, 400); uppa.setlocation (150, 0); uppa.setbackground (color.gray); main.add (uppa); downpa = new jpanel (); downpa.setsize (650, 400); uppa.setbackground (color.gray); main.add (uppa); downpa = new jpanel (); downpa.setsize (650, 400); downpa.setlocation (150, 400); downpa.setbackground (color.orange); main.add (downpa); main.setvisible (true); } private void initleftPanel () {string [] strs = {"Query", "добавить", "Delete", "Modify"}; Jtree tree = new jtree (strs); Tree.addtreeselectionListener (это); LEATEPA.Add (дерево); } public void valueChanged (TreesElectionEvent e) {jtree tree = (jtree) e.getSource (); DefaultMutableTreeNode selectionNode = (defaultmutableTreeNode) Tree.getLastSelectedPathComponent (); String str = selectionNode.toString (); if (str.equals ("Query")) {initupdownpawhensearch (); } if (str.equals ("add")) {initupdownpawhenadd (); } if (str.equals ("delete")) {initupdownpawhendelete (); } if (str.equals ("modify")) {initupdownpawhenalert (); }} private void initupdownpawhensearch () {// clear uppa.removeall (); downpa.removeall (); // динамически загружать элементы управления на верхних и нижних панелях uppa.setlayout (null); numla = new jlabel (); numla.settext («Пожалуйста, введите номер проекта»); Numla.SetLocation (40, 60); numla.setsize (100, 40); numtxt = new JTextField (); numtxt.setLocation (180, 60); numtxt.setsize (200, 30); numbt = new jbutton (); numbt.settext ("Query"); numbt.addactionListener (это); Numbt.SetLocation (250, 160); numbt.setsize (60, 30); uppa.add (numla); uppa.add (numtxt); uppa.add (numbt); uppa.validate (); uppa.repaint (); numbt.addactionListener (это); // динамически загружать управление панелью nametxt = new jtextfield (); nametxt.setLocation (80, 50); nametxt.setsize (300, 30); peopletxt = new jtextfield (); peopletxt.setlocation (80, 100); peopletxt.setsize (300, 30); acfinealtxt = new jtextfield (); chancipaltxt.setlocation (80, 150); chanciousaltxt.setsize (300, 30); timestarttxt = new jtextfield (); TimeStartTxt.SetLocation (80, 200); timestarttxt.setsize (300, 30); TimeEndTxt = new JTextField (); TimeEndTxt.SetLocation (80, 250); TimeEndTxt.setSize (300, 30); downpa.setlayout (null); downpa.add (nametxt); downpa.add (peopletxt); downpa.add (chincealtxt); downpa.add (timestarttxt); downpa.add (timeendtxt); downpa.validate (); downpa.repaint (); } public void actionPerformed (actionEvent e) {jbutton bt = (jbutton) e.getSource (); //bt.addactionListener( Это); if (bt.getText (). equals ("Query")) {if (numtxt.getText (). equals ("" ")) {joptionpane.showmessageDialog (null," Пожалуйста, введите номер проекта "); } else {dealsearch deal = new Dealsearch (); String inf = deal.findprobynum (integer.parseint (numtxt.getText (). Trim ())); if ((inf! = null) && (! inf.equals ("")))) {string [] strs = inf.split (","); nametxt.settext (strs [1]); peopletxt.settext (strs [2]); chanciousaltxt.settext (strs [3]); timestarttxt.settext (strs [4]); TimeEndTxt.Settext (strs [5]); }}} if (bt.getText (). equals ("new")) {if (anumtxt.getText (). equals ("") || anametxt.getText (). equals ("") || apeopletxt.gettext (). equals ("") || aprincipaltxt.gettext (). Joptionpane.showmessagedialog (null, «не может быть нулевое значение на входе !!»); } else {ScienceProject s = new ScienceProject (); s.setnum (integer.parseint (anumtxt.getText ())); s.setname (nametxt.getText ()); s.setpeople (apeopletxt.gettext ()); S.SetLeader (aprincipaltxt.getText ()); s.settimestart (atimestarttxt.getText ()); s.settimefinish (atimeendtxt.getText ()); Dealadd deal = new Dealadd (); deal.add (ы); }} if (bt.getText (). equals ("delete")) {if (integer.parseint (dnumtxt.getText ()) == 0) {joptionpane.showmessageDialog (null, "не может удалить номер пустого элемента !!"); } else {dealdelete deal = new Dealdelete (); deal.delete (integer.parseint (dnumtxt.getText (). trim ())); }} if (bt.getText (). equals ("propect")) {if (integer.parseint (allnumtxt.getText ())) == 0) {joptionpane.showmessageDialog (null, "Пустой номер проекта не может быть изменен !!"); } else {dealsub deal = new Dealsub (); deal.submit (integer.parseint (allnumtxt.getText ())); }} if (bt.getText (). equals ("modify")) {if (almetxtxt.gettext (). equals ("") || alpeopletxt.gettext (). equals ("") || alprincipaltxt.gettext (). equals (") || altimestarttxt.gettext (). equals (") || altimeendtxt.gettext (). не может быть нулевым значением во входе !! »); } else {ScienceProject s = new ScienceProject (); s.setnum (integer.parseint (allnumtxt.getText ())); s.setname (almetxt.gettext ()); s.setpeople (alpeopletxt.gettext ()); s.setleader (alprincipaltxt.gettext ()); s.settimestart (altimestarttxt.getText ()); s.settimefinish (altimeendtxt.getText ()); Didalter Deal = new Dealalter (); Deal.alter (ы); }}} private void initupdownpawhenadd () {// clear uppa.removeall (); downpa.removeall (); // динамическая загрузка верхней панели uppa.setlayout (null); anumla = new jlabel (); anumla.settext («Пожалуйста, введите номер предмета, который будет добавлен»); Anumla.SetLocation (30, 50); anumla.setsize (150, 40); anumtxt = new jtextfield (); anumtxt.setlocation (200, 50); anumtxt.setsize (250, 30); Anamela = new jlabel (); Anamela.settext («Пожалуйста, введите имя проекта, которое будет добавлено»); Anamela.SetLocation (30, 100); Anamela.setsize (150, 40); anametxt = new jtextfield (); Anametxt.SetLocation (200, 100); anametxt.setsize (250, 30); apeoplela = new jlabel (); apeoplela.settext («Пожалуйста, введите участник проекта»); apeoplela.setlocation (30, 150); apeoplela.setsize (150, 40); apeopletxt = new jtextfield (); apeopletxt.setlocation (200, 150); apeopletxt.setsize (250, 30); aprincipalla = new jlabel (); aprincipalla.settext («Пожалуйста, введите лидер проекта»); Aprincipalla.SetLocation (30, 200); aprincipalla.setsize (150, 40); aprincipaltxt = new jtextfield (); aprincipaltxt.setlocation (200, 200); aprincipaltxt.setsize (250, 30); atimestartla = new jlabel (); atimestartla.settext («Пожалуйста, введите время начала проекта»); atimestartla.setlocation (30, 250); atimestartla.setsize (150, 40); atimestarttxt = new jtextfield (); atimestarttxt.setlocation (200, 250); atimestarttxt.setsize (250, 30); atimeendla = new jlabel (); atimeendla.settext («Пожалуйста, введите время окончания проекта»); atimeendla.setlocation (30, 300); atimeendla.setsize (150, 40); atimeendtxt = new jtextfield (); atimeendtxt.setlocation (200, 300); atimeendtxt.setsize (250, 30); addbt = new jbutton (); addbt.settext ("new"); addbt.addactionListener (это); //addbt.addmouseListener( Это); addbt.SetLocation (250, 340); addbt.setsize (60, 30); uppa.add (addbt); uppa.add (anumla); uppa.add (namela); uppa.add (apeoplela); uppa.add (aprincipalla); uppa.add (atimestartla); uppa.add (atimeendla); uppa.add (atimetxxt); uppa.add (anumtxt); uppa.add (apeopletxt); uppa.add (aprincipaltxt); uppa.add (atimestarttxt); uppa.add (atimeendtxt); uppa.validate (); uppa.repaint (); downpa.validate (); downpa.repaint (); downpa.repaint (); } private void initupdownpawhendelete () {// clear uppa.removeall (); downpa.removeall (); // динамически загружать управление верхней панелью uppa.setlayout (null); numla = new jlabel (); numla.settext («Пожалуйста, введите номер элемента, который будет удален»); Numla.SetLocation (40, 60); numla.setsize (150, 40); dnumtxt = new jtextfield (); dnumtxt.setlocation (200, 60); dnumtxt.setsize (250, 30); dnumbt = new jbutton (); dnumbt.settext ("delete"); dnumbt.addactionListener (это); Dnumbt.SetLocation (270, 170); dnumbt.setsize (60, 30); uppa.add (numla); uppa.add (dnumtxt); uppa.add (dnumbt); uppa.validate (); uppa.repaint (); downpa.validate (); downpa.repaint (); } private void initupdownpawhenalert () {// clear uppa.removeall () на верхних и нижних панелях; downpa.removeall (); // динамически загружать управление верхней панелью uppa.setlayout (null); alnumla = new jlabel (); alnumla.settext («Пожалуйста, введите номер проекта, который будет изменен»); Alnumla.SetLocation (40, 60); alnumla.setsize (150, 40); alsebt = new jbutton (); alsebt.settext ("отправить"); alsebt.addactionListener (это); Alsebt.SetLocation (270, 170); alsebt.setsize (60, 30); allnumtxt = new jtextfield (); allnumtxt.setlocation (200, 60); allnumtxt.setsize (200, 30); uppa.add (alnumla); uppa.add (alsebt); uppa.add (allnumtxt); uppa.validate (); uppa.repaint (); albt = new jbutton (); albt.settext ("modify"); Albt.AddactionListener (это); Albt.SetLocation (450, 170); albt.setsize (60, 30); /* allnumla = new jlabel (); allnumla.settext («Пожалуйста, введите измененный номер проекта»); allnumla.setlocation (30, 00); allnumla.setsize (150, 40); alnumtxt = new jtextfield (); alnumtxt.setlocation (180, 00); alnumtxt.setsize (250, 30);*/ almela = new jlabel (); almanela.settext («Пожалуйста, введите измененное имя проекта»); Alnamela.SetLocation (30, 50); almanela.setsize (150, 40); almaTxt = new JTextField (); almatext.setlocation (180, 50); almatext.setsize (250, 30); alpeoplela = new jlabel (); alpeoplela.settext («Пожалуйста, сбросьте участника»); alpeoplela.setlocation (30, 100); alpeoplela.setsize (150, 40); alpeopletxt = new jtextfield (); alpeopletxt.setlocation (180, 100); alpeopletxt.setsize (250, 30); alprincipalla = new jlabel (); alprincipalla.settext («Пожалуйста, сбросьте лидера проекта»); Alprincipalla.SetLocation (30, 150); alprincipalla.setsize (150, 40); alprincipaltxt = new jtextfield (); alprincipaltxt.setlocation (180, 150); alprincipaltxt.setsize (250, 30); altimestartla = new jlabel (); altimestartla.settext («Пожалуйста, сбросьте время начала проекта»); altimestartla.setlocation (30, 200); altimestartla.setsize (150, 40); altimestarttxt = new jtextfield (); altimestarttxt.setlocation (180, 200); altimestarttxt.setsize (250, 30); altimeendla = new jlabel (); altimeendla.settext («Пожалуйста, сбросьте время окончания проекта»); altimeendla.setlocation (30, 250); altimeendla.setsize (150, 40); altimeendtxt = new jtextfield (); altimeendtxt.setlocation (180, 250); altimeendtxt.setsize (250, 30); downpa.add (albt); //downpa.add(allnumla); downpa.add (alnamela); downpa.add (alpeoplela); downpa.add (alprincipalla); downpa.add (altimestartla); downpa.add (altimeendla); downpa.add (altimetxt); //downpa.add(alnumtxt); downpa.add (alpeopletxt); downpa.add (alprincipaltxt); downpa.add (altimestarttxt); downpa.add (altimeendtxt); downpa.setlayout (null); downpa.validate (); downpa.repaint (); }}3.3 Организация операторов SQL и деталей базы данных ссылок
Пакетная система управления информацией о научных исследованиях; Импорт java.sql.*; import java.util.scanner; открытый класс sql {public void AddScienceProject (ScienceProject ScienceProject) {try {class.forname ("oracle.jdbc.driver.oracledriver"). newinstance (); String constr = "jdbc: Oracle: thin: @localhost: 1521: xe"; Connection con = DriverManager.getConnection (Constry "System", "1"); Stringbuffer sql = new Stringbuffer ("Вставка в науку values ("+ScienceProject.getNum ()+", ""+ScienceProject.getName ()+", '"+ScienceProject.getPeople ()+"', '"+ScienceProject.getLeader ()+",'"+ScienceProject.getTimeStart ()+","+ScienceProject Утверждение st = con.createStatement (); St.execute (sql.tostring ()); S.Close (); con.close (); } catch (Exception e) {// todo: обрабатывать System.out.println (e.toString ()); }} public void delScienceProject (ScienceProject ScienceProject) {try {class.forname ("oracle.jdbc.driver.oracledriver"). newinstance (); String constr = "jdbc: Oracle: thin: @localhost: 1521: xe"; Connection con = DriverManager.getConnection (Constry "System", "1"); StringBuffer sql = new StringBuffer ("Удалить из науки, где num ="+scienceProject.getNum ()+""); Утверждение st = con.createStatement (); St.execute (sql.tostring ()); S.Close (); con.close (); } catch (Exception e) {// todo: обрабатывать System.out.println (e.toString ()); }} public void upDscienceProject (ScienceProject ScienceProject) {try {class.forname ("oracle.jdbc.driver.oracledriver"). newinstance (); String constr = "jdbc: Oracle: thin: @localhost: 1521: xe"; Connection con = DriverManager.getConnection (Constry "System", "1"); Stringbuffer sql = new Stringbuffer ("Обновление науки name = '"+scienceproject.getName ()+"', kykpeople = '"+scienceProject.getPeople ()+", Manager =' "+ScienceProject.getLeader ()+" ', timestart =' "+ScienceProject.getTimeStart ()+", TimeNd = '"+ScientProject.getTimeFinish ()+", где num = "+scienceProject.getNum ()+" "); Утверждение st = con.createStatement (); St.execute (sql.tostring ()); S.Close (); con.close (); } catch (Exception e) {// todo: обрабатывать system.out.println ("Modify Exception"); System.out.println (e.toString ()); }} public ScienceProject findBynum (int num) {ScienceProject ScienceProject = new ScienceProject (); try {class.forname ("oracle.jdbc.driver.oracledriver"). newinstance (); String constr = "jdbc: Oracle: thin: @localhost: 1521: xe"; Connection con = DriverManager.getConnection (Constry "System", "1"); StringBuffer SQL = New StringBuffer ("SELECT * из науки, где num ="+num+""); Утверждение st = con.createStatement (); Результаты RS = St.exeCuteQuery (SQL.ToString ()); while (rs.next ()) {scienceproject.setnum (rs.getint (1)); ScienceProject.SetName (Rs.GetString (2)); ScienceProject.SetPeople (Rs.GetString (3)); ScienceProject.SetLeader (Rs.GetString (4)); ScienceProject.SetTimeStart (Rs.GetString (5)); ScienceProject.SetTimeFinish (Rs.GetString (6)); } st.close (); con.close (); } catch (Exception e) {// todo: обрабатывать System.out.println (e.toString ()); } return ScienceProject; } public ScienceProject Sил () {ScienceProject ScienceProject = new ScienceProject (); try {class.forname ("oracle.jdbc.driver.oracledriver"). newinstance (); String constr = "jdbc: Oracle: thin: @localhost: 1521: xe"; Connection con = DriverManager.getConnection (Constry "System", "1"); StringBuffer SQL = new StringBuffer ("select *из науки"); Утверждение st = con.createStatement (); Результаты RS = St.exeCuteQuery (SQL.ToString ()); while (rs.next ()) {scienceproject.setnum (rs.getint (1)); ScienceProject.SetName (Rs.GetString (2)); ScienceProject.SetPeople (Rs.GetString (3)); ScienceProject.SetLeader (Rs.GetString (4)); ScienceProject.SetTimeStart (Rs.GetString (5)); ScienceProject.SetTimeFinish (Rs.GetString (6)); } st.close (); con.close (); } catch (Exception ex) {// todo: обрабатывать System.out.println (ex.ToString ()); } return ScienceProject; } public static void main (string args []) {}}3.4 Добавить, удалить, искать и изменить соответствующий исходный код
// Устранение неполадок с добавлением системы управления информацией о научных исследованиях пакетов; Import javax.swing.joptionPane; открытый класс dealadd {public dideadd () {} public void Add (ScienceProject S) {SQL SQL = new SQL (); if (sql.findbynum (s.getnum ()). getnum ()! = 0) {joptionpane.showmessageDialog (null, «Этот проект уже существует, пожалуйста, повторно введите!»); } else {sql.AddScienceProject (s); Joptionpane.showmessageDialog (null, "AddSuccess"); }}} Как видно из дизайнерской части, номер проекта должен быть представлен сначала при удалении, поэтому необходимо обработать событие отправки.
// Обработка пакета отправки в научные исследования системы управления информацией; import javax.swing.joptionpane; public class dealsub {dealsub () {} public void отправить (int num) {sql sql = new sql (); if (sql.findbynum (num) .getnum () == 0) {joptionpane.showmessageDialog (null, «этот проект не существует»); } else {joptionpane.showmessageDialog (null, «пожалуйста, заполните измененную информацию о проекте ниже»); }}} // Обработка пакета удаления научных исследований системы управления информацией; Import javax.swing.joptionPane; открытый класс dealdelete {public dealdelete () {} public void delete (int num) {ScienceProject s = new ScienceProject (); SQL SQL = новый SQL (); if (sql.findbynum (num) .getnum () == 0) {joptionpane.showmessageDialog (null, «Проект не существует ~»); } else {s = sql.findbynum (num); sql.delscienceproject (ы); Joptionpane.showmessageDialog (null, "Удалить успешно ~"); }}} // Обработка и изменение пакета научных исследований системы управления информацией; импортировать javax.swing.joptionpane; public Class Diadalter {public dieslater () {} public void alter (ScienceProject S) {SQL SQL = new SQL (); sql.updscienceproject (ы); Joptionpane.showmessageDialog (null, «модифицировать успешно»); }} // Обработка и пакет запросов научных исследований системы управления информацией; открытый класс Dealsearch // Обработка и запросы события {public dealsearch () {} public String findprobynum (int num) // Query по номеру проекта {string result = ""; ScienceProject S = New ScienceProject (); SQL SQL = новый SQL (); s = sql.findbynum (num); result = s.getnum ()+","+s.getname ()+","+s.getpeople ()+","+s.getleader ()+","+s.gettimestart ()+","+s.gettimefinish (); результат возврата; }}3.5 Окно основного вызова функции
Пакетная система управления информацией о научных исследованиях; открытый тест класса {public static void main (string [] args) {loginWindows v = new LoginWindows (); }}4. Резюме
Есть еще несколько дефектов. Благодаря незнакомому с научными исследовательскими проектами, некоторые атрибуты необоснованы, и есть много вещей, которые не рассматривались. Кроме того, незнакомая с GUI также ограничивает наш дизайн в окне. Он также должен быть изменен с точки зрения свойств проекта и Windows.
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.