如何将 JDBC 连接到 tns oracle

2023-12-25

我可以使用 tns 文件从 plsql 连接到数据库

现在我想使用 JDBC 从 Java 连接到数据库。

我尝试过的:

我搜索谷歌,发现我必须使用这个连接字符串:

"jdbc:oracle:thin:@//host:port))/tnsfile)";

我的计算机名称是myPC

tns文件中写入的端口是5151

所以我尝试了这个连接字符串

"jdbc:oracle:thin:@//myPC:5151))/tnsfile"

但我得到了这个例外

java.sql.SQLRecoverableException: IO ERROR: SO Exception was generated

我究竟做错了什么?

如何使用 tns 文件将 JDBC 连接到数据库?


您必须设置一个名为oracle.net.tns_admin指向包含您的文件夹的位置tnsnames.ora文件。然后指定该文件中的条目@登录您的数据库 URL。检查下面的示例。您可以在这里找到更多信息:数据源和 URL - Oracle 文档 http://docs.oracle.com/cd/B19306_01/java.102/b14355/urls.htm#BEIDIJCE

import java.sql.*;

public class Main {
  public static void main(String[] args) throws Exception {
    System.setProperty("oracle.net.tns_admin", "C:/app/product/11.2.0/client_1/NETWORK/ADMIN");
    String dbURL = "jdbc:oracle:thin:@ENTRY_FROM_TNSNAMES";

    Class.forName ("oracle.jdbc.OracleDriver");

    Connection conn = null;
    Statement stmt = null;

    try {
      conn = DriverManager.getConnection(dbURL, "your_user_name", "your_password");

      System.out.println("Connection established");

      stmt = conn.createStatement();

      ResultSet rs = stmt.executeQuery("SELECT dummy FROM dual");

      if (rs.next()) {
        System.out.println(rs.getString(1));
      }
    } catch (Exception e) {
      e.printStackTrace();
    }
    finally {
      if (stmt != null) try { stmt.close(); } catch (Exception e) {}
      if (conn != null) try { conn.close(); } catch (Exception e) {}
    }
  }
}

示例条目来自tnsnames.ora file:


my_net_service_name= 
 (DESCRIPTION= 
   (ADDRESS=(some address here))
   (CONNECT_DATA= 
     (SID=some_SID_name)))  

Where my_net_service_namestring 是你必须替换的ENTRY_FROM_TNSNAMES来自我的 Java 示例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 JDBC 连接到 tns oracle 的相关文章

  • 使用 GWT CellTableBuilder 构建树表

    Is it possible to build a tree table like this http www sencha com examples ExamplePlace basictreegrid with the new Cell
  • 如果在睡眠线程上调用interrupt()会发生什么?

    我有一个线程 然后run I call sleep 如果我中断这个线程会发生什么 MyThread extends Thread public void run try sleep 1000000 catch InterruptedExce
  • 对话框上的 EditText 不返回任何文本

    我太累了 找不到错误 我没有发现任何错误 但我没有从 editText 收到任何文本 请看下面的代码 活动密码 xml
  • Grails 2.3.0 自动重新加载不起作用

    我最近将我们的项目升级到 grails 2 3 0 一切工作正常 除了每当我更改代码时自动重新加载都无法工作的问题 这包括所有项目工件 控制器 域 服务 gsps css 和 javascript 文件 我的旧版本 grails 可以正常工
  • 为什么 java 编译器不报告 Intellij 中多播表达式的未经检查的强制转换警告?

    为什么下面的代码没有报告 Intellij IDEA 的未经检查的警告jdk 1 8 0 121自从Supplier
  • Spring安全“记住我”cookie在第一个请求中不可用

    我无法在登录请求后检索 Spring 记住我 cookie 但它在对受保护页面的下一个请求中工作正常 谁能告诉我怎样才能立即得到它 我在登录请求中设置了记住我的 cookie 但在 Spring 重定向回原始 受保护的 url 后无法检索它
  • 使用 RecyclerView 适配器在运行时更改布局屏幕

    我有两个布局文件 如下所示 如果列表中存在数据 则我显示此布局 当列表为空时 我会显示此布局 现在我想在运行时更改布局 当用户从列表中删除最后一项时 我想将布局更改为第二张图片中显示的 空购物车布局 In getItemCount Recy
  • 主线程如何在该线程之前运行?

    我有以下代码 public class Derived implements Runnable private int num public synchronized void setA int num try Thread sleep 1
  • 如何将 android.net.Uri 转换为 java.net.URL? [复制]

    这个问题在这里已经有答案了 有没有办法从Uri to URL 我正在使用的库需要这个 它only接受一个URL但我需要在我的设备上使用图像 如果该方案的Uri is http or https new URL uri toString 应该
  • 如何获取 WebElement 的父级[重复]

    这个问题在这里已经有答案了 我试过了 private WebElement getParent final WebElement webElement return webElement findElement By xpath 但我得到
  • Java 服务器-客户端 readLine() 方法

    我有一个客户端类和一个服务器类 如果客户端向服务器发送消息 服务器会将响应发送回客户端 然后客户端将打印它收到的所有消息 例如 如果客户端向服务器发送 A 则服务器将向客户端发送响应 1111 所以我在客户端类中使用 readLine 从服
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • Java 数组的最大维数

    出于好奇 在 Java 中数组可以有多少维 爪哇language不限制维数 但是JavaVM规范将维度数限制为 255 例如 以下代码将无法编译 class Main public static void main String args
  • Cloudfoundry:如何组合两个运行时

    cloundfoundry 有没有办法结合两个运行时环境 我正在将 NodeJS 应用程序部署到 IBM Bluemix 现在 我还希望能够执行独立的 jar 文件 但应用程序失败 APP 0 bin sh 1 java not found
  • Android Studio 将音乐文件读取为文本文件,如何恢复它?

    gameAlert mp3是我的声音文件 运行应用程序时 它询问我该文件不与任何文件类型关联 请定义关联 我选择TextFile错误地 现在我的音乐文件被读取为文本文件 我如何将其转换回music file protected void o
  • 如何在 Eclipse Java 动态 Web 项目中使用 .properties 文件?

    我正在 Eclipse 中开发动态 Web 项目 我创建了一个 properties 文件来存储数据库详细信息 用户名 密码等 我通过右键单击项目和 New gt File 添加它 我使用了Java util包Properties类 但它不
  • 为什么java中的for-each循环中需要声明变量

    for 每个循环的通常形式是这样的 for Foo bar bars bar doThings 但如果我想保留 bar 直到循环结束 我可以not使用 foreach 循环 Foo bar null Syntax error on toke
  • Hibernate 和可序列化实体

    有谁知道是否有一个框架能够从实体类中剥离 Hibernate 集合以使它们可序列化 我查看了 BeanLib 但它似乎只进行实体的深层复制 而不允许我为实体类中的集合类型指定实现映射 BeanLib 目前不适用于 Hibernate 3 5
  • 在android中跟踪FTP上传数据?

    我有一个运行 Android 的 FTP 系统 但我希望能够在上传时跟踪字节 这样我就可以在上传过程中更新进度条 安卓可以实现这个功能吗 现在 我正在使用org apache common net ftp我正在使用的代码如下 另外 我在 A
  • Android 和 Java 中绘制椭圆的区别

    在Java中由于某种原因Ellipse2D Double使用参数 height width x y 当我创建一个RectF在Android中参数是 left top right bottom 所以我对适应差异有点困惑 如果在 Java 中创

随机推荐

  • Jasper iReport 表返回空文档,尽管查询有效

    我正在尝试使用 Jasper iReport 4 5 创建报告 并使用表格来显示一些数据 该表由查询填充 当我在查询编辑器中检查查询预览时 我得到了我想要的结果 但是 当我尝试创建报告预览时 我得到的只是 文档没有页面 甚至表头中的静态文本
  • openssl_encrypt 返回 false

    我试图在 PHP 中使用 openssl encrypt 加密字符串 但它一直返回 FALSE encrypted openssl encrypt 1234 AES 256 CBC kGJeGF2hEQ OPENSSL ZERO PADDI
  • TFS构建错误MSB4126(解决方案配置无效)如何修复

    我正在致力于将网站迁移到 Web 项目 我更新了该项目 并且本地一切正常 我已转而构建解决方案而不是项目 但是在构建服务器上构建时 我收到一条错误消息 c agent work 10 s mySolution sln metaproj 0
  • “与 Google 集成”按钮突然消失(收到 404)

    我有 Google Apps Marketplace 应用程序 在其中使用 与 Google 集成 按钮来启动 google OAuth2 流程 由于某种未知原因 该按钮今天消失了 我收到错误 404 https apis google c
  • 如何在Spring Boot中访问GCS存储桶?

    Spring Boot中GCP从GCS存储桶读取文件的配置是什么 您可以自动装配存储类以与存储桶一起使用 CRUD 操作 Autowired private Storage storage public void store InputSt
  • 如何在Python中从XML文件中读取注释文本

    我可以使用 import xml etree ElementTree as et 读取 xml 文件 但我的问题是阅读评论文本数据文件中给出 如何读取 例如在下面的 xml 中 我想阅读基础车辆 is 1997 凯迪拉克卡特拉
  • RSA 中的任何真实世界示例以及 Oracle 中的 ORDS

    我正在使用 ORDS 我将使用 RAS 真正的应用程序安全性 或 VPD 来控制授权 我阅读了 oracle RAS 文档 但没有明白如何将它与 ORDS 没有 apex 一起使用 对于使用 VPD 来说也是如此 我在中创建了用户ords
  • 当 SocketChannel 关闭时如何得到通知?

    我希望在以下情况时收到通知SocketChannel http docs oracle com javase 7 docs api java nio channels SocketChannel html有它的close http docs
  • D3:获取选定元素的边界框

    我的 svg 中有多个元素 我想放大其中之一 我想做同样的事这个例子 http bl ocks org mbostock 9656675但具有非地理路径 就像是 d3 select myElement bounds that I can u
  • pandas 将 NaN 替换为 None 表现出违反直觉的行为

    给定一个系列 s pd Series 1 1 1 2 np nan s 0 1 1 1 1 2 2 NaN dtype float64 如果需要将 NaN 转换为 None 例如 使用镶木地板 那么我希望 0 1 1 1 1 2 2 Non
  • 针对非 IE 浏览器和特定 IE 版本的有效条件注释

    如何使用条件评论来定位 仅限 Internet Explorer 某些 IE 版本 某些 IE 版本和所有其他浏览器 没有IE 只有其他浏览器 以一种验证的方式 validator w3 org http www validator w3
  • Pygame:帧重影?

    我正在使用 pygame 在 python 中开发动画环境 用户绘制每一帧 然后使用 ffmpeg 将动画保存为 avi 电影 我想实现一个功能 但不知道如何 帧重影 就像在绘制当前帧时显示前一帧一样 我尝试创建一个名为ghost当按下下一
  • NSTextView 选择特定行

    我使用的是 Xcode 10 Objective C macOS 而不是 iOS 是否可以以编程方式选择一行NSTextView如果给出行号 无需更改内容的任何属性 只需像用户通过三次单击一样选择它即可 我知道如何按范围获取选定的文本 但这
  • C++ 内存模型和 char 数组上的竞争条件

    基本上我很难理解这一点 来自 Bjarne FAQ 然而 大多数现代处理器无法读取或写入单个 字符 它必须读取或写入整个单词 因此分配给 c 实际上是 读取包含c的单词 替换c部分 然后写 单词又回来了 由于对 b 的赋值类似 因此有 两个
  • 有什么办法可以阻止用户在本地保存文档吗?

    如果用户在我的网站上查看文档 例如代表某些机密信息的 pdf 文件 我是否可以阻止他们在本地保存文档 一句话 不 一旦您将数据发送到他们的浏览器 他们就可以用它做他们想做的事情 您可以使用一些 Flash 组件或 Java Applet 来
  • 如何使用jdbc从db2读取xml列

    假设我在 DB2 中有一个名为 ABC 的表 其中有 2 列 id number content xml String q select from ABC where id 121 Connection conn getConnection
  • 在Android的不同模块中使用不同版本的SO文件(如libc++_shared.so)

    我在应用程序的两个单独的模块中使用两个不同的自定义 aar 库 库附带了许多 so 文件 例如 libc shared so 等 在包含这两个文件后 我收到如下错误 2 files found with path lib arm64 v8a
  • 从另一个 PHP 脚本执行 PHP 脚本

    如何使用 php 手动触发服务器来运行 php 脚本 基本上我有一个相当大的 cronjob 文件 每 2 小时运行一次 但我希望能够自己手动触发该文件 而不必等待它加载 我希望它在服务器端完成 编辑 我想从 php 文件执行该文件 而不是
  • for..of 和迭代器状态

    考虑这个Python代码 it iter 1 2 3 4 5 for x in it print x if x 3 break print for x in it print x 它打印1 2 3 4 5 因为迭代器it记住它在循环中的状态
  • 如何将 JDBC 连接到 tns oracle

    我可以使用 tns 文件从 plsql 连接到数据库 现在我想使用 JDBC 从 Java 连接到数据库 我尝试过的 我搜索谷歌 发现我必须使用这个连接字符串 jdbc oracle thin host port tnsfile 我的计算机