JDBC简单修改、查询

 一.添加、删除、修改

在MySQL数据库中创建如下的表:

create table student(
id char(36),
name varchar(12),
mobile char(11),
address varchar(150)
)

 

1.加载驱动程序类

在写代码之前先要在项目中导入MySQL的jar包,导入jar包的操作见博客: jar包的导入

在jar包中找到Driver类,并将其Qualified name拷贝过来,如第14行,对其进行Class.forname()操作,该类为驱动程序类。

2.建立连接

第15行,使用加载出来的驱动器,DriverManager对象调用getConnection方法连接数据库,第一个参数为目标数据库,第二个参数为名字,第三个参数为密码。

3.创建语句

第16行,使用连接数据库的变量connection调用createStatement方法创建一个Statement类对象,Statement类就是用来存储数据库操作语句的类

 4.执行语句

第17行,用statement变量调用executeUpdate方法来操作MySQL数据库,传入的String类参数就是对数据库的操作语句,返回的是被操作的数据的行数,定义一个int类型result来存储。

5.处理结果

第18行,result中存储的是被操作的数据的行数,所以如果该变量值为0则说明操作失败了,所以对结果进行如下处理。

6.释放内存

第25行,用finally语句释放内存,这里要注意,释放的顺序必须是定义的顺序的逆序。

package sql;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class Test {

	public static void main(String[] args) {
		Statement statement=null;
		Connection connection=null;
		try {
			Class.forName("com.mysql.jdbc.Driver");
			connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","root");
			statement = connection.createStatement();
			int result=statement.executeUpdate("insert into student(id,name,mobile,address) values ('f98ac9b6-6da7-47b4-ab65-9845d4da0114','Tom','12345678910','beijing')");
			if(result>0) {
				System.out.println("YES");
			}else {
				System.out.println("NO");
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			if (statement!=null) {
				try {
					statement.close();
				} catch (SQLException e) {
					e.printStackTrace();
				} 
			}
			
			if (connection!=null) {
				try {
					connection.close();
				} catch (SQLException e) {
					e.printStackTrace();
				} 
			}
		}
		
	}
}

二.查询

首先我们先在上面创建的表中存储一些简单的数据进去:

JDBC的查询操作使用的不是executeUpdate方法,是executeQuery方法,而且要在上面update操作的代码的基础上稍作修改。

以下是查看数据的操作:

前三个步骤都和修改操作一样,加载驱动类,建立连接,创建语句。

4.执行语句

第19行,Statement类用来存语句的变量statement调用的是executeQuery方法来执行查询操作的,而且还有一点不同的是,修改操作中在此处定义的是一个int类型变量用来存储返回的被操作的行数,而这里定义的是一个ResultSet类型变量rs,这个rs其实就是可以看成是存放从数据库中读出的数据的数组。

5.处理结果

接下来要从上一步中的rs“数组”中处理结果,将要查询的数据打印出来,所以对该数组进行遍历,并且调用该对象的getString方法,传入要读取的数据的字段,然后再将其打印。

6.释放内存

package sql;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Test2 {

	public static void main(String[] args) {
		Statement statement=null;
		Connection connection=null;
		ResultSet rs=null;
		try {
			Class.forName("com.mysql.jdbc.Driver");//1、加载驱动程序类
			connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","root");//2、建立连接
			statement = connection.createStatement();//3、创建语句
			rs=statement.executeQuery("select * from student")//4、执行语句
			while(rs.next()) {//5、处理数据
				String id=rs.getString("id");
				String address=rs.getString("address");
				System.out.println("id:"+id+",address:"+address);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {//6、释放资源
			if (rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					e.printStackTrace();
				} 
			}
			
			if (statement!=null) {
				try {
					statement.close();
				} catch (SQLException e) {
					e.printStackTrace();
				} 
			}
			
			if (connection!=null) {
				try {
					connection.close();
				} catch (SQLException e) {
					e.printStackTrace();
				} 
			}
		}
	}
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值