美文网首页
从屌丝到架构师的飞越(数据库篇)-JDBC-CRUD

从屌丝到架构师的飞越(数据库篇)-JDBC-CRUD

作者: 走着别浪 | 来源:发表于2019-07-26 08:01 被阅读0次

    一.介绍

    Java 数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。它JDBC是面向关系型数据库的。

      简单地说,就是用于执行SQL语句的一类Java API,通过JDBC使得我们可以直接使用Java编程来对关系数据库进行操作。通过封装,可以使开发人员使用纯Java API完成SQL的执行。

    JDBC的CRUD就是对数据库的增删改查操作, JDBC主要用在JAVA程序和数据库打交道,最基础简单的事情就是对数据的增删改查操作。

    二.知识点介绍

    1、数据库连接

    2、增加操作

    3、修改操作

    4、删除操作

    5、查询操作

    三.上课对应视频的说明文档

    1、数据库连接

    代码示例:

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.SQLException;

    /* JDBC连接

    * (1)导入驱动jar包,不同数据库有不同jar包

    * (2)代码介入

    * */

    public class JdbcLj {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Connection conn=null;//得到数据库连接对象

    try {

    Class.forName("org.gjt.mm.mysql.Driver"); // 加载驱动

    System.out.println("加载驱动");

    conn=DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/ww", "root", "root");// 获取连接

    System.out.println("获取连接");

    } catch (ClassNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    2、增加操作

    代码示例:

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.PreparedStatement;

    import java.sql.SQLException;

    /* JDBC连接

    * (1)导入驱动jar包,不同数据库有不同jar包

    * (2)代码介入

    * */

    public class JdbcLj {

    /**

    * @param args

    */

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Connection conn=null;//得到数据库连接对象

    try {

    Class.forName("org.gjt.mm.mysql.Driver"); // 加载驱动

    System.out.println("加载驱动");

    conn=DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/ww", "root", "root");// 获取连接

    System.out.println("获取连接");

    //表的操作,都是SQL

    String sql="insert into students(name,xh,sex,age) values(?,?,?,?)";

    PreparedStatement ps=conn.prepareStatement(sql);//加载SQL

    ps.setString(1, "李四");

    ps.setInt(2, 0001);

    ps.setString(3, "女");

    ps.setInt(4,19);

    //PreparedStatement 加载SQL语句,可以操作有参的SQL

    //Statement 操作无参

    ps.executeUpdate();//执行查询语句并接收结果

    } catch (ClassNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    3、修改操作

    代码示例:

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.PreparedStatement;

    import java.sql.SQLException;

    /* JDBC连接

    * (1)导入驱动jar包,不同数据库有不同jar包

    * (2)代码介入

    * */

    public class JdbcLj {

    /**

    * @param args

    */

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Connection conn=null;//得到数据库连接对象

    try {

    Class.forName("org.gjt.mm.mysql.Driver"); // 加载驱动

    System.out.println("加载驱动");

    conn=DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/ww", "root", "root");// 获取连接

    System.out.println("获取连接");

    //表的操作,都是SQL

    String sql="update students name=? where id=?";

    PreparedStatement ps=conn.prepareStatement(sql);//加载SQL

    ps.setString(1, "李四");

    ps.setInt(2, 1);

    //PreparedStatement 加载SQL语句,可以操作有参的SQL

    //Statement 操作无参

    ps.executeUpdate();//执行查询语句并接收结果

    } catch (ClassNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    4、删除操作

    代码示例:

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.PreparedStatement;

    import java.sql.SQLException;

    /* JDBC连接

    * (1)导入驱动jar包,不同数据库有不同jar包

    * (2)代码介入

    * */

    public class JdbcLj {

    /**

    * @param args

    */

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Connection conn=null;//得到数据库连接对象

    try {

    Class.forName("org.gjt.mm.mysql.Driver"); // 加载驱动

    System.out.println("加载驱动");

    conn=DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/ww", "root", "root");// 获取连接

    System.out.println("获取连接");

    //表的操作,都是SQL

    String sql="delete from students where id=? ";

    PreparedStatement ps=conn.prepareStatement(sql);//加载SQL

    ps.setInt(1, 9);

    //PreparedStatement 加载SQL语句,可以操作有参的SQL

    //Statement 操作无参

    ps.executeUpdate();//执行查询语句并接收结果

    } catch (ClassNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    5、查询操作

    代码示例:

    import java.sql.Connection;

    import java.sql.DriverManager;

    import java.sql.PreparedStatement;

    import java.sql.ResultSet;

    import java.sql.SQLException;

    /* JDBC连接

    * (1)导入驱动jar包,不同数据库有不同jar包

    * (2)代码介入

    * */

    public class JdbcLj {

    /**

    * @param args

    */

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Connection conn=null;//得到数据库连接对象

    try {

    Class.forName("org.gjt.mm.mysql.Driver"); // 加载驱动

    System.out.println("加载驱动");

    conn=DriverManager.getConnection(

    "jdbc:mysql://localhost:3306/ww", "root", "root");// 获取连接

    System.out.println("获取连接");

    //表的操作,都是SQL

    String sql="select * from students where sex=? and age>?";

    PreparedStatement ps=conn.prepareStatement(sql);//加载SQL

    ps.setString(1, "男");

    ps.setInt(2, 20);

    //PreparedStatement 加载SQL语句,可以操作有参的SQL

    //Statement 操作无参

    ResultSet rs=ps.executeQuery();//执行查询语句并接收结果

    while(rs.next()){

    System.out.println(rs.getString("name")+"  "+rs.getInt("age"));

    }

    } catch (ClassNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    相关文章

      网友评论

          本文标题:从屌丝到架构师的飞越(数据库篇)-JDBC-CRUD

          本文链接:https://www.haomeiwen.com/subject/zpjplctx.html