JDBC API详解

DriverManager(驱动管理类)

        1.注册驱动

        2.获取数据库连接

Connection

        1.获取执行SQL的对象

        2.管理事务

Statement

ResultSet

        ResultSet(结果集对象)作用:

                获取查询结果

PreparedStatement

DriverManager(驱动管理类)

1.注册驱动

<h1>
        Class.forName("com.mysql.jdbc.Driver");
</h1>

(MySql5之后的驱动包可省略注册驱动的步骤)

2.获取数据库连接

    <h1>
        static Connection
        getConnection(String url,String user,String password)

</h1>

获取链接:如果连接的是本机mysql并且端口号为默认的 3306 可以简化书写            
String url = "jdbc:mysql:///student_course";

Connection

1.获取执行SQL的对象

普通执行SQL对象

        <h1>
                Statement createStatement()
        </h1>

预编译SQL的执行SQL对象:防止SQL注入

PreparedStatement prepareStatement(sql)

执行储存过程的对象

        <h1>
                CallableStatement prepareCall(sql)
        </h1>

2.管理事务

MySql事务管理

开启事务:BEGN;/START TRANSACTION; 提交事务:COMMIT; 回滚事务:ROLLBACK;

JDBC 事务管理:Connection接口中定义了3个对应的方法

            <h4>
开启事务:setAutoCommit(boolean autoCommit): true为自动提交事务,false为手动提交事务,即为开启事务
提交事务:commit()
回滚事务:rollback()
            </h4>

Statement

Startment作用

执行SQL语句

            <h4>
                int execyteUpdate(sql):执行DML(数据的增 删 改),DDL(表和数据库的增 删 改 查)语句
                                返回值:(1)DML语句影响的行数
                                       (2)DDL语句执行后,执行成功也可能返回0
                            ResultSet executeQuery(sql):执行DQL(数据的查询)语句
                                返回值: Result 结果集对象
            </h4>

ResultSet

ResultSet(结果集对象)作用:

1.封装了DQL查询语句的结果

    <h4>
        ResultSet stmt.executeQuery(sql):执行 DQL 语句,返回ResultSet对象
    </h4>

获取查询结果

<h4>
    boolean next(): (1)将光标从当前位置向下移动一行 
                    (2)判断当前行是否为有效行
    返回值:
        true: 有效行,当前行有数据
        false: 无效行,当前行无数据
</h4>
     <h4>
            xxx   getXxx(参数):获取数据
                xxx:数据类型;如 int getInt(参数);String getString(参数)
                参数:
                    int: 列的编号,从1开始
                    String: 列的名称
     </h4>

使用步骤:

1.游标向下移动一行,并判断改行是否有数据:next()

2.获取数据:getXxx(参数)

//循环判断游标是否是最后一行末尾 while(rs.nest()){ //获取数据 rs.getXxx(参数); }

PreparedStatement

作用:

1.获取PrepareStatement对象

​​

//SQL语句中的参数值,占用符代替
String sql = "select * from tb_userwhere username = ? and password = ?";
//通过Connection对象获取,并传入对应的sql语句
PrepareStatement pstmt = conn.prepareStatement(sql);

</h4>

2.设置参数值

​​

PrepareStatement对象: setXxx(参数1,参数2):给?赋值
    Xxx:数据类型; 如setInt(参数1,参数2)
    参数:
            参数1:?的位置编号,从1开始
            参数2:?的值

</h4>

3.执行SQL

executeUpdate();/executeQuery(); :不需要在传递sql
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值