JDBC简单查询 菜鸟入门

以前学习JDBC的时候很多不懂的地方,后来慢慢用多了 也就会了,但是后来一直使用各种框架,对JDBC有一点遗忘 今天我们就来看看JDBC技术 到底如何使用 所谓的JDBC就是 连接数据库的一套API 也就是一套方法罢了,下面他们提供几个常用的接口和类

DriverManger 驱动程序管理类 用于 装载驱动程序 并为创建数据库连接提供支持
Connection 接口 用于连接某一数据库
Statement 用于执行Sql语句 他下面有两个常用子接口
preparStatement是Statement下的子接口 用于执行预编译的Sql语句防止sql注入 经常使用
ResultSet 该接口用于对我们查询到的结果集合进行处理

首先我们创建一张表 我使用的是数据库操作软件是Navice 创建一张t_user表
这里写图片描述

里面有 ID主键 一个name 一个age列

我再这里使用的是mySql数据库 所以我要导入Mysql的驱动包 复制到lib目录下并构建到配置路径中

这里写图片描述

下面是我们使用JDBC的步骤在网上找的图片

这里写图片描述

package com.hljex.Dao;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;

public class JdbcTool {
     private static  Connection con = null;

     public static  Connection GetConnection(){
     //创建一个JdbcTool 工具类 用于专门得到数据库链接
         try {
     //加载mysql驱动
            Class.forName("com.mysql.jdbc.Driver");
    //获取数据库链接对象
con =  (Connection)   DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","");
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return con;
     }

}


接下来我们使用Statement 做一个查找 当然我们一般都是使用preparStatement 因为这个可以防止sql注入是预先编译SQL 语句的

下面是我们做了一个简单的查询

package com.hljex.Dao;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class JdbcDao {
        public static void  TestDao() throws ClassNotFoundException, SQLException{
        //我们建立三个变量
        Connection con = null; //用于连接数据库
        Statement str = null;//用于向数据库发送sql语句
        ResultSet  resu = null;//用于处理我们查找到的结果集
        Class.forName("com.mysql.jdbc.Driver");
        //获取连接对象 传入要连接的数据库地址 并传入用户名称和密码
        con = (Connection)JdbcUtil.GetConnection();
        //创建sql语句
        String sql = "select * from t_user";
        //获取发送sql语句Statement对象
        str = (Statement) con.createStatement();
        //执行sql
        resu = str.executeQuery(sql);
            //打印出我们查询到的数据
            while (resu.next()) {
                System.out.println(resu.getInt("pk_id"));
                System.out.println(resu.getString("f_name"));
            }

        }

        //创建main方法 调用TestDao() 抛出异常信息
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            TestDao();

        }

}

查询结果:
这里写图片描述

当然我们也要使用经常用到的preparStatement 预编译的对象嘛

package com.hljex.Dao;

import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class JdbcDao {
        public static void  TestDao() throws ClassNotFoundException, SQLException{
        //我们建立三个变量
        Connection con = null; //用于连接数据库
        PreparedStatement str = null;//用于向数据库发送sql语句
        ResultSet  resu = null;//用于处理我们查找到的结果集
        Class.forName("com.mysql.jdbc.Driver");
        //获取连接对象 传入要连接的数据库地址 并传入用户名称和密码
        con = (Connection)JdbcUtil.GetConnection();
        //创建sql语句
        String sql = "select * from t_user";
        //获取发送sql语句PreparedStatement对象    最大的区别就是 这里我们获取sql执行对象的时候是要把Sql语句传入过去的
        str = (PreparedStatement) con.prepareStatement(sql);
        //执行sql
        resu = str.executeQuery();
            while (resu.next()) {
                System.out.println(resu.getInt("pk_id"));
                System.out.println(resu.getString("f_name"));
            }

        }

        //创建main方法 调用TestDao() 抛出异常信息
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            TestDao();

        }

}

当然我们也是查询出来的
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值