Java项目中使用Oracle数据库(Eclipse)


前言

这学期选了Oracle数据库这门课,于是自己下载了Oracle11gR2版本的数据库。在这之前我一直用的是MySQL。虽然两者教程差不多,但我还是想留个总结。

参考资料


操作步骤

  1. 新建一个Java项目;

  2. 新建一个文件夹;

  3. 找到"ojdbc6.jar"文件并复制,该文件路径:“D:\Oracle11gDatabase\BaseDir\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6_g.jar”,其中"D:\Oracle11gDatabase"是我的安装Oracle的位置,依自己情况去找。备注:不是官网下载的那个,是安装的路径。

    注:ojdbc5.jar是支持jdk1.5的,ojdbc6.jar是支持jdk1.6的。我的jdk是1.8版本的。看了那个官网jdbc的文档,我只发现了这个(英语有点渣,可能我看掉了)。但是能够连接数据库,这个以后再看吧。

  4. 将刚才的文件粘贴到新建的文件夹下;

  5. 添加路径,右键点击文件;

  6. 生成一个文件和jar文件



以上属于导入包部分,完成上述操作即可写项目。
下面两个步骤是验证是否成功。



  1. 在src下新建一个类,运行下面这段代码;
注意:	1、类名一样,,,基础问题
2、第10行的"HR"换成"scott"
3、"hr"换成你自己的scott用户的密码,默认密码是"tiger"
4、"<host>"换成"localhost"
5、"<port>"换成"1521",不知道其他的行不行
6、"<service>"换成"orcl",这个是安装的时候设置的,依情况而定。
import java.sql.*;
import oracle.jdbc.*;
import oracle.jdbc.pool.OracleDataSource; class JDBCVersion
{
public static void main (String args[]) throws SQLException
{
OracleDataSource ods = new OracleDataSource();
ods.setURL("jdbc:oracle:thin:HR/hr@<host>:<port>:<service>");
Connection conn = ods.getConnection(); // Create Oracle DatabaseMetaData object
DatabaseMetaData meta = conn.getMetaData(); // gets driver info:
System.out.println("JDBC driver version is " + meta.getDriverVersion());
}
}

运行之后控制台输出版本号信息

去dos窗口进入数据库,会发现版本号一致

8、运行下面代码

注意:	1、第一行写上你的包名,不然无法编译
2、代码下面有截图
/*
* This sample can be used to check the JDBC installation.
* Just run it and provide the connect information. It will select
* "Hello World" from the database.
*/ // You need to import the java.sql and JDBC packages to use JDBC
import java.sql.*;
import oracle.jdbc.*;
import oracle.jdbc.pool.OracleDataSource; // We import java.io to be able to read from the command line
import java.io.*; class JdbcCheckup
{
public static void main(String args[]) throws SQLException, IOException
{ // Prompt the user for connect information
System.out.println("Please enter information to test connection to
the database");
String user;
String password;
String database; user = readEntry("user: ");
int slash_index = user.indexOf('/');
if (slash_index != -1)
{
password = user.substring(slash_index + 1);
user = user.substring(0, slash_index);
}
else
password = readEntry("password: ");
database = readEntry("database(a TNSNAME entry): "); System.out.print("Connecting to the database...");
System.out.flush();
System.out.println("Connecting...");
// Open an OracleDataSource and get a connection
OracleDataSource ods = new OracleDataSource();
ods.setURL("jdbc:oracle:oci:@" + database);
ods.setUser(user);
ods.setPassword(password);
Connection conn = ods.getConnection();
System.out.println("connected."); // Create a statement
Statement stmt = conn.createStatement(); // Do the SQL "Hello World" thing
ResultSet rset = stmt.executeQuery("select 'Hello World' from dual"); while (rset.next())
System.out.println(rset.getString(1));
// close the result set, the statement and the connection
rset.close();
stmt.close();
conn.close();
System.out.println("Your JDBC installation is correct.");
} // Utility function to read a line from standard input
static String readEntry(String prompt)
{
try
{
StringBuffer buffer = new StringBuffer();
System.out.print(prompt);
System.out.flush();
int c = System.in.read();
while (c != '\n' && c != -1)
{
buffer.append((char)c);
c = System.in.read();
}
return buffer.toString().trim();
}
catch(IOException e)
{
return "";
}
}
}

输入用户名,密码,数据库名称

出现截图最后三行说明已成功从数据库读取数据,即连接成功。

如果有安装问题欢迎留言讨论。

小提醒:官网下载数据库非常慢,建议从网盘下载。(ps:注册账号很简单)

另外附一个Oracle数据库安装教程:腾讯视频Win7版的教程,我的是Win10,也是这么安装的,暂时没发现问题。


THE END


JDBC(Java项目使用Oracle数据库)的更多相关文章

  1. Java 测试连接Oracle数据库是否成功,ojdbc7.jar包下载

    需要用到的jar 包: 链接:https://pan.baidu.com/s/1I1pC2f81IvbphZ6tWpVFOg 密码:uq0u 测试结果: package pkg; import jav ...

  2. FineReport - 项目连接Oracle数据库

    FineReport项目连接Oracle数据库 1:打开模板设计器,单击[服务器],选择[定义数据连接]: 2:单击[+],选择[JDBC]; 3:数据库选择[Oracle],驱动器选择[oracle ...

  3. Java项目专栏之数据库建表

    Java项目专栏之数据库建表 数据库建表前期准备 1. 安装mysql:数据库语言,语法和sql server差不太多,如果习惯于sql server可以不用mysql. 2. 安装navicat:可 ...

  4. jdbc连接rac的oracle数据库

    jdbc连接rac的oracle数据库需要配置所有racIP,如下: DB1 =(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(H ...

  5. JDBC Java 程序从 MySQL 数据库中读取数据,并备份到 xml 文档中

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 程序从 MySQL 数据库中读取数据,并 ...

  6. 【Java EE 学习 29 下】【JDBC编程中操作Oracle数据库】【调用存储过程的方法】

    疑问:怎样判断存储过程执行之后返回值是否为空. 一.连接oracle数据库 1.需要的jar包:在安装的oracle中就有,所以不需要到官网下载,我的oracle11g下:D:\app\kdyzm\p ...

  7. JAVA项目将 Oracle 转 MySQL 数据库转换(Hibernate 持久层)

    项目开发时用的是Oracle数据库,但为了更好的做分布式,做集群,我们要将数据库转成 MySQL! 在数据库迁移中首先要做的事是将 Oracle 的表结构以及数据 克隆到 MySQL 数据库. 这点不 ...

  8. 实例: Java代码操作oracle数据库(JDBC+sevrlet+jsp+html)

    1, 注册页面 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.or ...

  9. MyEclipse用Java语言连接Oracle数据库

    在MyEclipse下Java连接Oracle数据库 第一步:新建Java项目. 填写项目名,其它设置默认,点击完成即可. 新建java类,填写包名和类名,勾选public static void m ...

随机推荐

  1. ZR#997

    ZR#997 解法: 找找规律就出来了,全场最简单的一道题. CODE: #include<iostream> #include<cstdio> #include<cst ...

  2. <JavaScript>尺寸类样式的获取

    尺寸类样式的获取 offsetHeight HTMLElement.offsetHeight 是一个只读属性,它返回该元素的像素高度,高度包含该元素的垂直内边距和边框,且是一个整数.(content+ ...

  3. PHP无限级树形结构算法(递归和引用)

    测试数组 $array = [ [, , 'name' => '这是主类'], [, , 'name' => '这是主类'], [, , 'name' => '父级为1子类'], [ ...

  4. SQL-W3School-函数:SQL NOW() 函数

    ylbtech-SQL-W3School-函数:SQL NOW() 函数 1.返回顶部 1. NOW() 函数 NOW 函数返回当前的日期和时间. 提示:如果您在使用 Sql Server 数据库,请 ...

  5. android APP国际化一键切换实现

    首先看目录: 上代码: package com.loaderman.language; import android.content.res.Configuration; import android ...

  6. ISO/IEC 9899:2011 条款5——5.2.3 信号与中断

    5.2.3 信号与中断 1.函数应该被设计为它们可以被一个信号在任一时刻打断,或是被一个信号处理所调用,或是两者都发生,对于初期不发生改变,但仍然处于活动状态,调用的控制流(在中断之后),函数返回值, ...

  7. 《最长的一帧》 osg3.4 osgViewer::View::init() osgViewer::Viewer::getContexts()

    开始:osgViewer/ViewerBase.cpp   389行,startThreading()函数,启动线程   void ViewerBase::startThreading() { if ...

  8. React之简介

    官网链接React 用于构建用户界面的 JavaScript 库 特色 声明式: React 使创建交互式 UI 变得轻而易举.为你应用的每一个状态设计简洁的视图,当数据改变时 React 能有效地更 ...

  9. LeetCode_69. Sqrt(x)

    69. Sqrt(x) Easy Implement int sqrt(int x). Compute and return the square root of x, where x is guar ...

  10. ElasticSearch文档删除字段

    https://www.cnblogs.com/ljhdo/archive/2017/03/24/4885796.html