2022年Java数据库程序设计实验 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年Java数据库程序设计实验 .pdf》由会员分享,可在线阅读,更多相关《2022年Java数据库程序设计实验 .pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验 8 Java数据库程序设计一、实验名称和性质所属课程Java语言程序设计实验名称Java数据库程序设计实验学时2 实验性质? 验证综合 ? 设计必做 /选做? 必做选做二、实验目的1. 掌握创建数据库应用程序的各个重要环节; 2. 掌握使用JDBC API提供的接口和类进行连接SQL Server 数据库,执行SQL语句,处理结果集等操作方法。三、实验内容现有一个学生数据表student ,包含四个字段:no(学号 ),姓名 (name),性别 (gendar),联系电话 (tel)。请调试程序StudentManager.java, 实现对 SQL Server中数据表 student
2、 的插入和浏览操作。四、实验的软硬件环境要求硬件环境要求:PC计算机;内存512MB 以上使用的软件名称、版本号以及模块:操作系统: Win 7 或 Windows XP 软件: JDK 7.0 ;Eclipse;数据库系统: SQL Server 2008 五、知识准备前期要求掌握的知识:了解结构化查询语言SQL的相关内容。实验相关理论或原理:Java语言提供了对数据库的强大支持,Java语言提供JDBC来实现对数据库访问和数据处理的支持。利用JDBC来访问特定的数据库,实现对数据库的各种操作。具体有7 步:(1)导入 JDBC类;(2)装载 /注册驱动程序;(3)连接数据库;(4)创建语句
3、对象;(5)执行 SQL语句;(6)处理结果;(7)关闭连接。六、实验验证性实验1 首先启动SQL Server 2008,连接成功后, “ 右键 -新建数据库 ” 新建一个名为“mytest ”的数据库,在该数据库中创建一张名为“student ”的数据表 (选择菜单 “ 表-新建表 ”)。表结构如表名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 16 页 - - - - - - - - - 14.1 所示。查询student 表中所有的数据,并在控制台显示,如图14.
4、1 所示。表 14.1 student 表的结构字段名类型宽度备注no varchar 10 学号name varchar 10 姓名score decimal 2 成绩图 14.1import java.sql.*; public class SimpleDBDemo static String strDriver =代码 1; static String strURL = 代码 2; public static void main(String args) try Class.forName(strDriver ); System.out.println(SQLServerDriver s
5、uccess); Connection con = DriverManager. getConnection(strURL , sa, sa); System.out.println(Connection success); Statement stm = 代码 3; String strSql = select * from student; ResultSet rs = stm.executeQuery(strSql); while(代码 4) String s1 = rs.getString(1); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
6、 - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 16 页 - - - - - - - - - String s2 = rs.getString(2); Double d3 = rs.getDouble(3); System.out.println(s1+t+s2+tt+d3); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); 验证性实验1 建立数
7、据库mytest 和数据表student ,利用JTabbedPane 新建选项卡一个名为“ inputPanel ”(录入记录) 。另一个名为“ viewPanel”(浏览记录) 。1)建立数据库mytest 和表 student 首先启动SQL Server 2008,连接成功后, “ 右键 -新建数据库 ” 新建一个名为“mytest ”的数据库,在该数据库中创建一张名为“student ”的数据表 (选择菜单 “ 表-新建表 ”)。表结构如表14.2 所示:表 14.2 student 表的结构字段名类型宽度备注no varchar 10 学号name varchar 10 姓名gen
8、dar varchar 2 性别tel varchar 11 联系电话2) 建立程序界面启动 Eclipse,新建一个Java应用程序项目,名称为“StudentManager”。利 用 JTabbedPane 新建选项卡一个名为“inputPanel ”(录入记录) 。另一个名为“ viewPanel”(浏览记录)。在“ 录入记录 ” 面板上添加一个面板“inputInnerPanel”和一个按钮“inputBtn ”,按钮标题为“ 录入 ” 。在面板 “inputInnerPanel”上添加 4 个标签和4 个文本字段,具体内容如表14.3 所示。表 14.3 四个标签和文本字段标签名称标
9、签文本文本字段名称文本字段宽度名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 16 页 - - - - - - - - - noLabel 学号noField 10 nameLabel 姓名nameField 10 gendarLabel 性别gendarField 2 telLabel 联系电话telField 11 添加完成后,录入界面如图14.2 所示。图 14.2 录入记录界面然后,在 “ 浏览记录 ” 面板中添加一个文本区字段“viewArea”和一个按钮 “v
10、iewBtn ”,标题为“ 浏览 ” 。界面如图14.3 所示。图 14.3 浏览记录界面3)编写数据库连接和关闭的方法(1) 定义连接数据库的方法:connection() 在“ 源代码 ” 视图下,先导入“java.sql.*”包,然后输入以下代码,public void connection() / 连接数据库 ; try Class.forName (代码 1) ; / 装载 SQL Server 2008驱动程序;conn = DriverManager.getConnection (代码 2) ; / 连接 SQL Server 2008数据库 mytest stmt = conn
11、.createStatement(); / 获得执行语句对象stmt; catch (ClassNotFoundException e1) System.err.println( 驱动程序装载失败!); catch (SQLException e2) e2.getSQLState(); e2.getMessage(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 16 页 - - - - - - - - - (2) 定义关闭数据库连接的方法:close() 在“ 源代
12、码 ” 视图下,输入以下代码:public void close() / 关闭数据连接try if (stmt != null) stmt.close(); if (conn != null) conn.close(); catch (SQLException e2) System.err.println( 不能正常关闭 ); 4)编写按钮单击事件响应代码(1) 转到 “ 设计 ” 视图,双击 “ 录入 ” 按钮,输入以下代码:String sno = noField.getText(); / 获得学号String sname = nameField.getText(); / 获得姓名Stri
13、ng sgendar = gendarField.getText(); / 获得性别String stel = telField.getText(); / 获得联系电话;try connection(); String InsSQL; InsSQL = INSERT INTO student (no,name,gendar,tel) + VALUES( + + sno + , + + sname + , + + sgendar + , + + stel +); / 定制插入SQL语句字符串int rs = stmt.executeUpdate(InsSQL); / 执行将新记录插入到数据表st
14、udent 中JOptionPane.showMessageDialog(null, 记录已添加! ); catch (SQLException e1) System.err.println(e1.getSQLState(); finally close(); / 关闭数据库 (2) 转到 “ 设计 ” 视图,双击 “ 浏览 ” 按钮,输入以下代码:try 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 16 页 - - - - - - - - - String view
15、String = ; connection(); ResultSet rs = stmt.executeQuery(SELECT * From student); ResultSetMetaData rsMeta = rs.getMetaData(); int nums = rsMeta.getColumnCount(); / 获得字段名称;for (int i = 1; i = nums; i+) viewString += rsMeta.getColumnName(i) + t; viewString += n; / 获得数据表student 的记录;while (rs.next() fo
16、r (int i = 1; i = nums; i+) viewString += rs.getString(i) + t; viewString += n; viewArea.setText(viewString); catch (SQLException e1) System.err.println( 浏览学生记录失败); System.err.println(e1.getSQLState() + e1.getMessage(); finally close(); 5)运行程序,进行测试。在“ 录入记录 ” 界面中,输入学号、姓名、性别和联系电话后,单击“ 录入” 按钮,可以把输入的内容存
17、入数据库表中。在“ 浏览记录 ” 界面中,单击 “ 浏览 ” 按钮,可以查看数据库表中的内容。如图14.4 所示。图 14.4 浏览记录结果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 16 页 - - - - - - - - - 验证性实验2 1实验要求设计一个学籍管理系统,实现如下系统功能:1)实现录入学生基本信息的功能;2)实现浏览学生基本信息的功能;3)实现查询学生基本信息的功能;4)实现删除学生基本信息的功能;运行结果如图14.5 所示:图 14.5 学籍管理
18、系统2. 程序参考代码import javax.swing.*; import java.awt.*; public class StudentPanel extends JPanel JLabel snoLabel;/学生学号标签JLabel snameLabel;/学生姓名标签JLabel cnoLabel;/课程号标签JLabel cnameLabel;/课程名标签JLabel addressLabel;/上课地点标签JLabel timeLabel;/ 上课时间标签JTextField snoField;/学生学号输入框JTextField snameField;/ 学生姓名输入框JT
19、extField cnoField;/ 课程号输入框JTextField cnameField;/ 课程名输入框JTextField addressField;/上课地点输入框JTextField timeField;/ 上课时间输入框public StudentPanel() setGUIComponent(); public void setGUIComponent() / 初始化组件名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 16 页 - - - - - - -
20、 - - snoLabel = new JLabel(学号 ); snoField = new JTextField(10); snameLabel = new JLabel(姓名 ); snameField = new JTextField(10); cnoLabel = new JLabel(课程号 ); cnoField = new JTextField(10); cnameLabel = new JLabel(课程名 ); cnameField = new JTextField(10); addressLabel = new JLabel(上课地点 ); addressField =
21、new JTextField(10); timeLabel = new JLabel(上课时间 ); timeField = new JTextField(10); / 设置组件setLayout(new GridLayout(3,4);/ 设置排列方式add(snoLabel);add(snoField); add(snameLabel);add(snameField); add(cnoLabel);add(cnoField); add(cnameLabel);add(cnameField); add(addressLabel);add(addressField); add(timeLabe
22、l);add(timeField); / 清楚文本框的内容public void cleanContent() snoField.setText(); snameField.setText(); cnoField.setText(); cnameField.setText(); addressField.setText(); timeField.setText(); /set() methods public void setsno(String n)/ 设置学号文本框内容为n snoField.setText(n); public void setsname(String name)/ 设置
23、学生姓名文本框为name 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 16 页 - - - - - - - - - snameField.setText(name); public void setcno(String m)/ 设置课程号文本框为m cnoField.setText(m); public void setcname(String cname)/ 设置课程名文本框为cname cnameField.setText(cname); public void
24、setaddress(String address)/ 设置上课地址为address addressField.setText(address); public void settime(String time)/设置上课时间为time timeField.setText(time); /get() methods public String getsno()/ 得到学生学号return snoField.getText(); public String getsname()/ 得到学生姓名return snameField.getText(); public String getcno()/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Java数据库程序设计实验 2022 Java 数据库 程序设计 实验
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内