《JAVA-JDBC连接数据库(查询_添加_修改_删除)》由会员分享,可在线阅读,更多相关《JAVA-JDBC连接数据库(查询_添加_修改_删除)(30页珍藏版)》请在金锄头文库上搜索。
1、 .一 实验目的 (1)理解JDBC的工作原理,熟悉java.sql包中与数据库访问相关的类及其用法,如DriverManager、 Connection、Statement、ResultSet。(2)熟悉利用JDBC进行数据库访问的步骤: 加载JDBC驱动程序(Class.forName() 建立数据库连接(DriverManager.getConnection() 发布命令(stmt=Con.createStatement(),stmt.executeQuery() 取结果集并处理(ResultSet的next()方法和.get()方法)关闭连接,释放对象(close())(3)掌握建立O
2、DBC数据源的方法,会使用JDBC-ODBC Bridge进行数据库访问。二 实验内容编写图形界面程序,利用JDBC实现图书同学通讯录校园卡团员教师学生管理系统。(任选1题,也可自拟题目,但需指导教师同意!)三 实验要求(1) 进行规范的数据库设计,正确地定义关系数据表的结构及表间联系(包括:字段的数据类型、宽 度、精度、主键、外键、缺省值)。(2)要求界面布局紧凑、流畅、美观,实现的功能较为完善(3)本实验分两次完成,第一次可以先做一些准备测试,旨在熟悉编程接口中相关类的使用方法,测试中可以先基于字符界面实现功能,再逐步过渡到图形界面。四 实验步骤(1)在Access或SQL Server中
3、建立数据库及基础表。在控制面板中正确配置数据源,并测试成功。(2)编写图形界面的Application,利用JDBC-ODBC Bridge进行数据库访问,实现要求的功能。五 实验主要代码 六 运行界面主界面: 录入演示: 查询演示: 判断演示: 删除演示: 删除后再查询:学号:511020830|姓名:朱凯周|性别:男|班级:D软件101|籍贯:无锡|生日:1992-03-16| 已删除。 在学号文本框内输入学号,按下回车,其他信息自动显示。 把“D软件101”改成“D计算机101”import java.sql.*;import java.awt.*;import java.awt.eve
4、nt.*;import javax.swing.*;/加载包。public class jdbc_winXsy public static void main(String args) InfoWindow win=new InfoWindow(); /主控函数class InfoWindow extends Frame implements ActionListener Button 录入=new Button(录入);/新建按钮,录入。 Button 查询=new Button(查询);/新建按钮,查询。 Button 判断=new Button(判断);/新建按钮,判断。 Button
5、删除=new Button(删除);/新建按钮,删除。 Button 修改=new Button(修改);/新建按钮,修改。 Button 清空=new Button(清空);/新建按钮,清空。 TextArea 显示区=new TextArea(10,68);/新建文本区,这里是长为68个字符,高为10行。 InfoWindow()/与类同名的构造函数。 setLayout(new FlowLayout(); /*设置布局格式,这里是FlowLayout布局,具体就是组件会按照加入的先后顺序从左到右 排列,一行排满之后才会转到下一行。这里FlowLayout.LEFT指的是所有的组件左对齐。
6、 组件调用setSize()方法设置的大小无效。*/ setTitle(学生信息管理-Xsy);/设置窗口标题 显示区.append(nnn); 显示区.append( =n); 显示区.append( = =n); 显示区.append( = 欢迎使用学生信息管理系统 =n); 显示区.append( = =n); 显示区.append( = =n); 显示区.append( = designed by 薛思雨 =n); 显示区.append( =n); /欢迎界面 add(new Label(学生信息表);/添加标签:“学生信息表:”。 add(显示区); /添加文本区。 add(录入);
7、 /添加“录入”按钮。 录入.addActionListener(this);/给录入按钮注册ActionListener监听器。 add(查询); /添加“查询”按钮。 查询.addActionListener(this);/给查询按钮注册ActionListener监听器。 add(判断); /添加“判断”按钮。 判断.addActionListener(this);/给判断按钮注册ActionListener监听器。 add(删除); /添加“删除”按钮。 删除.addActionListener(this);/给删除按钮注册ActionListener监听器。 add(修改); /添加
8、“修改”按钮。 修改.addActionListener(this);/给修改按钮注册ActionListener监听器。 add(清空); /添加“修改”按钮。 清空.addActionListener(this);/给清空按钮注册ActionListener监听器。 addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); );/添加窗口监听器,在实现“关闭窗口”这个事件时,程序退出。 setVisible(true);/设置可见。 setBounds(100
9、,100,520,300);/设置弹出窗口的坐标位置和大小。前两个数/是以屏幕 /左上角为原点的坐标,后两个数字,是窗口的宽与高。 validate(); public void actionPerformed(ActionEvent e) Connection con; Statement stmt; ResultSet rs; PreparedStatement prestmt; try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/加载驱动程序。 catch(ClassNotFoundException ex) if(e.getSource()
10、=查询)/点击查询按钮执行的操作。 try con=DriverManager.getConnection(jdbc:odbc:sun,);/连接数据源。 stmt=con.createStatement();/发送 SQL 语句并处理结果 rs=stmt.executeQuery(select * from information order by number);/返回结果集。 while(rs.next()/列出表中的所有信息。 String number=rs.getString(1); String name=rs.getString(2); String sex=rs.getString(3); String sclass=rs.getString(4); String nativeplace=rs.getString(5); String birthday=rs.getString(6); 显示区.append(学号:+number+|); 显示区.append(姓名:+name+|); 显示区.append(性别:+sex+|); 显示区.append(班级:+sclass+|); 显示区.append(籍贯:+nativeplace+|); 显示区.append(生日:+birthday+|+n); 显示区.append(=