JDBC Review

所有的java操作关系数据库,无论是那种数据库套路都是一样的,JPA、MyBatis都是JDBC的封装。

JDBC的套路代码:

               1.修改:executeUpdate();

                2.查修:executeQuery();

java.sql下的接口步骤:

                1.获取数据源DataSource,配置连接地址URL、用户名、密码等。

                 2.获取连接对象,就是发送网络请求,建立和数据库的连接Connection。

                 3.获取执行SQL语句的对象PreparedStatement对象,封装的SQL语句。

                 4.执行更新操作executeUpdate() =》int本次更新受影响的行数。

                    执行查询        executeQuery() =》Result 结果集。

                  5.遍历结果集ResultSet对象,每当调用一次next方法就从结果集中取出一行数据                                result.getXXX("列名") =》获取本行数据的具体属性值。

                  6.操作之后一定要关闭资源:resultSet、Connection对象。

 PreparedStatement: 预 编 译 的 Statement 对象。 PreparedStatement 是 Statement 的子接 口, 它允许数据库预编译 SQL 语句( 这些 SQL 语句通常带有参数), 以后每次只改变 SQL 命令的参数,避免数据库每次都需要编译 SQL 语句, 因此性能更好。 相对于Statement 而言 , 使用PreparedStatement 执行 SQL 语句时, 无须再传入 SQL 语句, 只要为预编译的 SQL 语句传入参数值即可。 

ResultSet: 结果集对象。 该对象包含访问查询结果的方法, ResultSet 可以通过列索引或列名获得列数据。


具体代码如下:

public class JDBCReview {
    public static void main(String[] args) throws SQLException {
        //获取数据源 - 数据具体从哪里来的
        //DataSource这个接口无论那种具体的数据库驱动都要实现此接口,具体是什么数据库,数据库名称+DataSource
        //MySQLDataSource
        //SQLiteDataSource
        MysqlDataSource dataSource =new MysqlDataSource();
        //1.1 设置数据源的连接地址,用户名,密码等属性
        //发起TCP请求.按照指定的协议(jdbc协议)连接到数据库的服务器
        //大家根据自己的mysql数据库,数据库名称,用户名,密码等来填写
        dataSource.setURL("jdbc:mysql://12.0.0.1:3306/book_shop?characterEncoding=UTF-8&useSSL=false");
        dataSource.setUser("root");
        dataSource.setPassword("111111");
        //2.获取数据库连接 -connection接口的对象
        Connection connection =dataSource.getConnection();//这一步才会向数据库服务器发起请求
        //3.执行SQL具体的语句,每个SQL语句对应一个PreparedStatement对象
        String sql ="select pass from admins where nick_name = ?";
        PreparedStatement statement = connection.prepareStatement(sql);
        statement.setString(1,"小狐狸");
        //4.具体执行操作,增删改executeUpdate()=>int本次修改操作受影响的行数
        //查询操作 select=》executeQuery()=>ResultSet=>查询结果集
        ResultSet resultSet= statement.executeQuery();
        //遍历结果集
        while (resultSet.next()){
            String password= resultSet.getString("pass");
            System.out.println(password);
        }
        //5.数据库属于资源操作,一定要记得关闭资源,结果集对象,连接对象
        resultSet.close();
        connection.close();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值