JDBC update功能(增删改)的简单封装

一、通过之前两篇博客(博客链接如下)的学习,我们可以使用JDBC连接MySQL数据库实现简单的增删查改操作。

JDBC实现增删改查(一)——MySQL基础知识和JDBC基本操作    JDBC实现增删改查(二)——JDBC实现查询功能  

二、通过上述博客的学习,我们可以发现,JDBC连接数据库大致分为6个步骤:

1、加载驱动。

2、创建数据库连接对象。

3、创建SQL语句对象。

4、执行SQL语句。

5、处理执行结果。

6、释放资源。

三、在上述博客中,我们对数据库进行不同操作时,往往要编写不同的代码去执行它,这种做法在实际应用过程中效率很低。那我们能不能对之前的代码进行优化,提高代码的复用性呢?我们这篇博客主要讨论update语句的简单封装。

public class Demo1 {
	//将加载驱动、创建连接对象、释放资源等操作过程封装到update方法中,当我们对数据库进行不同的操作时,只用修改main方法中的sql语句即可。
	public static boolean update(String sql) {
		Statement statement =null; // try语句和finally语句属于不同的代码块,需提高声明权限。
		Connection connection=null;// try语句和finally语句属于不同的代码块,需提高声明权限。
		try {
			Class.forName("com.mysql.jdbc.Driver"); //加载驱动。
			connection=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test", "root", "root"); //创建连接对象。
			statement =connection.createStatement();//创建SQL语句对象。		
			return statement.executeUpdate(sql)>0; //执行SQL语句,同时处理执行结果。若受影响行数大于0,方法返回true,否则返回false。
			
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			//释放资源,注意释放顺序。
			try {
				if (statement!=null) { //若不加if语句,可能出现空指针异常。
					statement.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
			try {
				if (connection!=null) { //若不加if语句,可能出现空指针异常。
					connection.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return false; //若程序在 return statement.executeUpdate(sql)>0;语句前出现异常,说明SQL语句未正常执行,所以在方法体后面加上 return false;
	}
	public static void main(String[] args) {
		String sql ="delete from userinfo"; //输入sql语句,执行不同操作(增加、修改、删除)时,只需修改此处的sql语句即可。
		if(update(sql)) {
			System.out.println("语句执行成功");
		}else {
			System.out.println("语句执行失败");
		}
	}
}

四、由于数据库中有两条数据,故上述代码输出结果如下:

语句执行成功

五、我们将之前博客中代码优化成了本博客第三点的代码,实现对update功能的简单封装。在今后的学习中,我们要注意提高代码的复用性,避免重复“造轮子”。

你可能感兴趣的:(JDBC update功能(增删改)的简单封装)