jdbc的封装-----------增删改

33 篇文章 0 订阅
22 篇文章 0 订阅
本文介绍了如何通过创建封装类来提高JDBC进行数据插入、删除和修改操作的代码复用性。通过在封装类中定义方法,接收SQL语句作为参数,返回更新操作是否成功,简化了数据库操作的代码,减少了冗余。
摘要由CSDN通过智能技术生成

通过JDBC对数据进行插入,删除,更改这三种操作时,都是用的Statement.executeUpdate()方法,该方法返回影响的行数。其他代码相同,且只有SQL语句不同,如果每次进行更新操作,都要重新写一遍代码则代码复用性太差。

所以我们可以把搭建数据库操作进行封装,减少代码的冗余。

解决方法:将数据库操作封装到一个类中,将方法传入SQL语句,返回值为boolean类型,返回更新操作是否成功,成功返回true,否则返回false 。调用该类中此方法进行增删改操作,执行SQL语句打印Yes或No,表示该方法是否成功的更新(增删改)了数据库中的数据。

 封装类

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

public class Update {

	public static boolean update(String sql) {
		Connection connection=null;
		Statement statement = null;
		try {
			//加载数据驱动
			Class.forName("com.mysql.jdbc.Driver");
			//获取连接
			connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test", "root", "root");
			//创建statement
			statement = connection.createStatement();
			//执行SQL语句
			return statement.executeUpdate(sql)>0;
		}  catch (Exception e) {			
			e.printStackTrace();
		} finally {
			//释放资源
			try {
				if (statement!=null) {
					statement.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
			try {
				if (connection !=null) {
					connection.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}		
		return false;		
	}
}

添加数据

public class Insert {

	public static void main(String[] args) {

		String sql = "insert into user_info (id,user_name,password) values ('111','111','111')";
		if (new Update().update(sql)) {
			System.out.println("Yes");
		} else {
			System.out.println("NO");
		}
	}
}

代码运行结果为:Yes     然后查看数据库:

删除数据

public class Delete {

	public static void main(String[] args) {

		String sql = "delete from user_info where user_name='fuliuqingfeng'";
		if (new Update().update(sql)) {
			System.out.println("Yes");
		} else {
			System.out.println("NO");
		}
	}
}

代码运行结果为:Yes     然后查看数据库:

修改数据

public class Up {

	public static void main(String[] args) {

		String sql = "update user_info set id='123',user_name='root',password='root' where id='111'";
		new Update();
		if (Update.update(sql)) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}

代码运行结果为:Yes     然后查看数据库:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值