JDBC连接MySQL,增删改查方法

1.加载驱动
Class.forName();
参数为"com.mysql.jdbc.Driver"
Mysql 5.8版本 8.0版本jar包
参数为"com.mysql.cj.jdbc.Driver"
2.建立连接
URL=“jdbc:mysql://localhost:3306/databases”;
UserName = “root”;
PassWrod=“123456”;
Connection con = DriverManager.getConnection(url,username,password);
3.查询方法
public static ResultSet exeQuery(String sql,Object[] params){
//1.获取连接
Connection con = getCon();
//2.实例PreparedStatement对象
PreparedStatement pst = con.PrepareStatement(sql);
//3.预编译,遍历数组
for(int i=0;i<params.length;i++){
//4.因为不知道字段是什么类型 所以setObject类型
//5.下标是从0开始 所以i+1
pst.setObject(i+1,params[i]);
}
//6.执行查询,返回ResultSet 结果集
ResultSet rs = pst.executeQuery();// 方法中不加sql参数,在实例化时参数已经传过
//7.执行完返回值为ResultSet类型
return rs;
}
4.增删改通用方法
public static int exeUpdate(String sql,Object[] params){
//1.获取连接
Connection con = getCon();
try{
//2.实例PreparedStatement对象
PreparedStatement pst = con.prepareStatement(sql); PreparedStatement pst = con.prepareStatement(sql);
//3.预编译,遍历数组 //3.预编译,遍历数组
for(int i=0;i<params.length;i++){ for(int i=0;i<params.length;i++){
//4.因为不知道字段是什么类型 所以setObject类型
//5.下标是从0开始 所以i+1
pst.setObject(i+1,params[i]);
}
//6.返回值是int类型,表示受影响的记录条数
pst.executeUpdate();
} catch(Exception e){
e.printStackTrace();
}finally{
//7.关闭连接释放资源
closeAll();
}
return 0;
}
//释放资源的方法 需要把PreparedStatement,ResultSet,Connection设置为成员变量
public static void closeAll(){
try{
if(rs!=null){
rs.close();
}
if(pst!=null){
pst.close();
}
if(con!=null){
con.close();
}
}catch(Execption e){
e.printStackTrace();
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值