




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫程序設(shè)計(jì)大作業(yè)班級:2012級軟件外包服務(wù)一班學(xué)號:201215140117姓名: 。時間:2013-6-19 1功能描述1.1 功能簡介用swing做出圖形化界面形式,實(shí)現(xiàn)數(shù)據(jù)庫的增刪改查把員工表跟部門表連接起來,實(shí)現(xiàn)數(shù)據(jù)的增加,刪除,修改,查找。1.2 實(shí)現(xiàn)步驟(1)安裝好虛擬機(jī),并在其下確認(rèn)oracle已安裝成功(可以在dos下輸入相關(guān)命令來檢查是否安裝成功)。(2)在網(wǎng)絡(luò)中心修改pc機(jī)上的VMware Network Adapter的IP、子網(wǎng)頁碼(默認(rèn))、網(wǎng)關(guān)。(3)修改虛擬機(jī)的IP、網(wǎng)掩碼(默認(rèn))、網(wǎng)關(guān),確保PC機(jī)上的網(wǎng)關(guān)和虛擬機(jī)的IP一致。(在控制面板>網(wǎng)絡(luò)和共享中心
2、>本地連接3>屬性中,修改IP、網(wǎng)掩碼)(4)在PC機(jī)的dos命令控制臺ping虛擬機(jī)的IP,確保正常,能ping通(即將虛擬機(jī)內(nèi)外ping通)。(5)配置好虛擬機(jī)下的oracle的數(shù)據(jù)庫和監(jiān)聽。(6)在eclipse中編寫相關(guān)代碼,并用jtable實(shí)現(xiàn)圖形化界面,用以實(shí)現(xiàn)與數(shù)據(jù)庫的連接和操作數(shù)據(jù)庫等功能。(7)在eclipse中導(dǎo)入數(shù)據(jù)庫的驅(qū)動。(8)運(yùn)行eclipse,查看運(yùn)行結(jié)果。2. 核心代碼2.11. 數(shù)據(jù)庫連接package .dbc;import java.sql.Connection;import java.sql.DriverManager
3、;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DatabaseConnection public static void main(String args) Connection conn = null;Statement stmt = null;ResultSet rs = null;try Class.forName("oracle.jdbc.driver.OracleDriver");String url = "jd
4、bc:oracle:thin:28:1521/WFJ"conn = DriverManager.getConnection(url, "hr", "hr");stmt = conn.createStatement();String sql = "select * from departments"rs = stmt.executeQuery(sql);while (rs.next() System.out.print(rs.getInt("department_id");System
5、.out.print("t");System.out.print(rs.getString("department_name");System.out.print("t");System.out.print(rs.getInt("manager_id");System.out.print("t");System.out.print(rs.getInt("location_id");System.out.println(); catch (ClassNotFoundExcept
6、ion e) e.printStackTrace(); catch (SQLException e) e.printStackTrace(); finally try if (rs != null) rs.close();if (stmt != null) stmt.close();if (conn != null) conn.close(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();2. 生成get set方法package edu;public class Country pri
7、vate String department_id; private String department_name; private String area; private String population; public String getdepartment_id() return department_id; public void setdepartment_id(String department_name) = department_id; public String getdepartment_name() return department_name;
8、 public void setdepartment_name(String department_name) this.department_name = department_name; public String getmanager_id() return manager_id; public void setmanager_id(String manager_id) this.manager_id= manager_id; public String getlocation_id() return location_id; public void setlocation_id(Str
9、ing location_idn) this.location_id = location_id; 3實(shí)現(xiàn)方法package tuxinghua;import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.Serializable;import java.sql.DriverManager;import java.sql.ResultSet;import java.util.ArrayList;import java.util.List;i
10、mport javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.JTextField;import javax.swing.table.DefaultTableModel;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;public class AppStudent
11、extends JFrameprivate JTextField department_idField;private JTextField department_nameField;private JTextField manager_idField;private JTextField location_idField;private JTable table;private DefaultTableModel model;private String columns = "department_id", "department_name", &qu
12、ot;manager_id", "location_id"private List data;private Student tmp; public AppStudent() data = new ArrayList();getContentPane().setLayout(null);JLabel lblemployee = new JLabel("department_id");lblemployee.setBounds(12, 10, 220, 13);getContentPane().add(lblemployee);departmen
13、t_idField = new JTextField();department_idField.setBounds(100, 7, 96, 19); getContentPane().add(department_idField);department_idField.setColumns(10);JLabel lblAge = new JLabel("department_name");lblAge.setBounds(252, 10, 220, 13);getContentPane().add(lblAge);department_nameField = new JTe
14、xtField();department_nameField.setBounds(365, 7, 96, 19);getContentPane().add(department_nameField);department_nameField.setColumns(10);JLabel lblStuno = new JLabel("manager_id");lblStuno.setBounds(12, 36, 220, 13);getContentPane().add(lblStuno);manager_idField = new JTextField();manager_i
15、dField.setColumns(10);manager_idField.setBounds(100, 33, 96, 19);getContentPane().add(manager_idField);JLabel lblClass = new JLabel("location_id");lblClass.setBounds(252, 36, 220, 13);getContentPane().add(lblClass);location_idField = new JTextField();location_idField.setColumns(10);locatio
16、n_idField.setBounds(365, 33, 96, 19);getContentPane().add(location_idField);JButton btnAdd = new JButton("增加");btnAdd.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) add(););btnAdd.setBounds(75, 59, 77, 21);getContentPane().add(btnAdd);JButton btnDel = new
17、 JButton("刪除");btnDel.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) del(););btnDel.setBounds(180, 59, 77, 21);getContentPane().add(btnDel);JButton btnUpdate = new JButton("更新");btnUpdate.addActionListener(new ActionListener() public void action
18、Performed(ActionEvent e) update(););btnUpdate.setBounds(280, 59, 77, 21);getContentPane().add(btnUpdate);JButton btnFind = new JButton("查找");btnFind.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) find(););btnFind.setBounds(380, 59, 77, 21);getContentPane(
19、).add(btnFind);model = new DefaultTableModel(columns, 0);table = new JTable(model);table.addMouseListener(new MouseAdapter()public void mouseClicked(MouseEvent e)int row = table.getSelectedRow();department_idField.setText(String) table.getValueAt(row, 0);department_nameField.setText(String) table.ge
20、tValueAt(row, 2);manager_idField.setText(String) table.getValueAt(row, 3);location_idField.setText(String) table.getValueAt(row, 4);tmp = getInput(););JScrollPane scrollPane = new JScrollPane(table);scrollPane.setBounds(12, 100, 571, 248);getContentPane().add(scrollPane);setDefaultCloseOperation(EXI
21、T_ON_CLOSE);setLocationRelativeTo(null);setLocation(350,200);setSize(601, 380);setResizable(false);setVisible(true);private Student getInput() Student stu = new Student();stu.department_id= department_idField.getText();stu.department_name = department_nameField.getText();stu.manager_id = manager_idF
22、ield.getText();stu.location_id = location_idField.getText();return stu;private void add() data.add(getInput();showTable();private void del() for (int i = 0; i < data.size(); i+)if (tmp.equals(data.get(i) data.remove(i);break;showTable();private void update() Student stu = getInput();for (int i =
23、0; i < data.size(); i+)if (tmp.equals(data.get(i) data.remove(i);data.add(i, stu);break;showTable();private void find() removeRows();Student stu = getInput();for (int i = 0; i < data.size(); i+) Student tmp = (Student) data.get(i);if (tmp.equals(stu) model.addRow(tmp.toArray();break;private vo
24、id showTable() removeRows();for (int i = 0; i < data.size(); i+)Student stu = (Student) data.get(i);model.addRow(stu.toArray();private void removeRows() while (model.getRowCount() > 0) model.removeRow(0);public static void main(String args) new AppStudent();class Studentimplements Serializable
25、 public String department_id;public String department_name;public String manager_id;public String location_id;public boolean equals(Object obj) return equals(Student) obj);public boolean equals(Student obj) boolean isdepartment_id = true;if (obj.department_id != null && !"".equals(obj.department_id) isdepartment_id = department_id.equals(obj.department_id);boolean isdepartment_name = true;if (obj.department_name != null && !"".equals(obj.department_name) isdepartment_name = department_name.equals(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年花藝師職業(yè)資格考試真題:花藝作品制作與裝飾技巧
- 2025年資產(chǎn)評估師無形資產(chǎn)評估與企業(yè)價值評估模擬試題:實(shí)戰(zhàn)案例解析與解題策略
- 2025年注冊會計(jì)師考試《會計(jì)》所得稅會計(jì)模擬試題全攻略
- 2025年意大利語CELIA2考試模擬試卷:基礎(chǔ)寫作與日常交流能力實(shí)戰(zhàn)
- 阜陽市潁州區(qū)2024-2025學(xué)年高三英語下學(xué)期模擬試題(新高考題型實(shí)戰(zhàn)演練)
- 2025年高考數(shù)學(xué)概率統(tǒng)計(jì)與幾何證明專項(xiàng)訓(xùn)練(含2025年高頻題型)
- 高考化學(xué)一輪復(fù)習(xí)課時作業(yè)第4章第7講 常見元素及其化合物的性質(zhì)及轉(zhuǎn)化(含解析)
- 2025年室內(nèi)設(shè)計(jì)師職業(yè)資格考試真題卷-室內(nèi)設(shè)計(jì)風(fēng)格與流派解析
- 2025年高考數(shù)學(xué)模擬檢測卷(文科專用)-高考數(shù)學(xué)壓軸題訓(xùn)練試題
- 2025年醫(yī)保知識考試題庫:信息化建設(shè)應(yīng)用案例分析及創(chuàng)新應(yīng)用試卷
- 四年級語文下冊第六單元【集體備課】(教材解讀+教學(xué)設(shè)計(jì))
- 醫(yī)院醫(yī)療質(zhì)量管理考評制度和管理制度
- 裝修施工項(xiàng)目投標(biāo)書模板
- 抗凝劑皮下注射護(hù)理共識
- 世界歷史第二冊全部教案
- 法務(wù)停息掛賬協(xié)議書模板
- 2022年四川省南充市中考數(shù)學(xué)真題(解析版)
- 百融云創(chuàng)風(fēng)險決策引擎V5產(chǎn)品操作手冊
- 【企業(yè)員工流失問題研究的文獻(xiàn)綜述4800字】
- 市政道路及設(shè)施零星養(yǎng)護(hù)服務(wù)技術(shù)方案(技術(shù)標(biāo))
- 復(fù)旦大學(xué)《信號與系統(tǒng)A》2023-2024學(xué)年第一學(xué)期期末試卷
評論
0/150
提交評論