JDBC定义了操作所有数据库的规则(接口)
概念:java database connection Java数据库连接,Java语言操作数据库
JDBC本质:其实是官方定义的一套操作所有关系型数据可得规则,即接口。
各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套(JDBC)编程2,
真正执行的代码是驱动jar包中的实现类
JDBC的基本步骤
1.导入驱动jar包
2.注册驱动
3.获取数据库连接对象 connection
4.定义sql
5.获取执行sql语句的对象 statement
6.执行sql,接收返回结果
7.处理结果
8.释放资源
-----------------------
2.connection:数据库连接对象
1.功能
1.获取执行sql的对象
*Statement createStatement()
*preparedstatement preparedstatement(string sql)
2.管理事务:
*开启事务:void setAutoCommit(boolean autoCommit) :调用该方法设置参数为false,即开启事务
提交事务:void commit()
回滚事务: void rollback()
3.statement:执行sql的对象
1.boolean execute(String sql) 可以执行任意sql
2.int executeUpdate(String sql) 执行DML(insert,update,delete)语句
1.返回值
*影响的行数,可以通过这个影响的行数哦按段DML语句是否执行成功,返回值>0这执行成功,否则失败
3.int executeQuery(String sql) :执行DQL(select)语句
4.ResultSet:结果集对象,封装查询结果
*Boolean next()游标向下移动一行 ,判断当前行是否是最后一行末尾(是否有数据),如果是,则返回false
*getxxx():获取数据
*xxx:代表数据类型 如:int getInt()
*参数
1.int:代表列的编号,从1开始 如:getString(1)
*String :代表列名称。如:getDouble("balance")
-------------------
简单的列子:
rs.next();//向下移动一行
//获取数据
d.setId(rs.getInt("ddid"));
d.setName(rs.getString("dname"));
***注意
*使用步骤:
1.游标向下移动一行
2.判断是否有数据
3.获取数据
while(rs.next){是最后一行返回false跳出循环
//循环判断游标是否是最后一行末尾
//获取数据
int id=rs.getInt(1);
String name=rs.getString("name");
double balance=rs.getDouble(3)
}
5.preparedstatement:执行sql的对象
1.sql注入问题:在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全问题
2.解决sql注入问题:使用preparedStatement对象来解决
3.预编译的sql:参数使用?作为占位符
4.步骤:
1.导入驱动jar包
2.注册驱动
3.获取数据库连接对象 connection
4.定义sql
*注意:sql的参数使用?作为占位符。如:select * from emp where name=? and password=?
5.获取执行sql语句的对象 preparedstatement connection.preparedstatement(string sql)
6.给?赋值
*方法 setxxx(参数1,参数2);
*参数1:?的位置编号 从1 开始
*参数2:?的值
6.执行sql,接收返回结果,不需要传递sql语句
7.处理结果
8.释放资源
5.后期都会使用preparedstatement来完成增删改查
JDBC的概念,基本操作,ResultSet等各步骤的解释
最新推荐文章于 2024-09-14 21:48:00 发布