javaswing界面实现数据库增删改查_第1页
javaswing界面实现数据库增删改查_第2页
javaswing界面实现数据库增删改查_第3页
javaswing界面实现数据库增删改查_第4页
javaswing界面实现数据库增删改查_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-.z.数据库程序设计大作业班级:2012级软件外包效劳一班**:7:。。。 时间:2013-6-191.功能描述 1.1功能简介用swing做出图形化界面形式,实现数据库的增删改查把员工表跟部门表连接起来,实现数据的增加,删除,修改,查找。1.2实现步骤〔1〕安装好虚拟机,并在其下确认oracle已安装成功〔可以在dos下输入相关命令来检查是否安装成功〕。〔2〕在网络中心修改pc机上的VMwareNetworkAdapter的IP、子网页码〔默认〕、网关。〔3〕修改虚拟机的IP、网掩码〔默认〕、网关,确保PC机上的网关和虚拟机的IP一致。〔在控制面板——>网络和共享中心——>本地连接3——>属性中,修改IP、网掩码〕〔4〕在PC机的dos命令控制台ping虚拟机的IP,确保正常,能ping通〔即将虚拟机内外ping通〕。〔5〕配置好虚拟机下的oracle的数据库和监听。〔6〕在eclipse中编写相关代码,并用jtable实现图形化界面,用以实现与数据库的连接和操作数据库等功能。〔7〕在eclipse中导入数据库的驱动。〔8〕运行eclipse,查看运行结果。2.核心代码数据库连接packageorg.l*.dbc;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLE*ception;importjava.sql.Statement;publicclassDatabaseConnection{ publicstaticvoidmain(String[]args){ Connectionconn=null; Statementstmt=null; ResultSetrs=null; try{ Class.forName("oracle.jdbc.driver.OracleDriver"); Stringurl="jdbc:oracle:thin:28:1521/WFJ"; conn=DriverManager.getConnection(url,"hr","hr"); stmt=conn.createStatement(); Stringsql="select*fromdepartments"; rs=stmt.e*ecuteQuery(sql); while(rs.ne*t()){ System.out.print(rs.getInt("department_id")); System.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(ClassNotFoundE*ceptione){ e.printStackTrace(); }catch(SQLE*ceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); } if(stmt!=null){ stmt.close(); } if(conn!=null){ conn.close(); } }catch(SQLE*ceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } }}生成getset方法packageedu;publicclassCountry{privateStringdepartment_id;privateStringdepartment_name;privateStringarea;privateStringpopulation;publicStringgetdepartment_id(){returndepartment_id; }publicvoidsetdepartment_id(Stringdepartment_name){=department_id; }publicStringgetdepartment_name(){returndepartment_name; }publicvoidsetdepartment_name(Stringdepartment_name){this.department_name=department_name; }publicStringgetmanager_id(){returnmanager_id; }publicvoidsetmanager_id(Stringmanager_id){this.manager_id=manager_id;}publicStringgetlocation_id(){returnlocation_id; }publicvoidsetlocation_id(Stringlocation_idn){this.location_id=location_id; } } }3实现方法packagetu*inghua;importjava.awt.Color;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.io.Serializable;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.util.ArrayList;importjava.util.List;importjava*.swing.JButton;importjava*.swing.JFrame;importjava*.swing.JLabel;importjava*.swing.JScrollPane;importjava*.swing.JTable;importjava*.swing.JTe*tField;importjava*.swing.table.DefaultTableModel;importjava.awt.event.MouseAdapter;importjava.awt.event.MouseEvent;publicclassAppStudente*tendsJFrame{ privateJTe*tFielddepartment_idField; privateJTe*tFielddepartment_nameField; privateJTe*tFieldmanager_idField; privateJTe*tFieldlocation_idField; privateJTabletable; privateDefaultTableModelmodel; privateString[]columns={"department_id","department_name","manager_id","location_id"}; privateListdata; privateStudenttmp; publicAppStudent(){ data=newArrayList(); getContentPane().setLayout(null); JLabellblemployee=newJLabel("department_id"); lblemployee.setBounds(12,10,220,13); getContentPane().add(lblemployee); department_idField=newJTe*tField(); department_idField.setBounds(100,7,96,19); getContentPane().add(department_idField); department_idField.setColumns(10); JLabellblAge=newJLabel("department_name"); lblAge.setBounds(252,10,220,13); getContentPane().add(lblAge); department_nameField=newJTe*tField(); department_nameField.setBounds(365,7,96,19); getContentPane().add(department_nameField); department_nameField.setColumns(10); JLabellblStuno=newJLabel("manager_id"); lblStuno.setBounds(12,36,220,13); getContentPane().add(lblStuno); manager_idField=newJTe*tField(); manager_idField.setColumns(10); manager_idField.setBounds(100,33,96,19); getContentPane().add(manager_idField); JLabellblClass=newJLabel("location_id"); lblClass.setBounds(252,36,220,13); getContentPane().add(lblClass); location_idField=newJTe*tField(); location_idField.setColumns(10); location_idField.setBounds(365,33,96,19); getContentPane().add(location_idField); JButtonbtnAdd=newJButton("增加"); btnAdd.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ add(); } } ); btnAdd.setBounds(75,59,77,21); getContentPane().add(btnAdd); JButtonbtnDel=newJButton("删除"); btnDel.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ del(); }} ); btnDel.setBounds(180,59,77,21); getContentPane().add(btnDel); JButtonbtnUpdate=newJButton("更新"); btnUpdate.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ update(); } } ); btnUpdate.setBounds(280,59,77,21); getContentPane().add(btnUpdate); JButtonbtnFind=newJButton("查找"); btnFind.addActionListener(newActionListener(){ publicvoidactionPerformed(ActionEvente){ find(); } } ); btnFind.setBounds(380,59,77,21); getContentPane().add(btnFind); model=newDefaultTableModel(columns,0); table=newJTable(model); table.addMouseListener(newMouseAdapter() { publicvoidmouseClicked(MouseEvente) { introw=table.getSelectedRow(); department_idField.setTe*t((String)table.getValueAt(row,0)); department_nameField.setTe*t((String)table.getValueAt(row,2)); manager_idField.setTe*t((String)table.getValueAt(row,3)); location_idField.setTe*t((String)table.getValueAt(row,4)); tmp=getInput(); } }); JScrollPanescrollPane=newJScrollPane(table); scrollPane.setBounds(12,100,571,248); getContentPane().add(scrollPane); setDefaultCloseOperation(E*IT_ON_CLOSE); setLocationRelativeTo(null); setLocation(350,200); setSize(601,380); setResizable(false); setVisible(true); } privateStudentgetInput(){ Studentstu=newStudent(); stu.department_id=department_idField.getTe*t(); stu.department_name=department_nameField.getTe*t(); stu.manager_id=manager_idField.getTe*t(); stu.location_id=location_idField.getTe*t(); returnstu; } privatevoidadd(){ data.add(getInput()); showTable(); } privatevoiddel(){ for(inti=0;i<data.size();i++) { if(tmp.equals(data.get(i))) { data.remove(i);break; } } showTable(); } privatevoidupdate(){ Studentstu=getInput(); for(inti=0;i<data.size();i++) { if(tmp.equals(data.get(i))){ data.remove(i); data.add(i,stu); break; } } showTable(); } privatevoidfind(){ removeRows(); Studentstu=getInput(); for(inti=0;i<data.size();i++){ Studenttmp=(Student)data.get(i); if(tmp.equals(stu)){ model.addRow(tmp.toArray()); break; } } } privatevoidshowTable(){ removeRows(); for(inti=0;i<data.size();i++) { Studentstu=(Student)data.get(i); model.addRow(stu.toArray()); } } privatevoidremoveRows(){ while(model.getRowCount()>0){ model.removeRow(0); } } publicstaticvoidmain(String[]args){ newAppStudent(); }}classStudentimplementsSerializable{ publicStringdepartment_id; publicStringdepartment_name; publicStringmanager_id; publicStringlocation_id; publicbooleanequals(Objectobj){ returnequals((Student)obj); } publicbooleanequals(Studentobj){ booleanisdepartment_id=true; if(obj.department_id!=null&&!"".equals(obj.department_id)){ isdepartment_id=department_id.equals(obj.department_id); } booleanisdepartment_name=true; if(obj.department_name!=null&&!"".equals(obj.department_n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论