IntelliJ idea通过jdbc连接数据库实现简单增删改查

通过jdbc连接数据库并实现增删查改

前言:什么是jdbc
Java 数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。
此过程一共有七步:

  1. 加载驱动
  2. 创建连接
  3. 写sql语句
  4. 得到statement对象
  5. 执行sql
  6. 处理结果集
  7. 关闭资源
    下面开始实现
  • 百度搜索“jdbc jar包”下载jar包。打开idea,新建一个项目我命名为“pro”,然后再导入jar包。点击File->Project Structure->Modules->"+"号,然后找到jar包位置勾上,点击Applyj即可。
    IntelliJ idea通过jdbc连接数据库实现简单增删改查_第1张图片

  • 点击pro项目下的src文件夹新建一个包,我命名为"com",然后在com包下新建一个工具包命名为“util”。util包内新建一个类“DBUtil”用来加载驱动,连接数据库

public class DBUtil {
    public static Connection connection() {
        Connection connection = null;
        try {
            //1加载驱动
            Class.forName("com.mysql.jdbc.Driver");
            //2创建连接
            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db1?useSSL=true&characterEncoding=utf-8&user=root&password=123456");

        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }
  • 在com包下新建一个bean包,在里面新建一个UserInfo类用来实现参数的传递。
public class UserInfo {
    private String name;
    private String age;
    private String stunum;
    private String major;


    public UserInfo(String name,String stunum,String age,String major){
        this.name = name;
        this.age = age;
        this.stunum = stunum;
        this.major = major;
    }
    
    @Override
    public String toString() {
        return "student{" +
                "name='" + name + '\'' +
                ", age='" + age + '\'' +
                ", stunum='" + stunum + '\'' +
                ", major='" + major + '\'' +
                '}'+'\n';
    }
}

  • 在com包下新建一个Test类,在类里面新建一个list类型的findall函数用来查询数据库并且在其中实现了写sql、得到statement对象、执行sql、和处理结果集
public class Test {
    public static List findall() {
        List list = new ArrayList<>();
        ResultSet resultSet = null;
        PreparedStatement statement = null;
        Connection connection = null;
        try {
            connection = DBUtil.connection();
            //3.写sql
            String sql = "select * from table1";
            //4.得到statement对象
            statement = connection.prepareStatement(sql);
            //5.执行sql
            resultSet = statement.executeQuery();
            //6处理结果集
            while (resultSet.next()) {
                String name = resultSet.getString(1);
                String age = resultSet.getString(2);
                String stunum = resultSet.getString(3);
                String major = resultSet.getString(4);
                UserInfo info = new UserInfo(name, age, stunum, major);
                list.add(info);
            }
            statement = connection.prepareStatement(sql);
            statement.execute(sql);
        } catch (Exception e) {
            e.printStackTrace();
        } 
  • 在类DBUti中新建一个close函数用来关闭资源
public static void close(Connection connection, PreparedStatement statement, ResultSet resultSet) {
    //7关闭资源
    if (resultSet != null) {
        try {
            resultSet.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    if (statement != null) {
        try {
            statement.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    if (connection != null) {
        try {
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

}
  • findall函数处理完结果集之后,调用close函数关闭资源。
finally {
            //7关闭资源
            DBUtil.close(connection, statement, resultSet);

        }
  • 在main函数中输出结果。
public static void main(String[] args) {
        Test test = new Test();
        List list = new ArrayList<>();
        //test.insert();
        //test.delete();
        //test.update();
        list = test.findall();
        System.out.println(list.toString());
    }
  • 数据库的插入、删除和更新分别在Test类中新建insert、delete和update函数。这些函数与findall相似仅仅只是sql语句不同
//插入
String sql = "insert into table1 values('李四','333333','21','计算机科学')";
//删除
String sql = "delete from table1 where name='张三'";
//更新
String sql3 = "update table1 set stunum='654321' where stunum='123456'";

调用不同的函数,main函数也得相应调用:

//test.insert();
//test.delete();
//test.update();

附一张输出结果图:
IntelliJ idea通过jdbc连接数据库实现简单增删改查_第2张图片

你可能感兴趣的:(中软国际实习,idea)