版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 面向?qū)ο笳n程設計 報告</p><p> ?。}目實驗室設備信息管理系統(tǒng))</p><p><b> 目錄</b></p><p> 1 課程設計任務和概述3</p><p> 1.1 設計目的3</p><p><b> 1.2設計意義3<
2、/b></p><p> 1.3 設計任務3</p><p> 1.4 開發(fā)環(huán)境3</p><p> 2 系統(tǒng)分析與建模4</p><p> 2.1 系統(tǒng)功能分析4</p><p> 2.2 用例圖及用例說明5</p><p> 2.2.1用戶登錄用例5</p
3、><p> 2.2.2 整體用例框圖6</p><p><b> 3 系統(tǒng)設計7</b></p><p> 3.1 系統(tǒng)類圖7</p><p> 3.2 系統(tǒng)活動圖10</p><p> 3.2.1 用例“用戶登錄”活動圖10</p><p> 3.2.2
4、用例“用戶登錄成功”活動圖11</p><p> 3.3 系統(tǒng)時序圖12</p><p> 3.3.1查詢設備信息時序圖12</p><p> 3.3.2添加設備信息時序圖13</p><p> 3.3.3修改設備信息時序圖14</p><p> 3.3.4刪除設備信息時序圖14</p&g
5、t;<p><b> 4 系統(tǒng)實現(xiàn)15</b></p><p> 4.1系統(tǒng)管理員模塊15</p><p> 4.2查詢設備所有信息模塊21</p><p> 4.3添加設備信息模塊29</p><p> 4.4修改設備信息模塊31</p><p> 4.5刪除
6、設備信息模塊32</p><p><b> 5 系統(tǒng)測試34</b></p><p> 6 課程設計總結(jié)39</p><p><b> 7 參考文獻39</b></p><p> 實驗室設備信息管理系統(tǒng)設計報告</p><p> 1 課程設計任務和概述<
7、;/p><p><b> 1.1 設計目的</b></p><p> “面向?qū)ο蠹夹g(shù)”是計算機科學與技術(shù)專業(yè)的核心專業(yè)課,面向?qū)ο蟪绦蛟O計技術(shù)也是軟件工程師的基本技能,“面向?qū)ο笳n程設計”的目的是理解和鞏固面向?qū)ο蟪绦蛟O計的基本理論、原理和方法的重要的實踐環(huán)節(jié)。 </p><p> 本課程設計綜合應用學生所學知識,結(jié)合小型應用系統(tǒng)的設計,建立
8、面向?qū)ο蟪绦蛟O計的概念,理解和鞏固封裝、類與對象、繼承與多態(tài)、JAVA數(shù)據(jù)結(jié)構(gòu)、多線程、IO、UI設計及UML等知識,為后續(xù)課程的學習打下良好的基礎。 </p><p><b> 1.2設計意義</b></p><p> 使用實驗室管理系統(tǒng)使得查詢工作更系統(tǒng)化、規(guī)范化、自動化。從而在一方面提高了管理人員的工作效率,減少了傳統(tǒng)人工管理方式所帶來的人力,物力的浪費,另
9、一方面由于本軟件具有查找方便、可靠性高、存儲量大等優(yōu)點,大大地減少了系統(tǒng)的富復雜性。</p><p><b> 1.3 設計任務</b></p><p> 該系統(tǒng)主要任務是實現(xiàn)實驗室設備基本信息的增加、刪除、修改查詢,包括設備型號、設備名稱、生產(chǎn)廠商,單價等。管理員可以根據(jù)設備的名稱、設備型號等關(guān)鍵字進行設備信息的查詢;大大提高了管理設備的效率,實時性的觀察設備信
10、息更新。</p><p><b> 1.4 開發(fā)環(huán)境</b></p><p> 操作系統(tǒng):Windows 7 32位/64位</p><p> 軟件:eclipse 3.7</p><p> 數(shù)據(jù)庫:MySQL 5.0</p><p><b> 2 系統(tǒng)分析與建模&l
11、t;/b></p><p> 2.1 系統(tǒng)功能分析</p><p><b> 主要功能包括:</b></p><p><b> 設備添加信息:</b></p><p> 該部分功能主要是用于系統(tǒng)設備管理員輸入設備的各種信息,加強系統(tǒng)的可擴展性和延續(xù)性,使系統(tǒng)信息保持更新。</p&
12、gt;<p><b> 瀏覽設備信息:</b></p><p> 瀏覽全部的設備信息,將所有的設備信息都展示出來方便用戶調(diào)用,只要適用于實驗室管理員</p><p><b> 查詢設備信息:</b></p><p> 查詢設備信息,以及相關(guān)資料,查詢分兩種方式,一種是按設備型號查詢,另一種是按設備名稱
13、查詢。</p><p><b> 刪除設備信息:</b></p><p> 刪除設備信息功能主要用于更新設備信息數(shù)據(jù),對于不必要的信息和錯誤的過時的信息進行相關(guān)處理,有利于簡化系統(tǒng),對于系統(tǒng)的運行速度的提升有著良好的加速效果。</p><p><b> 修改設備信息:</b></p><p>
14、 此功能用于修改設備信息,使用權(quán)限均適用于普通用戶。進行設備信息的相關(guān)修改對于系統(tǒng)的正常運行有著顯著的作用。</p><p><b> 系統(tǒng)登錄:</b></p><p> 合法的用戶和系統(tǒng)的管理員才可以進入系統(tǒng),他們具有權(quán)限不一樣,管理員可以操作該系統(tǒng)的一切功能,而用戶只能查看和瀏覽設備的信息。</p><p> 2.2 用例圖及用例
15、說明</p><p> 2.2.1用戶登錄用例</p><p> (1)用戶登錄用例描述</p><p> 用戶登錄,是本系統(tǒng)提供的一項基本服務。在實驗室設備信息管理系統(tǒng)的建模過程中,將這一行為抽象為一個用例。在不考慮軟件的具體實現(xiàn)細節(jié)基礎上,給出如下的用例描述。</p><p> (2)用戶登錄用例圖</p><
16、p> 根據(jù)(1)的用例描述,畫出用戶登錄用例圖,見圖1。</p><p> 圖1用戶登錄模塊的用例圖</p><p> 用戶登錄模塊用例主要提供兩個基本功能:</p><p> (1)用戶通過登錄界面輸入“用戶名”和“密碼”;</p><p> (2)系統(tǒng)對用戶輸入的“用戶名”和“密碼”進行驗證,以判斷用戶身份的合法性。<
17、;/p><p> 2.2.2 整體用例框圖</p><p> 圖2設備信息系統(tǒng)的整體用例框圖</p><p><b> 3 系統(tǒng)設計</b></p><p><b> 3.1 系統(tǒng)類圖</b></p><p> (1)Device類和User類的UML圖</p&g
18、t;<p> ?。?)MainFrameUI類和LoginIU類UML圖</p><p> (3)QueryUI查詢類、AddDevice添加類、UpdateUI修改類的UML圖</p><p> (4)整個系統(tǒng)的UML框架圖</p><p><b> 3.2 系統(tǒng)活動圖</b></p><p>
19、3.2.1 用例“用戶登錄”活動圖</p><p> 用例“用戶登錄成功”活動圖</p><p><b> 3.3 系統(tǒng)時序圖</b></p><p> 3.3.1 查詢設備信息時序圖</p><p> 3.3.2添加設備信息時序圖</p><p> 3.3.3修改設備信息時序圖<
20、/p><p> 3.3.4刪除設備信息時序圖</p><p><b> 4 系統(tǒng)實現(xiàn)</b></p><p> 4.1系統(tǒng)管理員模塊</p><p> 本模塊主要是為了往數(shù)據(jù)庫中管理設備信息記錄,以及添加新的設備信息記錄、修改需要變更的信息、刪除已經(jīng)停行的設備記錄等,對現(xiàn)有的系統(tǒng)進行管理操作,保證實驗室設備信息管理的
21、合理性。 </p><p><b> 詳細代碼:</b></p><p><b> (1)User類:</b></p><p> package dao;</p><p> public class User {</p><p> //1 兩個屬性&l
22、t;/p><p> private int id;</p><p> private String uname;</p><p> private String passwd;</p><p><b> //2 構(gòu)造方法</b></p><p> public User(int id, St
23、ring uname, String passwd) {</p><p><b> super();</b></p><p> this.id = id;</p><p> this.uname = uname;</p><p> this.passwd = passwd;</p><p>
24、;<b> }</b></p><p> public User(String uname, String passwd) {</p><p><b> super();</b></p><p> this.uname = uname;</p><p> this.passwd = pas
25、swd;</p><p><b> }</b></p><p> //3 get和set方法</p><p> public String getUname() {</p><p> return uname;</p><p><b> }</b></p>
26、;<p> public int getId() {</p><p> return id;</p><p><b> }</b></p><p> public void setId(int id) {</p><p> this.id = id;</p><p><
27、;b> }</b></p><p> public void setUname(String uname) {</p><p> this.uname = uname;</p><p><b> }</b></p><p> public String getPasswd() {</p&
28、gt;<p> return passwd;</p><p><b> }</b></p><p> public void setPasswd(String passwd) {</p><p> this.passwd = passwd;</p><p><b> }</b>
29、;</p><p><b> }</b></p><p> ?。?)界面LoginUI類</p><p> import service.IDeviceService;</p><p> import dao.User;</p><p> public class LoginUI exte
30、nds JDialog {</p><p> static final int OK=1,CANCEL=0;</p><p> private int ModalResult = -1;</p><p> private final JPanel contentPanel = new JPanel();</p><p> privat
31、e JLabel lblLogon;</p><p> private JLabel lblUserName;</p><p> private JLabel lblPassWd;</p><p> private JTextField txtUserName;</p><p> private JPasswordField txtP
32、assWd;</p><p> private JButton btnLogon;</p><p> private JButton btnCancel;</p><p><b> /**</b></p><p> * Launch the application.</p><p><
33、;b> */</b></p><p> public static void main(String[] args) {</p><p><b> try {</b></p><p> LoginUI dialog = new LoginUI();</p><p> dialog.setDef
34、aultCloseOperation(JDialog.DISPOSE_ON_CLOSE);</p><p> dialog.setVisible(true);</p><p> } catch (Exception e) {</p><p> e.printStackTrace();</p><p><b> }</b
35、></p><p><b> }</b></p><p><b> /**</b></p><p> * Create the dialog.</p><p><b> */</b></p><p> public LoginUI() {
36、</p><p><b> //設置模式對話框</b></p><p> setModal(true);</p><p> setTitle("用戶登錄");</p><p> setBounds(100, 100, 277, 189);</p><p> getCo
37、ntentPane().setLayout(new BorderLayout());</p><p> contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));</p><p> getContentPane().add(contentPanel, BorderLayout.CENTER);</p><p> c
38、ontentPanel.setLayout(null);</p><p> lblUserName = new JLabel("用戶名");</p><p> lblUserName.setBounds(27, 31, 54, 15);</p><p> contentPanel.add(lblUserName);</p>&
39、lt;p> lblPassWd = new JLabel("密碼");</p><p> lblPassWd.setBounds(27, 69, 54, 15);</p><p> contentPanel.add(lblPassWd);</p><p> txtUserName = new JTextField();</p&
40、gt;<p> txtUserName.setBounds(106, 28, 120, 21);</p><p> contentPanel.add(txtUserName);</p><p> txtUserName.setColumns(10);</p><p> txtPassWd = new JPasswordField();</
41、p><p> txtPassWd.setBounds(106, 66, 120, 21);</p><p> contentPanel.add(txtPassWd);</p><p><b> {</b></p><p> JPanel buttonPane = new JPanel();</p>&l
42、t;p> buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));</p><p> getContentPane().add(buttonPane, BorderLayout.SOUTH);</p><p> btnLogon = new JButton("登錄");</p><p&
43、gt;<b> //登錄按鈕的功能</b></p><p> btnLogon.addActionListener(new ActionListener() {</p><p> public void actionPerformed(ActionEvent arg0) {</p><p><b> //設置返回狀態(tài)碼<
44、/b></p><p> ModalResult = OK ;</p><p><b> //隱藏對話框</b></p><p> setVisible(false);</p><p><b> }</b></p><p><b> });</
45、b></p><p> btnLogon.setActionCommand("OK");</p><p> buttonPane.add(btnLogon);</p><p> getRootPane().setDefaultButton(btnLogon);</p><p> btnCancel = new
46、 JButton("取消");</p><p><b> //取消按鈕的功能</b></p><p> btnCancel.addActionListener(new ActionListener() {</p><p> public void actionPerformed(ActionEvent e) {<
47、/p><p> ModalResult = CANCEL ;</p><p> setVisible(false);</p><p><b> }</b></p><p><b> });</b></p><p> btnCancel.setActionCommand(
48、"Cancel");</p><p> buttonPane.add(btnCancel);</p><p><b> }</b></p><p><b> }</b></p><p> //獲得登錄用戶信息</p><p> public U
49、ser getUser(){</p><p> return new User(</p><p> txtUserName.getText(),</p><p> new String(txtPassWd.getPassword())</p><p><b> );</b></p><p>
50、;<b> }</b></p><p><b> /**</b></p><p> * @return the modalResult</p><p><b> * 獲取返回狀態(tài)碼</b></p><p><b> */</b></p>
51、;<p> public int getModalResult() {</p><p> return ModalResult;</p><p><b> }</b></p><p><b> //清除登錄痕跡</b></p><p> public void clear()
52、{</p><p> txtUserName.setText("");</p><p> txtPassWd.setText("");</p><p><b> }</b></p><p><b> }</b></p><p>
53、 ?。?)DeviceUserDao接口(考慮到有多個方法功能,我們用接口實現(xiàn)多繼承)</p><p> public interface DeviceUserDao extends IBaseDao<Device,Integer>{</p><p> //這個接口里會實現(xiàn)兩個方法 1.查找用戶名和密碼的方法 </p><p> public
54、abstract User findByNamePassword(String uname,String passwd);</p><p> // 2. 顯示用戶表的所有的值</p><p> public abstract List<User> findAll();</p><p> // 3.顯示設備查詢的所有值</p><
55、;p> public abstract List<Device> findDeviceAll();</p><p><b> }</b></p><p> ?。?)實現(xiàn)接口DeviceUserDao里的具體方法</p><p> public class DeviceServiceImpl implements IDe
56、viceService{</p><p> //實現(xiàn)登錄用戶功能的結(jié)果</p><p><b> @Override</b></p><p> public User findByNamePassword(String uname, String passwd){</p><p> return deviceda
57、o.findByNamePassword(uname, passwd);</p><p><b> }</b></p><p> //實現(xiàn)用戶查詢的結(jié)果</p><p><b> @Override</b></p><p> public List<User> findAll()
58、{</p><p> return devicedao.findAll();</p><p><b> }</b></p><p><b> }</b></p><p> // 下面來寫查找用戶名和密碼的方法findByNamePassword()實現(xiàn)登陸功能!</p><
59、;p><b> @Override</b></p><p> public User findByNamePassword(String uname, String passwd) {</p><p> User user = null;</p><p> Connection con = JDBCConnectionFactor
60、y.getConnection();</p><p><b> try {</b></p><p> PreparedStatement pstmt = con</p><p> .prepareStatement("select name,password from user where name=? and password
61、=?");</p><p> pstmt.setString(1, uname);</p><p> pstmt.setString(2, passwd);</p><p> ResultSet rs = pstmt.executeQuery();</p><p> if (rs.next()) {</p>&
62、lt;p> user = new User(rs.getString(1),</p><p> rs.getString(2));</p><p><b> }</b></p><p> } catch (SQLException e) {</p><p> e.printStackTrace();<
63、;/p><p> } finally {</p><p> if (con != null)</p><p><b> try {</b></p><p> con.close();</p><p> } catch (SQLException e) {</p><p&g
64、t; e.printStackTrace();</p><p><b> }</b></p><p><b> }</b></p><p> return user;</p><p><b> }</b></p><p> // 接下來我們就
65、要實現(xiàn)這個(User)表的查詢啦 和上面類似</p><p><b> @Override</b></p><p> public List<User> findAll() {</p><p> List<User> list = new ArrayList<User>();</p>&l
66、t;p> Connection conn = JDBCConnectionFactory.getConnection();</p><p><b> try {</b></p><p> Statement stmt = conn.createStatement();</p><p> String sql = "sel
67、ect id, name, password from user order by id asc";</p><p> ResultSet rs = stmt.executeQuery(sql);</p><p> while (rs.next()) {</p><p> list.add(new User(rs.getInt(1), </p
68、><p> rs.getString(2),</p><p> rs.getString(3))</p><p><b> );</b></p><p><b> }</b></p><p> } catch (SQLException e) {</p>
69、<p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p> } finally {</p><p> if (conn != null) {</p><p><b> try {</b></p>
70、;<p> conn.close();</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p><b> }</b>&
71、lt;/p><p><b> }</b></p><p><b> }</b></p><p> return list;</p><p><b> }</b></p><p> 4.2查詢設備所有信息模塊</p><p>
72、 管理員可以瀏覽設備的所有信息,實時觀察設備信息的動態(tài)性</p><p><b> 設備類</b></p><p><b> (Device類)</b></p><p> package dao;</p><p> public class Device {</p><
73、p> //1 7個屬性 </p><p> private int id;</p><p> private String dno;</p><p> private String dname;</p><p> private String dproducer;</p><p> private
74、 String dprice;</p><p> private String dcount;</p><p> private String dsum;</p><p> //2 構(gòu)造方法</p><p> public Device(String dno, String dname, String dproducer, S
75、tring dprice,</p><p> String dcount, String dsum) {</p><p><b> super();</b></p><p> this.dno = dno;</p><p> this.dname = dname;</p><p> th
76、is.dproducer = dproducer;</p><p> this.dprice = dprice;</p><p> this.dcount = dcount;</p><p> this.dsum = dsum;</p><p><b> }</b></p><p> p
77、ublic Device(int id, String dno, String dname, String dproducer,</p><p> String dprice, String dcount, String dsum) {</p><p><b> super();</b></p><p> this.id = id;<
78、;/p><p> this.dno = dno;</p><p> this.dname = dname;</p><p> this.dproducer = dproducer;</p><p> this.dprice = dprice;</p><p> this.dcount = dcount;</
79、p><p> this.dsum = dsum;</p><p><b> }</b></p><p> // 3 7個set和get方法</p><p> public int getId() {</p><p> return id;</p><p><
80、b> }</b></p><p> public void setId(int id) {</p><p> this.id = id;</p><p><b> }</b></p><p> public String getDno() {</p><p> ret
81、urn dno;</p><p><b> }</b></p><p> public void setDno(String dno) {</p><p> this.dno = dno;</p><p><b> }</b></p><p> public Str
82、ing getDname() {</p><p> return dname;</p><p><b> }</b></p><p> public void setDname(String dname) {</p><p> this.dname = dname;</p><p><
83、;b> }</b></p><p> public String getDproducer() {</p><p> return dproducer;</p><p><b> }</b></p><p> public void setDproducer(String dproducer)
84、 {</p><p> this.dproducer = dproducer;</p><p><b> }</b></p><p> public String getDprice() {</p><p> return dprice;</p><p><b> }</
85、b></p><p> public void setDprice(String dprice) {</p><p> this.dprice = dprice;</p><p><b> }</b></p><p> public String getDcount() {</p><p
86、> return dcount;</p><p><b> }</b></p><p> public void setDcount(String dcount) {</p><p> this.dcount = dcount;</p><p><b> }</b></p>
87、;<p> public String getDsum() {</p><p> return dsum;</p><p><b> }</b></p><p> public void setDsum(String dsum) {</p><p> this.dsum = dsum;</p
88、><p><b> }</b></p><p><b> }</b></p><p> ?。?)IDeviceService設備接口類(根據(jù)設計模式直接調(diào)用接口就行)</p><p> 【考慮到多個方法,這里還是選用接口,實現(xiàn)多繼承完成具體功能】</p><p> pub
89、lic interface IDeviceService {</p><p> public void setDevicedao(deviceDaoImpl devicedao);</p><p> public List<User> findAll();</p><p> public User findByNamePassword(String
90、 uname, String passwd);</p><p> public List<Device> findDeviceAll();</p><p> public boolean delete(Integer id);</p><p> public boolean update(Device device);</p><
91、;p> public Device findById(Integer id);</p><p> public boolean insert(Device device);</p><p><b> }</b></p><p> ?。?)實現(xiàn)接口(DeviceServiceImpl)的具體方法</p><p&g
92、t; package service;</p><p> import java.util.List;</p><p> import dao.Device;</p><p> import dao.User;</p><p> import dao.deviceDaoImpl;</p><p> publ
93、ic class DeviceServiceImpl implements IDeviceService{</p><p> //定義一個具體方法的類的一個</p><p> private deviceDaoImpl devicedao;</p><p><b> @Override</b></p><p>
94、public void setDevicedao(deviceDaoImpl devicedao) {</p><p> this.devicedao = devicedao;</p><p><b> }</b></p><p> //返回所有查詢的結(jié)果</p><p><b> @Override&
95、lt;/b></p><p> public List<Device> findDeviceAll(){</p><p> return devicedao.findDeviceAll();</p><p><b> }</b></p><p><b> }</b><
96、/p><p><b> ?。?)具體的方法</b></p><p> //這是查詢所有設備信息的方法</p><p><b> @Override</b></p><p> public List<Device> findDeviceAll() {</p><p&g
97、t; List<Device> list = new ArrayList<Device>();</p><p> Connection conn = JDBCConnectionFactory.getConnection();</p><p><b> try {</b></p><p> Statement s
98、tmt = conn.createStatement();</p><p> String sql = "select id,D_no,D_name,D_producer,D_price,D_count,D_sum from euipinfo order by id asc";</p><p> ResultSet rs = stmt.executeQuery(s
99、ql);</p><p> while(rs.next()){</p><p> list.add(new Device(rs.getInt(1),</p><p> rs.getString(2), </p><p> rs.getString(3), </p><p> rs.getString(4),&
100、lt;/p><p> rs.getString(5), </p><p> rs.getString(6), </p><p> rs.getString(7)</p><p><b> ));</b></p><p><b> }</b></p><
101、;p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p><b> }finally{</b></p><p> if(conn != n
102、ull){</p><p><b> try {</b></p><p> conn.close();</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.p
103、rintStackTrace();</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> return list;</p><p><b> }</b
104、></p><p><b> (4)界面UI</b></p><p> package SourceCode;</p><p> //import java.awt.event.*;</p><p> import javax.swing.*;</p><p> import ja
105、vax.swing.table.DefaultTableModel;</p><p> import java.awt.*;</p><p> import java.awt.event.ActionEvent;</p><p> import java.awt.event.ActionListener;</p><p> impor
106、t java.io.File;</p><p> import java.io.IOException;</p><p> import java.util.*;</p><p> import java.sql.*;</p><p> class BrowerDeviceFrame implements ActionListener
107、 {</p><p><b> JFrame f;</b></p><p> Container cp;</p><p> JPanel jpS, jpanelWest;</p><p> JButton jbt1, jbt2, input;</p><p> static JButto
108、n output;</p><p> JLabel label, L;</p><p> static JTable table;</p><p> Object columnName[] = { "設備名稱", "型號", "生產(chǎn)廠家", "單價", "數(shù)量"
109、, "金額" };</p><p> Object ar[][] = new Object[1000][6];</p><p> String sno;</p><p> String count = "1000";</p><p> BrowerDeviceFrame() {</p>
110、;<p> f = new JFrame("預覽儀器設備");</p><p> cp = f.getContentPane();</p><p> jpS = new JPanel();</p><p> jpanelWest = new JPanel();</p><p> jbt1 = new
111、 JButton("確定");</p><p> input = new JButton("導入");</p><p> output = new JButton("導出");</p><p> jbt1.setBackground(Color.lightGray);</p><p
112、> jbt2 = new JButton("返回");</p><p> jbt2.setBackground(Color.lightGray);</p><p> label = new JLabel(</p><p> "<html><font size='5'>&nbs
113、p; "</p><p> + "預覽設備<br><hr>以下是設備的所
114、有信息</font>",</p><p> SwingConstants.CENTER);</p><p> label.setForeground(Color.black);</p><p> L = new JLabel("實驗室現(xiàn)在共有設備" + count + "臺");</p>
115、<p> table = new JTable(ar, columnName);</p><p> JScrollPane scrollpane = new JScrollPane(table);</p><p> jpS.add(jbt1);</p><p> jpS.add(jbt2);</p><p> //
116、jpS.add(input);</p><p> //jpS.add(output);</p><p> JPanel jpanel = new JPanel();</p><p> jpanel.add(label);</p><p> JPanel pp4 = new JPanel();</p><p>
117、; JPanel jpE = new JPanel();</p><p> cp.add(jpanel, "North");</p><p> JPanel jp = new JPanel();</p><p> JPanel p = new JPanel();// 用來放兩個表</p><p> p.setLa
118、yout(new BorderLayout());</p><p> p.add(L, "North");</p><p> p.add(scrollpane);</p><p> cp.add(pp4, "West");</p><p> cp.add(p, "Center"
119、;);</p><p> cp.add(jpS, "South");</p><p> cp.add(jpE, "East");</p><p> jpanel.setBackground(Color.lightGray);</p><p> jpS.setBackground(Color.li
120、ghtGray);</p><p> jpanelWest.setBackground(Color.lightGray);</p><p> f.setSize(1000, 600);</p><p> f.setVisible(true);</p><p> jbt1.addActionListener(this);// 注冊監(jiān)聽器
121、</p><p> jbt2.addActionListener(this);</p><p> input.addActionListener(this);</p><p><b> }</b></p><p> int i = 0;</p><p> public void show
122、Record() {</p><p> while (i >= 0) {</p><p> ar[i][0] = "";</p><p> ar[i][1] = "";</p><p> ar[i][2] = "";</p><p> ar[i
123、][3] = "";</p><p> ar[i][4] = "";</p><p> ar[i][5] = "";</p><p><b> i--;</b></p><p><b> }</b></p><p
124、><b> i = 0;</b></p><p><b> try {</b></p><p> Class.forName("com.mysql.jdbc.Driver").newInstance();</p><p> } catch (Exception e) {</p>
125、<p> e.printStackTrace();</p><p><b> }</b></p><p><b> try {</b></p><p> Connection con = DriverManager</p><p> .getConnection("
126、jdbc:mysql://localhost:3306/Device?user=root&password=");</p><p> String s = "select * from device ";</p><p> Statement sql = con.createStatement();</p><p> Re
127、sultSet rs = sql.executeQuery(s);</p><p> while (rs.next()) {</p><p> String dname=rs.getString(1);</p><p> String dno=rs.getString(2);</p><p> String dproducer=rs.
128、getString(3);</p><p> String dprice=rs.getString(4);</p><p> String dcount=rs.getString(5);</p><p> String dsum=rs.getString(6);</p><p> ar[i][0]=dname;</p>
129、<p> ar[i][1]=dno;</p><p> ar[i][2]=dproducer;</p><p> ar[i][3]=dprice;</p><p> ar[i][4]=dcount;</p><p> ar[i][5]=dsum;</p><p><b> i++;<
130、;/b></p><p><b> }</b></p><p> count = "" + i + "";</p><p> L.setText("實驗室現(xiàn)在共有設備" + count + "臺");</p><p> f.re
131、paint();</p><p> con.close();</p><p> } catch (SQLException g) {</p><p> System.out.println(g.getErrorCode());</p><p> System.out.println(g.getMessage());</p>
132、<p><b> }</b></p><p><b> }</b></p><p> public void actionPerformed(ActionEvent e) {</p><p> String cmd = e.getActionCommand();</p><p>
133、; if (cmd.equals("確定")) {</p><p><b> f.hide();</b></p><p><b> }</b></p><p> if (cmd.equals("返回")) {</p><p><b> f.
134、hide();</b></p><p><b> }</b></p><p> if (cmd.equals("導出")) {</p><p><b> }</b></p><p><b> }</b></p><p&
135、gt; public static void main(String[] arg) {</p><p> BrowerDeviceFrame a = new BrowerDeviceFrame();</p><p> a.showRecord();</p><p><b> }</b></p><p><b
136、> }</b></p><p> 4.3添加設備信息模塊</p><p> 用戶可以添加設備信息,實現(xiàn)設備資源的管理</p><p><b> 主要詳細代碼:</b></p><p> ?。?)IDeviceService接口</p><p> public inter
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 面向?qū)ο笳n程設計--職工信息管理系統(tǒng)
- 實驗室設備管理系統(tǒng)課程設計
- 實驗室設備管理系統(tǒng)課程設計
- 面向?qū)ο骳++課程設計--學生信息管理系統(tǒng)
- javaee課程設計--實驗室設備管理系統(tǒng)
- 實驗室設備管理系統(tǒng)(課程設計報告)
- 管理信息系統(tǒng)課程設計--實驗室設備管理信息系統(tǒng)
- 個人課程設計報告—實驗室設備管理系統(tǒng)
- c++課程設計---實驗室設備管理系統(tǒng)
- 面向?qū)ο笳n程設計---用java開發(fā)的學生信息管理系統(tǒng)
- 實驗室信息管理系統(tǒng)(lims)
- 《面向?qū)ο蟪绦蛟O計與java》課程設計--學生信息管理系統(tǒng)
- 《面向?qū)ο蟪绦蛟O計與java》課程設計 學生信息管理系統(tǒng)
- php課程設計——實驗室管理系統(tǒng)
- 醫(yī)學實驗室信息管理系統(tǒng)設計.pdf
- 軟件工程課程設計實驗室設備管理系統(tǒng)
- 實驗室設備管理系統(tǒng)數(shù)據(jù)庫課程設計
- 《c++面向?qū)ο蟪绦蛟O計》課程設計——職工信息管理系統(tǒng)
- 《面向?qū)ο蟪绦蛟O計》課程設計報告---圖書信息管理系統(tǒng)
- 《實驗室預約管理信息系統(tǒng)》課程設計報告
評論
0/150
提交評論