Java构建JDBC应用程序的实例操作

Java构建JDBC应用程序的实例操作涉及到以下步骤:

  1. 导入JDBC驱动
    在Java应用程序中连接数据库前,需要导入相应的JDBC驱动,可以通过Class.forName()方法实现。
    示例代码:
Class.forName("com.mysql.jdbc.Driver");
  1. 创建连接
    在导入驱动后,应用程序需要创建一个数据库连接,可以通过DriverManager.getConnection()方法创建连接。
    示例代码:
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "admin";
Connection conn = DriverManager.getConnection(url, user, password);
  1. 创建Statement对象
    一旦创建连接,应用程序就可以通过Connection对象创建Statement对象,Statement对象用于执行SQL语句。
    示例代码:
Statement stmt = conn.createStatement();
  1. 执行SQL语句
    通过Statement对象执行SQL语句。
    示例代码:
String sql = "SELECT * FROM user";
ResultSet rs = stmt.executeQuery(sql);
  1. 处理结果集
    当SQL语句执行完成后,应用程序可以通过ResultSet对象获取查询结果,并进行相应的处理。
    示例代码:
while(rs.next()){
    String name = rs.getString("name");
    int age = rs.getInt("age");
    System.out.println("Name: " + name + ", Age: " + age);
}
  1. 关闭连接
    在应用程序处理完结果集后,需要释放资源,包括ResultSet对象、Statement对象和Connection对象。
    示例代码:
rs.close();
stmt.close();
conn.close();

下面是两个示例,分别演示基本的数据库连接和查询操作:

示例1:连接MySQL数据库

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConnectionTest {

    public static void main(String[] args) {

        // JDBC driver name and database URL
        final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
        final String DB_URL = "jdbc:mysql://localhost:3306/test";

        // Database credentials
        final String USER = "root";
        final String PASS = "admin";

        Connection conn = null;

        try {
            // Register JDBC driver
            Class.forName(JDBC_DRIVER);

            // Open a connection
            System.out.println("Connecting to database...");
            conn = DriverManager.getConnection(DB_URL,USER,PASS);

            // Close connection
            conn.close();
            System.out.println("Connection closed.");
        } catch(SQLException se) {
            // Handle errors for JDBC
            se.printStackTrace();
        } catch(Exception e) {
            // Handle errors for Class.forName
            e.printStackTrace();
        } finally {
            // Finally block used to close resources
            try {
                if(conn!=null) conn.close();
            } catch(SQLException se) {
                se.printStackTrace();
            }
        }
    }
}

示例2:查询MySQL数据库中的数据

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

public class SelectTest {

    public static void main(String[] args) {

        // JDBC driver name and database URL
        final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
        final String DB_URL = "jdbc:mysql://localhost:3306/test";

        // Database credentials
        final String USER = "root";
        final String PASS = "admin";

        Connection conn = null;
        Statement stmt = null;

        try {
            // Register JDBC driver
            Class.forName(JDBC_DRIVER);

            // Open a connection
            System.out.println("Connecting to database...");
            conn = DriverManager.getConnection(DB_URL,USER,PASS);

            // Execute a query
            System.out.println("Creating statement...");
            stmt = conn.createStatement();
            String sql = "SELECT * FROM user";
            ResultSet rs = stmt.executeQuery(sql);

            // Extract data from result set
            while(rs.next()){
                //Retrieve by column name
                String name = rs.getString("name");
                int age = rs.getInt("age");

                //Display values
                System.out.println("Name: " + name + ", Age: " + age);
            }
            // Clean-up environment
            rs.close();
            stmt.close();
            conn.close();
        } catch(SQLException se) {
            // Handle errors for JDBC
            se.printStackTrace();
        } catch(Exception e) {
            // Handle errors for Class.forName
            e.printStackTrace();
        } finally {
            // Finally block used to close resources
            try {
                if(stmt!=null) stmt.close();
            } catch(SQLException se2) {
            } // nothing we can do
            try {
                if(conn!=null) conn.close();
            } catch(SQLException se) {
                se.printStackTrace();
            }
        }
    }
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java构建JDBC应用程序的实例操作 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • 微信小程序实现电子签名并导出图片

    下面我将详细讲解如何实现微信小程序实现电子签名并导出图片的完整攻略。 前置知识 在开始之前,需要了解一些前置知识: HTML5 canvas CanvasRenderingContext2D 微信小程序 file API 实现步骤 步骤一:创建 canvas 元素 在小程序的 WXML 文件中,创建一个 canvas 元素: <canvas id=&q…

    Java 2023年5月23日
    00
  • windows系统使用mvn命令打包并指定jdk路径方式

    下面是“windows系统使用mvn命令打包并指定jdk路径方式”的完整攻略过程。 1. 安装JDK和Maven 首先需要确保JDK和Maven已经正确安装在你的Windows系统上。如果没有安装可以按如下步骤安装。 安装JDK 访问Oracle官网下载合适的JDK版本并进行安装。安装完成后需要设置环境变量JAVA_HOME和PATH。 安装Maven 访问…

    Java 2023年5月19日
    00
  • 扩展类加载器的作用是什么?

    扩展类加载器是Java虚拟机提供的一种类加载器,它的作用是加载Java虚拟机扩展目录(%JAVA_HOME%/jre/lib/ext)下的jar包和类文件。使用扩展类加载器可以将第三方库或扩展功能的类加载到Java虚拟机中,提供给应用程序使用。下面是使用扩展类加载器的攻略和示例。 使用攻略 使用扩展类加载器可以遵循如下步骤: 找到Java虚拟机扩展目录,一般…

    Java 2023年5月10日
    00
  • java基础之字符串编码知识点总结

    Java基础之字符串编码知识点总结 什么是字符串编码 字符串编码是指将字符集中的字符编码成指定格式的二进制编码,以便于计算机存储、传输和显示。在Java中,常用的字符串编码有ASCII、ISO-8859-1、UTF-8等。 ASCII编码 ASCII编码是7位编码,最高位为0,能表示128个字符。常用于英语、数字和符号等字符集的表示。 示例1: char c…

    Java 2023年6月1日
    00
  • Java SpringBoot Validation用法案例详解

    这里是关于Java SpringBoot Validation用法的详细攻略。 什么是Java SpringBoot Validation Java SpringBoot Validation是一种用于验证表单输入数据的框架,能够确保数据的合法性和完整性。它能够自动完成JavaBean的数据验证,并且给出友好的错误提示信息。 如何使用Java SpringB…

    Java 2023年5月19日
    00
  • Java WebService开源框架CXF详解

    Java WebService开源框架CXF详解 Java WebService开源框架CXF是Apache Software Foundation的一个二级项目,它提供了一种简单、易用的方式来实现JAX-WS、JAXB、JAX-RS和其他Web Services相关的标准。CXF项目是基于XFire项目和FUSE组件的的开源项目,并在这两个项目的基础上进行…

    Java 2023年5月19日
    00
  • java Date获取年月日时分秒的实现方法

    获取当前时间 Java中的Date类可以获取当前系统时间,包含年月日时分秒等信息。获取当前时间的代码如下: import java.util.Date; public class DateUtils { public static void main(String[] args) { Date now = new Date(); System.out.pri…

    Java 2023年5月20日
    00
  • Java内存溢出的几个区域总结(注意避坑!)

    Java内存溢出的几个区域总结(注意避坑!) 在Java应用程序中,如何管理和控制内存使用是非常重要的。Java虚拟机管理内存的方式不同于C++或其他语言,因为Java虚拟机使用堆区域来分配内存,并且具有垃圾回收机制。然而,这些不同也使得Java应用程序容易遭遇内存溢出错误。在这篇文章中,我们将概述Java中主要的内存区域,如何避免内存泄漏和内存溢出错误。 …

    Java 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部