JDBC查询插入操作

Posted esrevinud

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC查询插入操作相关的知识,希望对你有一定的参考价值。

好久没写过JDBC,也有些记不清了,在此重新梳理一下

比如操作表test_message

 CREATE TABLE `test_message` (
      `message_id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
      `content` varchar(100) DEFAULT NULL
 )

查询

import java.sql.*;

public class Main {
    public static void main(String[] args) {
        // 初始化
        Connection conn = null;
        ResultSet rs = null;
        PreparedStatement prst = null;

        try {
            // 加载数据库驱动,完成后会自动执行驱动中的static代码,生成DriverManager对象
            Class.forName("com.mysql.cj.jdbc.Driver");

            // 建立连接
            conn = DriverManager.getConnection("jdbc:mysql:///test?serverTimezone=GMT%2B8", "root", "hello");

            // 全表查询
            String sql = "SELECT * FROM test_message";

            // 创建prepareStatement对象
            prst = conn.prepareStatement(sql);

            // 执行SQL并得到一个封装好的结果集
            rs = prst.executeQuery();

            // 遍历结果集
            while (rs.next()) {
                System.out.println("Id: " + rs.getInt("message_id") + "	Content: " + rs.getString("content"));
            }

            // 释放资源
            if (rs != null) {
                rs.close();
            }
            if (prst != null) {
                prst.close();
            }
            if (conn != null) {
                conn.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (rs != null) {
                try {
                    rs.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
                conn = null;
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
                conn = null;
            }
            if (prst != null) {
                try {
                    prst.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
                prst = null;
            }
        }
    }
}

插入数据 SQL语句动态渲染参数

// ?作为占位符
String sql = "INSERT INTO test_message(content) VALUE(?)";

prst = connection.prepareStatement(sql);

// 渲染SQL语句 strString渲染一个String类型  1表示SQL中第一个占位符
prst.setString(1, "Hello,World!");

// 执行SQL
rs = prst.executeUpdate();

以上是关于JDBC查询插入操作的主要内容,如果未能解决你的问题,请参考以下文章

JDBC查询插入数据库

MyBatis从入门到精通—MyBatis基础知识和快速入门

编写一个java程序,通过jdbc访问数据库实现对数据库的插入,删除,修改和查询操作

编写一个java程序,通过jdbc访问数据库实现对数据库的插入,删除,修改和查询操作

Mybatis快速入门

Mybatis -- Mybatis简介(原始JDBC的操作和问题分析ORM)