信息科技探索
作者简介:欧阳桂秀,副教授,武汉职业技术学院,研究方向为计算机软件。
JDBC技术在学生成绩管理系统中的应用
欧阳桂秀
摘 要 介绍了图形用户界面的Java 应用程序连接MySQL 数据库,对MySQL 数据库中的数据进行增加、修改、删除和查询等操作。关键词 Java ;MySQL ;JDBC ;增加;修改;删除;查询
中图分类号 TP3 文献标识码 A 文章编号 1674-6708(2020)271-0099-04
为了使Java 编写的程序不依赖于具体的数据库,Java 提供了专门用于操作数据库的JDBC(Java Data Base Connectivity),JDBC 提供了一些标准应用程序接口(API)。它有一组用Java 语言编写的类和接口组成。通过使用JDBC API,用户可以使用完全相同的Java 语法访问各种SQL 数据库。
本文重点介绍图形用户界面的Java 应用程序(学生成绩管理系统)连接MySQL 数据库,对MySQL 数据库中的数据实现增加、修改、删除和查询等 操作。
1 创建数据库和数据表
数据库名是test2,其中存放学生成绩的数据表是student,student 表的字段是number、name、Java、MySQL 和Android,如图1
所示。
图1 student表
2 使用JDBC 驱动程序连接MySQL 数据库
要通过JDBC 访问MySQL,需要下载JDBC 驱动程序。MySQL 驱动程序可以在MySQL 下载,下载地址为:sql/downloads/connector/j/,解压后得到 jar 库文件,然后在对应的项目中导入该库文件。本文使用的jar 库文件是mysql-connector-java-5.1.39-bin.jar
本文使用的Java IDE 是Eclipse,导入jar 包的步骤如下:
1)复制该jar 包到对应的项目下:在该项目上(例如,项目名为one)单击鼠标右键,New →Folder。在弹出窗口将Folder name 命名为lib_jar(可以是其它名),点击“finish”按钮,如图2
所示。
图2 新建一个Folder
2)然后,将MySQL 的jar 包复制到lib_jar 中。
位置如图3所示
:
图3 将jar包复制到lib_jar
3)选中需要添加到项目中的jar 包,单击鼠
标右键,Build Path →Add to Build Path。这样jar 包就成功导入到项目中了,如图4
所示。
图4 jar包导入到项目中
3 Java 连接和操作MySQL 数据库
3.1 Java 图形用户界面
学生成绩管理系统,图形用户界面的Java 应用程序对MySQL 数据库中的数据进行增删改查等操作,如图5
所示。图5 学生成绩管理系统
3.2 Java 连接MySQL 数据库
首先启动MySQL 数据库服务器。然后,运行Java 应用程序,单击图5的“浏览”按钮,出现图6所示新的窗口
:
图6 浏览学生成绩
图6与图1所示MySQL 数据库的student 表中记录一致,说明Java 连接MySQL 数据库成功。
主要代码如下:
Connection connection = null; Statement statement = null;
P r e p a r e d S t a t e m e n t p r e p a r e d _statement=null;
Class.forName("sql.jdbc.Driv- er");//加载JDBC-MySQL 数据库驱动
c o n n e c t i o n = D r i v e r M a n a g e r .getConnection("jdbc:mysql://localhost:3306/test2", "root","root");
//连接数据库。数据库名是test2。用户名是root,密码是root。
//注意:这里的数据库名、用户名、密码应和MySQL 数据库的设置一致。
android11系统更新包下载prepared_statement=connection.prepare S t a t e m e n t ("S E L E C T n u m b e r ,n a m e ,J a v a , MySQL,Android FROM student");
//表名是student,五个字段number,name, Java,MySQL,Android 应与MySQL 数据库的一致
res=uteQuery();//查询student 表
while (()) {
Vector row= new Vector();row.String(1));row.String(2));row.String(3));row.String(4));row.String(5));
rowData.add(row); //把查询的一条记录显
示在Java 界面上
}
3.3 Java 连接MySQL 数据库进行增删改查操作
3.3.1 增加数据
图7 添加学生成绩
图7的界面上,能输入具体学号、姓名等的五个文本框,对应代码如下:
J T e x t F i e l d j t n u m b e r = n e w JTextField("",20);
J T e x t F i e l d j t n a m e = n e w JTextField("",20);
J T e x t F i e l d j t J a v a = n e w JTextField("",20);
J T e x t F i e l d j t M y S Q L = n e w JTextField("",20);
J T e x t F i e l d j t A n d r o i d = n e w JTextField("",20);
与数据库连接,插入记录的关键代码如下:try{
String sql = "INSERT INTO student(number ,name,Java,MySQL,Android)" + "values(?,?,?,?,?)"; //准备向表student 插入一条记录。这五个?将在下面进行设置。
Connection Connection("jdbc:mysql://localhost:3306/test2","root","root");
P r e p a r e d S t a t e m e n t p r e p a r e d _statement=connection.prepareStatement(sql);
prepared_statement.setString(Text()); //设置第一个?代表的值。这个值,是从Java 图形用户界面的第一个文本框获得(具体的学号)。
prepared_statement.setString(Text());//设置第二个?代表的值。这个值,是从Java 图形用户界面的第二个文本框获得(具体的姓名)。
prepared_statement.setString(Text());//设置第三个?代表的值。这个值,是从Java 图形用户界面的第三个文本框获得(具体的Java 成绩)。
prepared_statement.setString(4,jtMySQL.
信息科技探索
getText());//设置第四个?代表的值。这个值,是从Java 图形用户界面的第四个文本框获得(具体的MySQL 成绩)。
p r e p a r e d _s t a t e m e n t .setString(Text());//设置第五个?代表的值。这个值,是从Java 图形用户界面的第五个文本框获得(具体的Android 成绩)。
uteUpdate(); //执行更新,把记录插入到MySQL 数据库的student 表中。
输入成绩后,单击图7的“添加”按钮,可以把新的记录添加到MySQL 数据库,如图8
所示。
图8 具体添加的学生成绩
然后,单击图5所示的“浏览”按钮,可以看到刚才的记录已经添加到数据库中。如图9
所示。
图9 浏览学生成绩
3.3.2 修改数据
界面类似增加数据,如图10
所示。
图10 修改学生成绩
与数据库连接,修改记录的关键代码如下:String number = Text(); //从文本框获得具体的学号
String name = Text(); //从文本框获得具体的姓名
String Java = Text(); //从文本框获得具体的Java 成绩
String MySQL = Text();//从文本框获得具体的MySQL 成绩
String Android = Text();//
从文本框获得具体的Android 成绩
//……省略JDBC 连接MySQL 数据库
S t r i n g s q l = "S E L E C T n u m b e r , name,Java,MySQL,Android FROM student;";
Statement statement = ateStatement();
R e s u l t S e t r e s = s t a t e m e n t .executeQuery(sql);
while (()) {
if (String(1).Text())) {
String sql2 = "UPDATE student SET name=’" + name + "' WHERE number=’" + Text()+ "’";
String sql3 = "UPDATE student SET Java=’" + Java + "’ WHERE number=’" + Text() + “’”;
String sql4 = "UPDATE student SET MySQL=’" + MySQL + "’ WHERE number=’" + Text() + "’";
String sql5 = "UPDATE student SET Android=’"+ Android + "’ WHERE number=’" + Text() + "’";
try {
c o n n e c t i o n = D r i v e r M a n a g e r .getConnection("jdbc:mysql://localhost:3306/test2", "root","root");
statement = ateStatement();uteUpdate(sql2);uteUpdate(sql3);uteUpdate(sql4);uteUpdate(sql5);}
3.3.3 查询数据(如图11
所示)
图11 查询学生成绩
与数据库连接,查询记录的关键代码如下:try{
Connection Connection(“jdbc:mysql://localhost:3306/test2”,”root”,”root”);
S t a t e m e n t s t a t e m e n t =c o n n e c t i o n.
createStatement();
String sql = “SELECT number,name, Java,MySQL,Android FROM student;”;
R e s u l t S e t r e s u l t =s t a t e m e n t .executeQuery(sql);
while (()) {
if (String(1).Text())) //查询。如果某条记录的学号和Java 图形用户界面的文本框中输入的学号相同,则把这条记录显示在界面上。
{jname.String(2));//显示学号
jJava.String(3)); //显示Java 成绩
jMySQL.String(4)); //显示MySQL 成绩
jAndroid.String(5)); //显示Android 成绩
break; } } }在图11,输入学号“2”,然后单击“查询”按钮,就可以看到查询结果,如图12
所示。
图12 查询到的学生成绩
3.3.4 删除数据(如图
13)
图13 删除学生成绩
与数据库连接,删除记录的关键代码如下: try {
Connection connection = DriverManager.
getConnection("jdbc:mysql://localhost:3306/
test2","root","root");
Statement statement = ateStatement();
String stu_number = Text(); //从Java 图形用户界面的第一个文本框获得具体的学号
S t r i n g s q l = "DELETE FROM student WHERE number=’"+ stu_number + "’";
s t a t e m e n t .executeUpdate(sql); //从MySQL 数据库的student 表删除该学号的记录
}在图13,输入具体的学号“4”,然后单击“删除”按钮,就可以删除该学生的成绩,如图14
所示。
图14 删除具体学生的成绩
然后,单击图5的“浏览”按钮,可以看到学号为4的学生记录确实被删除了,如图15
所示。
图15 删除一条记录后
4 结束语
JDBC 为Java 程序访问数据库提供了接口。通过介绍学生成绩管理系统,详细讲解了图形用户界面的Java 应用程序怎样连接MySQL 数据库,如何对MySQL 数据库中的数据进行增加、修改、删除和查询等操作。
参考文献
[1]耿祥义,张跃平.Java2实用教程[M].5版.北京:清华大学出
版社,2017.
[2]林元元.JDBC连接MySQL数据库的方法浅析[J].长沙通信职业
技术学院学报,2009(1):27-30.
[3]孙振亚.JSP与MYSQL的连接[J].数字技术与应用,2012
(11):173.
[4]王诚.研究JDBC连接MySQL数据库技术[J].网络安全与信息
化,2018(12).
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论