JAVA swing界面实现数据库增删改查.docx

上传人:b****1 文档编号:10252149 上传时间:2023-05-24 格式:DOCX 页数:16 大小:88.95KB
下载 相关 举报
JAVA swing界面实现数据库增删改查.docx_第1页
第1页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第2页
第2页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第3页
第3页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第4页
第4页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第5页
第5页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第6页
第6页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第7页
第7页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第8页
第8页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第9页
第9页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第10页
第10页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第11页
第11页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第12页
第12页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第13页
第13页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第14页
第14页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第15页
第15页 / 共16页
JAVA swing界面实现数据库增删改查.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

JAVA swing界面实现数据库增删改查.docx

《JAVA swing界面实现数据库增删改查.docx》由会员分享,可在线阅读,更多相关《JAVA swing界面实现数据库增删改查.docx(16页珍藏版)》请在冰点文库上搜索。

JAVA swing界面实现数据库增删改查.docx

JAVAswing界面实现数据库增删改查

 

数据库程序设计

大作业

 

班级:

2012级软件外包服务一班

学号:

************

姓名:

时间:

2013-6-19

 

1.功能描述

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.核心代码

2.1

 

1.数据库连接

packageorg.lxh.info.dbc;

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

publicclassDatabaseConnection{

publicstaticvoidmain(String[]args){

Connectionconn=null;

Statementstmt=null;

ResultSetrs=null;

try{

Class.forName("oracle.jdbc.driver.OracleDriver");

Stringurl="jdbc:

oracle:

thin:

@192.168.0.128:

1521/WFJ";

conn=DriverManager.getConnection(url,"hr","hr");

stmt=conn.createStatement();

Stringsql="select*fromdepartments";

rs=stmt.executeQuery(sql);

while(rs.next()){

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(ClassNotFoundExceptione){

e.printStackTrace();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

if(rs!

=null){

rs.close();

}

if(stmt!

=null){

stmt.close();

}

if(conn!

=null){

conn.close();

}

}catch(SQLExceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

}

}

}

 

2.生成getset方法

packageedu;

publicclassCountry{

privateStringdepartment_id;

privateStringdepartment_name;

privateStringarea;

privateStringpopulation;

publicStringgetdepartment_id(){

returndepartment_id;

}

publicvoidsetdepartment_id(Stringdepartment_name){

this.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实现方法

packagetuxinghua;

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;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JScrollPane;

importjavax.swing.JTable;

importjavax.swing.JTextField;

importjavax.swing.table.DefaultTableModel;

importjava.awt.event.MouseAdapter;

importjava.awt.event.MouseEvent;

publicclassAppStudentextendsJFrame{

privateJTextFielddepartment_idField;

privateJTextFielddepartment_nameField;

privateJTextFieldmanager_idField;

privateJTextFieldlocation_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=newJTextField();

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=newJTextField();

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=newJTextField();

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=newJTextField();

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.setText((String)table.getValueAt(row,0));

department_nameField.setText((String)table.getValueAt(row,2));

manager_idField.setText((String)table.getValueAt(row,3));

location_idField.setText((String)table.getValueAt(row,4));

tmp=getInput();

}

});

JScrollPanescrollPane=newJScrollPane(table);

scrollPane.setBounds(12,100,571,248);

getContentPane().add(scrollPane);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setLocation(350,200);

setSize(601,380);

setResizable(false);

setVisible(true);

}

privateStudentgetInput(){

Studentstu=newStudent();

stu.department_id=department_idField.getText();

stu.department_name=department_nameField.getText();

stu.manager_id=manager_idField.getText();

stu.location_id=location_idField.getText();

returnstu;

}

privatevoidadd(){

data.add(getInput());

showTable();

}

privatevoiddel(){

for(inti=0;i

{

if(tmp.equals(data.get(i)))

{

data.remove(i);break;

}

}

showTable();

}

privatevoidupdate(){

Studentstu=getInput();

for(inti=0;i

{

if(tmp.equals(data.get(i))){

data.remove(i);

data.add(i,stu);

break;

}

}

showTable();

}

privatevoidfind(){

removeRows();

Studentstu=getInput();

for(inti=0;i

Studenttmp=(Student)data.get(i);

if(tmp.equals(stu)){

model.addRow(tmp.toArray());

break;

}

}

}

privatevoidshowTable(){

removeRows();

for(inti=0;i

{

Studentstu=(Student)data.get(i);

model.addRow(stu.toArray());

}

}

privatevoidremoveRows(){

while(model.getRowCount()>0){

model.removeRow(0);

}

}

publicstaticvoidmain(String[]args){

newAppStudent();

}

}

classStudent

implementsSerializable{

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_name)){

isdepartment_name=department_name.equals(obj.department_name);

}

booleanismanager_id=true;

if(obj.manager_id!

=null&&!

"".equals(obj.manager_id)){

ismanager_id=manager_id.equals(obj.manager_id);

}

booleanislocation_id=true;

if(obj.location_id!

=null&&!

"".equals(obj.location_id)){

islocation_id=location_id.equals(obj.location_id);

}

returnisdepartment_id&&isdepartment_name&&ismanager_id&&islocation_id;

}

publicString[]toArray(){

returnnewString[]{department_id,department_name,manager_id,location_id

};

}

publicvoidsetVisible(booleanb){

//TODOAuto-generatedmethodstub

}

}

 

3.实训总结

 通过这次实训我发现了自己许多的缺点和不足,我一定会好好找出不足,尽最大可能去改正,不断进步发展。

对于本次实训,我表示很遗憾,未能达到预期的效果,归根到底还是关于java的知识没学好。

我认为基础知识是很重要的,图形化界面要在eclipse中实现必须要熟悉jframe的功能,只有熟知jframe的所有功能才能对图形化界面做出来,但是我对之一部分的了解是少之又少,不足以通过jframe来实现图形化界面,并且在里面连接数据库,实现oracle中hr用户中department和employees这两张表的增删改查。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2