没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
应用 Java Swing GUI 界面技术实现的 Java JDBC 数据库操作技术的应用
实例
1.1.1 问题
设 计 一 个 实 现 对 下 面 的 EBook 数 据 库 表 进 行 CRUD-----“ 增 ( CREATE ) 、 删
(DELETE)、改(UPDATE)、查(READER)”操作的 J2SE 程序。物理数据库系统不
限制,可以为 MS SQLServer、MYSQL 和 Oracle 等。
1.1.2 本示例的源程序代码
1、DesktopApplication 程序类的功能说明
实现对 EBook 数据库表进行 CRUD-----“ 增 ( CREATE ) 、 删( DELETE ) 、 改
(UPDATE)、查( READER)功能实现的基础上尝试了应用 Java Swing GUI 编程技术,
理解了事件的监听机制的原理、桌面程序的布局等知识。
2、编程工具为 NetBeans IDE
3、本示例的数据库为 MySql 数据库系统
4、本示例的源程序代码
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.sql.*;
class Table extends JFrame implements ActionListener{
/*-------------------------------菜单栏的各项元素定义-----------------------*/
杨教授大学堂,版权所有,盗版必究。 1/23页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
/*下拉菜单*/
private JMenuBar menubar;
private JMenu menu;
private JMenuItem iselect,iinsert,idel,iupdate;
/*插入时的输入框*/
private JTextField Tebook_id;
private JTextField Tebook_name;
private JTextField Tebook_kind;
private JTextField Tebook_price;
/*显示标签*/
private JLabel label_title;
private JLabel label_id;
private JLabel label_name;
private JLabel label_kind;
private JLabel label_price;
private JLabel label_updateid; //显示更新的记录集号的标签
// 出错后的提示标签
private JLabel exception_interger=new JLabel("请输入数字!"); //提示出错为没有输入
数字的标签
private JPanel panel; //面板
//private JTextArea textarea;//文本区域
private Container contrainer;//容器
private JButton insert_enter; // 插入确定按钮
private JButton del_enter; // 删除确定按钮
private JButton update_select_enter; // 更新选择按钮
private JButton update_detail_enter; // 更新确定按钮
//初始化表格
public Table(){
/*-------------------------------初始化界面----------------------*/
menubar = new JMenuBar();
menu = new JMenu("对数据表的处理");
杨教授大学堂,版权所有,盗版必究。 2/23页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
iselect = new JMenuItem("显示数据表");
iinsert = new JMenuItem("插入数据");
idel = new JMenuItem("删除数据");
iupdate = new JMenuItem("更新数据");
//添加监视器
iselect.addActionListener(this);
iinsert.addActionListener(this);
idel.addActionListener(this);
iupdate.addActionListener(this);
menu.add(iselect);
menu.add(iinsert);
menu.add(idel);
menu.add(iupdate);
menubar.add(menu);
setJMenuBar(menubar);
contrainer=this.getContentPane();
this.setTitle("对下面的 EBook 数据库表进行 CRUD-");
this.setSize(400,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
contrainer.validate();
}
/*显示表格的函数(JFrame)*/
public void Show_Table(Vector row, Vector tableHead) {
/*表格行向量*/ /*表格头名称*/
contrainer.removeAll();
/*-------------------------------初始化界面----------------------*/
menubar = new JMenuBar();
menu = new JMenu("对数据表的处理");
iselect = new JMenuItem("显示数据表");
iinsert = new JMenuItem("插入数据");
杨教授大学堂,版权所有,盗版必究。 3/23页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
idel = new JMenuItem("删除数据");
iupdate = new JMenuItem("更新数据");
//添加监视器
iselect.addActionListener(this);
iinsert.addActionListener(this);
idel.addActionListener(this);
iupdate.addActionListener(this);
menu.add(iselect);
menu.add(iinsert);
menu.add(idel);
menu.add(iupdate);
menubar.add(menu);
this.setJMenuBar(menubar);
/*------------------------------声明表格模型----------------------*/
DefaultTableModel tableModel = new DefaultTableModel();
tableModel.setDataVector(row, tableHead);
/*表格使用模型*/
JTable table = new JTable(tableModel);
table.setRowHeight(20);
JScrollPane scrollPane = new JScrollPane(table);
contrainer=this.getContentPane();
contrainer.add(scrollPane);
contrainer.add(table);
this.setTitle("对下面的 EBook 数据库表进行 CRUD-");
this.setSize(400,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
contrainer.validate();
}
/*插入新数据到表格的函数(JFrame)*/
public void Insert_Table(){
杨教授大学堂,版权所有,盗版必究。 4/23页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
contrainer.removeAll();
label_title = new JLabel("请输入书信息");
label_id= new JLabel("自动编号");
label_name= new JLabel("书名");
label_kind= new JLabel("类别");
label_price= new JLabel("价格");
Tebook_name=new JTextField();
Tebook_kind=new JTextField();
Tebook_price=new JTextField();
insert_enter=new JButton("提交");
panel=new JPanel();
panel.setLayout(null);
label_title.setBounds(0, 60, 90, 60);
label_id.setBounds(30, 100, 60, 25);
label_name.setBounds(95, 100, 60, 25);
label_kind.setBounds(160, 100, 60, 25);
label_price.setBounds(230, 100, 60, 25);
Tebook_name.setBounds(95, 120, 60, 25);
Tebook_kind.setBounds(160, 120, 60, 25);
Tebook_price.setBounds(230, 120, 60, 25);
insert_enter.setBounds(305, 120, 70, 25);
//对确定按钮添加侦听器 ActioListener
insert_enter.addActionListener(this);
//各个元素添加到面板上
panel.add(label_title);
panel.add(label_id);
panel.add(label_name);
panel.add(label_kind);
panel.add(label_price);
panel.add(Tebook_name);
panel.add(Tebook_kind);
杨教授大学堂,版权所有,盗版必究。 5/23页
剩余22页未读,继续阅读
资源评论
老帽爬新坡
- 粉丝: 79
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功