JDBC概念

本文详细介绍了使用Java JDBC进行数据库连接、执行SQL、处理结果集、事务管理和批处理的基本步骤。还对比了Statement与PreparedStatement的区别,强调了PreparedStatement在防止SQL注入和提升效率上的优势。同时,展示了如何获取自增主键,并提供了事务处理的示例代码,确保数据一致性。
摘要由CSDN通过智能技术生成

1.jdbc连接数据库基本步骤

1.加载驱动 mysql驱动
Class.forName(“com.mysql.jdbc.Driver”);
2.建立连接 数据库IP、端口、用户名、密码、库名
String url=“jdbc:mysql://ip:端口号/库名?useSSL=true”;
Connection conn=DriverManager.getConnection(url,username,password);
3.创建Statement语句
Statement stmt=conn.createStatement();
4.执行sql
stmt.execute(sql);
int i=STEMT.executeUpdate(sql);
ResultSet rs=stmt.executeQuery(sql);
5.处理结果集
while(){

}
6.释放资源
stmt.close();
conn.close();

2.完成常见的增删改查

executeUpdate
executeQuery
execute

3.Statement与PreparedStatement语句的区别?

Statement语句的弊端
拼接sql复杂 String sql=“select * from student where ssex=’”+sex+"’";
安全性问题:可遭到注入攻击 List=dao.fingBySex(“男’ or ‘1’=‘1’”);

PreparedStatement语句的优势
不需要拼接sql
防止注入攻击
预编译,提高sql执行效率

4.返回自增主键

//第一个参数 sql
//第二个参数 常量 为了返回自增主键
stmt=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);

stmt=conn.preparedStatement(sql,1);

stmt=conn,preparedStatement(sql,1);
ResultSet rs=stmt.getGenerateKey();//一行一列
if(rs.next()){
int id=rs.getInt(1);
}

5.事务操作

try{
conn.setAutoCommit(false);
dml;
dml;
conn.commit();
}catch(){
conn.rollback();
}

6.批处理

7.动态sql 高级查询

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值