首页  >  文章  >  Java  >  如何用Java连接数据库?

如何用Java连接数据库?

WBOY
WBOY原创
2024-08-30 16:11:391017浏览

使用任何编程语言编写 IT 应用程序时,进出应用程序的数据流都提供核心功能。如果数据流受到某种影响,可能会对应用程序功能产生不利影响,并可能给业务带来重大损失。如今,可以使用不同的方法将程序连接到数据库,以向用户提供他们请求的信息、从用户收集信息、根据用户的要求删除信息以及每天将数据更新到数据库。我们将研究一种这样的方法,使用 Java 作为我们的编程语言,使用 JDBC 作为数据库连接方法,并遵循面向对象的方法。

开始您的免费数据科学课程

Hadoop、数据科学、统计及其他

什么是 JDBC?

JDBC 代表 Java 数据库连接,它帮助 Java 程序对数据库执行不同类型的操作,例如创建、读取、更新和删除。另外,JDBC 是一种 Java API。

通过使用 JDBC,程序员应该能够:

  • 与数据库建立连接
  • 通过将 SQL 命令发送到数据库来运行 SQL 命令
  • 解释来自数据库的结果

创建数据库以用Java连接数据库

在使用 JDBC 之前,需要有一个数据库来连接它。为了便于说明,我们将使用 Oracle 数据库。请从以下链接下载 Oracle 11g Express 版本。

点击这里

我已经准备好了 Oracle 10g 安装程序,如下所示:

如何用Java连接数据库?

来源:来自我的桌面

  • 请双击安装程序;将弹出以下屏幕。点击下一步。

如何用Java连接数据库?

来源:来自我的桌面

  • 请接受许可协议并单击下一步。

如何用Java连接数据库?

来源:来自我的桌面

  • 请保持默认设置不变,然后单击下一步。

如何用Java连接数据库?

来源:来自我的桌面

  • 它会要求您输入登录 Oracle 11g 实例时需要的密码。请提供密码并点击下一步。

如何用Java连接数据库?

来源:来自我的桌面

  • 提供密码后,安装过程将开始。安装完成后,桌面屏幕上将创建一个快捷方式图标。如果找不到,请进入Windows开始并搜索Oracle;你应该得到它。单击它可通过浏览器为您打开瘦客户端。登录实例。请注意,Oracle DB(即系统)的用户名将相同。密码将是您在配置数据库时提供的密码。

如何用Java连接数据库?

来源:来自我的桌面

  • 现在,一旦您登录,您将看到的第一个屏幕将如下所示:

如何用Java连接数据库?

来源:来自我的桌面

  • 现在让我们创建一个表。请从上面的屏幕中单击 SQL 模块并运行以下查询。

如何用Java连接数据库?

来源:来自我的桌面

  • 如您所见,我们已经成功创建了一个名为 Educba 的表。

用 Java 连接数据库

一些接口和类用于连接到数据库并使用 JDBC API 执行操作。

我们会一一解释,但先给大家介绍一下下面的程序:

如何用Java连接数据库?

如何用Java连接数据库?

如何用Java连接数据库?

来源:来自我的桌面

以下是我们将用于连接到数据库并对其执行操作的接口:

  1. 司机经理
  2. 连接
  3. 声明
  4. 结果集
  5. 准备好的声明

让我们看看我们可以作为 JDBC 操作的一部分执行的操作。

  1. 将数据从实体存储到数据库,即它们创建一个操作。
  2. 从数据库中检索数据到实体或 bean
  3. 更新数据库中实体或bean的数据
  4. 从数据库中删除或移除实体或 Bean 上的数据。

无论我们执行什么操作,一些基本步骤都会保持不变:

  1. 加载驱动程序。
class.forName("oracle.jdbc.driver.OracleDriver");
  1. 创建 URL 字符串
String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";
  1. 使用驱动程序管理器创建连接
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
  1. 使用连接引用创建语句
stmt = conn.createStatement();
  1. 使用语句执行查询

如何用Java连接数据库?

6.处理结果集(可选,取决于)

7.释放最后一个区块中的资源。

如何用Java连接数据库?

插图

当我们在插图中使用 Oracle 数据库时,我们需要拥有 Oracle 应该提供的所需驱动程序。驱动程序类通常采用 jar 文件的形式,名称为 ojdbc14.jar。如果该驱动程序不存在,则应将其作为“参考库”的一部分导入到您的 Java 程序中。

如果你已经在C文件夹中安装了Oracle 11g,最好可以在以下路径中找到它:(如果没有,可以从这里轻松下载)

C: oraclexe 应用程序 oracle 产品 10.2.0 服务器 jdbc lib

如何用Java连接数据库?

来源:来自我的桌面

应该有很多 jar 文件可用;但是,ojdbc14.jar 是最新的。同样可以用于我们的目的。该 jar 应该添加到项目的类路径中。请检查下面的图片。

如何用Java连接数据库?

来源:来自我的桌面

让我们创建一个具有以下属性的艺术家表: 您可以作为 Oracle Express Edition 的单独模块直接运行 SQL 命令行。但首先你需要连接,你可以执行“connect”命令来连接数据库。

如何用Java连接数据库?

来源:来自我的桌面

作为本例的一部分,我们将创建三个 Java 类,即 Artist.java、CreateTable.java 和 ArtistManagementDao.java 来实现此目的。

另外,我们必须在Java层创建一个名为Artist Bean的类。这个类应该具有具有上述上下文的 Artist 的属性。它将如下所示:

Artist.java

如何用Java连接数据库?

让我们创建另外两个 Java 类,名称分别为 ArtistManagementDao 和 CreateTable.java。

ArtistManagementDao.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao {
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
{
try {
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?,?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println(e);
} catch (SQLException e) {
System.out.println(e);
}
}
}

说明:

  1. Dao 类帮助我们将应用程序/业务层与持久层隔离。这通常是关系数据库。
  2. 我们使用您的计算机名称和数据库端口号(最好是 1521 )创建了一个数据库 URL,前面带有 JDBC:oracle:thin:@。然后,我们创建了用户名和密码以在数据库连接期间传递这些属性。强烈建议在生产环境中对这些值进行加密。
  3. 在 addArtist 方法中,我们尝试按照之前学习的步骤使用 conn 语句来建立连接。
  4. 我们使用插入方法将属性中的值推送到数据库。
  5. 在下一个语句中,为了测试,我们使用 get 语句从数据库中检索值。
  6. 我们还尝试使用 catch 块来捕获任何异常并抛出相同的异常。

CreateTable.java

package com;
import java.sql.*;
public class CreateTable{
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database...");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
}catch(SQLException se){
se.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(stmt!=null)
conn.close();
}catch(SQLException se){
}
try{
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
}
}

说明:

  1. 我们已使用您的计算机名称和数据库端口号(最好是 1521)创建了一个数据库 URL,前面带有 JDBC:oracle:thin:@。然后,我们创建了用户名和密码以在数据库连接期间传递这些属性。强烈建议在生产环境中对这些值进行加密。
  2. 在CreateTable.java类中,我们分别创建了ArtistManagementDao.java和Artist.java类的对象“am”和“a”。
  3. 然后我们尝试按照我们之前学到的步骤使用 conn 语句来建立连接。
  4. 然后我们创建了一个名为 Artist3 的表并更新了数据库或使用执行语句将其推送到数据库。
  5. 如果我们想给属性赋值,我们将使用我们为艺术家类创建的对象,并注意该类不会将值插入数据库;这将是 ArtistmanagementDao 类。我们已经在属性中存储了值,并将在当天的课程中看到如何将其推送到数据库。
  6. 最后,我们使用ArtistManagementDao 中的“am”对象将该对象“a”传递给ArtistManagementDao java 类的addArtist() 方法。
  7. 我们还尝试使用 catch 块来捕获任何异常并抛出相同的异常。

以上是如何用Java连接数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn