JAVA使用JDBC连接ORACLE数据库基础版

【Java】JDBC操作Oracle数据库 1、Statement 用于执行静态 SQL 语句并返回它所生成结果的对象。 statement每次执行sql语句,相关数据库都要执行sql语句的编译 import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class StatementTest { public static void mai... 阅读详情

title: JAVA使用JDBC连接ORACLE数据库基础版
date: 2023-08-17
categories:

  • 数据库
    tags:
  • 数据库
  • 总结
  • Oracle
  • jdbc

JAVA使用JDBC连接ORACLE数据库基础版

JAVA使用JDBC连接ORACLE数据库基础版

JAVA使用JDBC连接ORACLE数据库改进优化版

构建工厂优化JAVA使用JDBC连接ORACLE数据库

数据库jdbc连接一共分一下几步

maven的oracle依赖

<dependency>
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.4</version>
</dependency>

1、加载驱动

Class.forName(driver);

2、数据库链接

//连接数据库的地址,用户名和密码
String url = "jdbc:oracle:thin:@localhost:1521:orcl1";
String name = "hr";
String pass = "orcl";
conn = DriverManager.getConnection(url,name,pass);

3、(statement定义语句对象,sql语句)

Statement st = con.createStatement();
//定义一个sql语句
String sql = "select department_id,department_name,location_id from departments";

4、执行sql语句

ResultSet rs = st.executeQuery(sql);

5、调用结果集的方法实现遍历

while(rs.next()){
	//获得结果集的数据,下标从1开始,1表示一行第一列,2表示第二列

    int id = rs.getInt(1);
    String name = rs.getString(2);
    String pass = rs.getString(3);
    System.out.println("部门号是:"+id+"	部门名是:"+name+"	部门所在地是:"+pass);

}

6、关闭资源

rs.close();
ps.close();
conn.close();

案例

Department属性类

package vo;

public class Department {
	private int departmentId;
	private String departmentName;
	private int manager_id;
	private int location_id;
	
	public int getDepartmentId() {
		return departmentId;
	}
	public void setDepartmentId(int departmentId) {
		this.departmentId = departmentId;
	}
	public String getDepartmentName() {
		return departmentName;
	}
	public void setDepartmentName(String departmentName) {
		this.departmentName = departmentName;
	}
	public int getManager_id() {
		return manager_id;
	}
	public void setManager_id(int manager_id) {
		this.manager_id = manager_id;
	}
	public int getLocation_id() {
		return location_id;
	}
	public void setLocation_id(int location_id) {
		this.location_id = location_id;
	}
	public String toString(){
		return "id:"+departmentId+"  name:"+departmentName;
	}
}

DepartmentsDao定义jdbc并测试

package dao;

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

import vo.Department;

public class DepartmentsDao {

	//实现连接数据库查询所有的部门信息
	public void getAllDepartments(){		
		try {
			//连接数据库的地址,用户名和密码
			String url = "jdbc:oracle:thin:@localhost:1521:orcl1";
			String name = "hr";
			String pass = "orcl";
			//1,加载数据库驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//2,获得连接
			Connection con = DriverManager.getConnection(url, name, pass);
			//3定义语句对象
			Statement st = con.createStatement();
			//定义一个sql语句
			String sql = "select department_id,department_name,location_id from departments";
			//4,执行sql语句,查询
			ResultSet rs = st.executeQuery(sql);
			//调用结果集的next方法实现遍历
			while(rs.next()){
				//获得结果集的数据
				int id = rs.getInt("department_id");
				String dname = rs.getString("department_name");
				int lid = rs.getInt("location_id");
				System.out.println(id+" "+dname+" "+lid);
			}
			//5,关闭资源
			rs.close();
			st.close();
			con.close();
		}
		catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	//根据id和名字查询信息
	public Department getDepartmentById(int id,String departmentName){
		Connection con = null;
		Statement st = null;
		ResultSet rs = null;
		try {
			//连接数据库的地址,用户名和密码
			String url = "jdbc:oracle:thin:@localhost:1521:orcl1";
			String name = "hr";
			String pass = "orcl";
			//1,加载数据库驱动
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//2,获得连接
			 con = DriverManager.getConnection(url, name, pass);
			//3定义语句对象
			st = con.createStatement();
			//定义一个sql语句
			String sql = "select * from departments where department_id="+id+" and department_name='"+departmentName+"'";
			//4,执行sql语句,查询
			rs = st.executeQuery(sql);
			//调用结果集的next方法实现遍历
			if(rs.next()){
				Department d = new Department();
				d.setDepartmentId(rs.getInt(1));
				d.setDepartmentName(rs.getString(2));
				d.setManager_id(rs.getInt(3));
				d.setLocation_id(rs.getInt(4));
				return d;
			}
			
		}
		catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			try {
				rs.close();
				st.close();
				con.close();
			}
			catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return null;
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		DepartmentsDao dao = new DepartmentsDao();
		//dao.getAllDepartments();
		Department d = dao.getDepartmentById(60, "IT");
		System.out.println(d);
	}

}

Java JDBC连接Oracle详解 一)JDBC简介 JDBC是一种数据库连接,全称Java Database Connectivity,简称JDBC。 作用:主要是用来规范客户端如何访问数据库的应用程序接口,提供了增删改查等API接口。 API概述: DriverManager:负责加载各种不同的驱动,并返回对应的数据库连接。 Connection:数据库连接,负责和数据库通讯。 PreparedStatemen... 阅读详情

相关推荐

java通过jdbc连接Oracle通过数据库连接池实现增删改查

java通过jdbc连接Oracle通过数据库连接池实现增删改查

sunsiyuan521的博客 7669

Java编程 JDBC连接Oracle数据库

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问oracle数据库又专门写一个程序。使开发人员能够更便捷的编写数据库应用程序。

路虽远,行将至。事虽难,做必达。 1万+

【Java与Oracle数据库连接实战指南】——从零掌握JDBC编程技巧

在企业级开发中,Oracle 作为全球领先的商业关系型数据库系统,广泛应用于大型金融、电信、政府及互联网项目中。Java 作为后端开发语言的重要一员,与 Oracle 的集成使用非常普遍。本文将从 Java 开发者的角度出发,带你一步步完成 Java 与 Oracle 数据库的连接全过程,并通过实际代码演示如何实现数据增删改查、事务控制、连接池优化等高级功能。

资深全栈架构师,乐于在 优快云 分享技术见解,与大家携手共进,共攀技术巅峰! 1644

jdbc连接oracle的多种方式

jdbc使用TNSName连接时,java启动程序JVM参数新增(oracle.net.tns_admin指的是tnsnames.ora文件目录)tnsnames.ora文件配置TSNName连接信息。

邓霖涛的博客 9077

JAVA连接ORACLE数据库(JDBC)(附源码)

Jdbc是Java连接数据库的一种技术。

wen_wu_shuang_quan的专栏 1330

Java连接Oracle数据库编程

在Java中,我们可以使用Java Database Connectivity(JDBC)来连接和操作Oracle数据库。在编写代码之前,我们需要引入Java提供的JDBC驱动程序,以便能够与Oracle数据库进行通信。这里只是简单介绍了Java连接Oracle数据库的基本步骤和一个查询示例,你可以根据自己的需求进一步扩展和修改代码。现在我们已经可以连接到Oracle数据库了,接下来我们可以执行一些基本的数据库操作,比如查询数据。如果连接成功,将会打印一条成功的消息,否则将打印连接失败的错误消息。

DevPhantom的博客 596

JAVA使用JDBC连接ORACLE数据库

JAVA使用JDBC连接ORACLE数据库前言一、准备工作二、使用步骤1.注册驱动2.编辑连接信息和获取连接对象3.定义SQL和获取执行SQL对象4.执行SQL5.关闭资源总结 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、准备工作二、使用步骤1.注册驱动2.编辑连接信息和获取连接对象3.定义SQL和获取执行SQL对象4.执行SQL5.关闭资源总结 前言 本文使用的是Oracle 11g版本,Java版本jdk1.8,JDBC 驱动包 ojdbc6.jar 连接Ora

qq_42997244的博客 7101

Java案例:利用JDBC连接Oracle数据库

Java案例:利用JDBC连接Oracle数据库 一、准备工作 1、启动SQL Developer,设置java.exe路径 2、在Oracle SQL Developer里,新建数据库连接 连接名:system(任意) 用户名:sys 口令:Hw903213 角色:SYSDBA SID:orcl 3、在system连接里创建新用户 4、利用新用户创建数据库连接...

howard2005的专栏 757

java连接oracle数据库jar包_jdbc连接oracle数据库jar包

java学习:jdbc连接示例java中最常用的数据库连接技术就是JDBC。目前几乎所有的主流数据库都提供了相应的jdbc驱动,可以简单理解为.net中的数据库客户端dll,.net中如果对于netframework默认不支持的数据库(比如sqllite,mysql之类),就必须要下载专门的数据库客户端dll文件,在vs.n...文章杨俊明2012-11-03820浏览量weblogic配置sql...

weixin_33258874的博客 3846

禅道二次开发(一):从零搭建本地开发与调试环境

本文详细介绍了禅道二次开发的第一步:从零搭建本地开发与调试环境。通过部署官方一键安装包、配置端口与防火墙、连接数据库、设置Samba文件共享,并最终在VSCode中配置PHP智能感知与Xdebug调试,手把手教你建立一个隔离、高效的专属开发工作台,为后续的代码修改与功能扩展奠定坚实基础。

weixin_29003437的博客 322

主流双目相机技术参数横向评测:从ZED到INDEMIND的深度解析

本文对主流双目相机进行了深度横向评测,涵盖ZED、Bumblebee、Leap Motion、DUO 3D及INDEMIND等国内外产品。文章详细解析了分辨率、帧率、视场角、基线等核心参数,并结合科研、机器人导航、无人机、工业检测等典型应用场景,提供了实战选型指南,帮助读者根据具体需求挑选最合适的双目视觉解决方案。

weixin_29212867的博客 640

JDBC编程步骤,JAVA连接数据库Oracle

JDBC编程步骤,JAVA连接数据库Oracle

qq_53349319的博客 2385

freeswitch之呼叫中心acd模块开发

一、定义: ACD(Automatic Call Distributor) 自动呼叫分配,也叫智能选择座席。它是呼叫中心整个前台接入系统逻辑功能的描述:把接入的呼叫转接到正确的座席员桌前。ACD是现代呼叫中心有别于一般的热线电话系统和自动应答系统的重要标志,其性能的优劣直接影响到呼叫中心的效率和顾客的满意度。 二、ACD包含的功能点: 1 、程控交换功能 ACD在本质上也是交换机的一种类型,必须具有程控交换最基本的话务交换功能。 2 、排队功能 ACD必须具有话务排队的功能,所谓排队是指在内线都

飞鸟的博客 1870

二十三、java连接oracle数据库操作:jdbc

1、jdbc 1) 含义:JDBC是java语言连接数据库,Java Date Base Connectivity2) jdbc的本质:在编程时java程序会去连接不同的数据库,而每个数据库的底层的实现原理是不同的,所以我们所编写的程序应该是面向一套规范去编写的,这套java语言连接数据库的规范就是jdbcA、sun公司:jdbc接口是一套由Sun公司制定的一套Class文件规范,...

aan3237的博客 184

超详细YOLOv8目标检测全程概述:环境、训练、验证与预测详解

这篇博文提供了一个关于使用YOLOv8进行目标检测的全面指南,包括环境搭建、模型训练、验证和预测的详细步骤,以及如何解释训练过程中生成的各种图表和数据。整篇文章为读者提供了一个关于如何利用YOLOv8进行目标检测的实践指南,从环境搭建到模型部署,再到结果分析,每一部分都给出了详细的步骤和解释。此外,还有对于模型输出的解释,帮助读者更好地理解和使用YOLOv8模型。

CDBmax的博客 10万+

超详细网安学习路线(Day1-Day2)

渗透测试(Penetration Testing),就是一种通过模拟恶意攻击者的技术与方法,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方法。简单来说,就是合法去入侵别人的系统,来帮助其找出漏洞,增强防护能力。

aobulaien001的博客 3389

Java通过JDBC连接Oracle数据库

Java通过JDBC连接Oracle数据库 1. 下载Oracle连接驱动 https://mvnrepository.com/artifact/com.oracle/ojdbc6/12.1.0.1-atlassian-hosted 2.Java代码实现连接 String username = "用户名"; String password = "密码"; ...

这货,不靠谱 3750

神经网络学习笔记-波尔兹曼(Boltzmann)机

Boltzmann机是一种反馈随机神经网络 两种输出状态,单极性0或1。输出状态的取值根据概率统计法则决定,这种概率统计法则类似Boltzmann分布,部分反馈 它在神经元状态变化中引入了统计概率,网络的平衡状态服从Boltzmann分布,网络运行机制基于模拟退火算法。 离散Hopfield神经网络+模拟退火+隐单元=Boltzman机 DHNN全反馈,转移函数:符号函数 BM机网络拓扑...

求易学堂的博客 2612

怎样将IDE的eclipse编写的java appllication通过JDBC(java database connectivity)连接上Oracle数据库 具体步骤

public class Test { public static void main(String[] args) { /** * JDBC使用过程 * 1.导入jdbc驱动包 jar包 oracle sqlsever mysql * 2.加载jdbc驱动 * 3.构建连接 链接数据库 *  * @param args */ Connection  con=nul...

Capricorn_WilliamSun的博客 366

[网络安全自学篇] 六十八.WannaCry勒索病毒复现及分析(二)MS17-010利用及病毒解析

这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步。前文分享了通过Python利用永恒之蓝漏洞加载WannaCry勒索病毒,并实现对Win7文件加密的过程,但过程较为复杂,为什么不直接利用永恒之蓝呢?所以,这篇文章将直接分享MSF利用MS17-010漏洞进行反弹Shell,再上传勒索病毒进行实验复现,并详细讲解WannaCry勒索病毒的原理。基础性文章,希望对您有所帮助。

杨秀璋的专栏 1万+

052、联发科Imagiq HyperEngine架构适配:天玑9000/9200的ISP多核并行调度与Tuning Toolkit调优案例

摘要: 项目组在适配联发科天玑9200的Imagiq 890 ISP架构时,遇到多摄预览功耗过高、帧率不稳等问题。通过分析多核调度机制,调整辅核QoS通道、优化AI-ISP协同模式(采用FREERUN+运动补偿),并利用Tuning Toolkit的Pipeline Viewer动态分配负载,最终降低功耗30mA、提升画质。关键经验包括:避免多核带宽冲突、合理配置动态时钟策略,以及统一校准参数版本管理。天玑9000/9200的HyperEngine架构需优先理解多核协同逻辑,再针对性调优,否则易引发场景兼容

zzfmlxs的博客 36

java jdbc oracle代码_java中JDBC连接oracle数据库的方法介绍(附代码)

本篇文章给大家带来的内容是关于java中JDBC连接oracle数据库的方法介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。一、加载oracle驱动jar包,ojdbc6.jar二、build path *.jarBuildPath中只支持加入jar文件,具体方法如下: 在eclips里在工程名上右键->build path->contigure bud ...

weixin_36410904的博客 3008

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

JAVA JDBC 连接Oracle数据库报错ORA-12505解决方案

问题描述: Navacat或PLSQL Developer连Oracle数据库不报错,可以正常查询数据,但是使用Java的JDBC连接数据库就会报错: java.sql.SQLException:Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection de

Leemeea的博客 4205

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

JDBC——Java与Oracle数据库的连接

**JDBC(Java Data Base Connectivity,Java数据库连接)**是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。 JDBC连接Oracle的代码如下(首先要导入第三方jar包): import java.sql.Connection; import java.sql.DriverManager;...

qq_40302790的博客 425

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

java连接oracle库_Java-JDBC连接Oracle 数据库

packagecom.zse.oracle;import oracle.jdbc.*;import java.sql.*;importjavax.swing.text.html.HTMLDocument.HTMLReader.PreAction;public classTest {public static voidmain(String[] args) {//载入驱动try{Class.forN...

weixin_42360967的博客 144

java通过jdbc连接oracle数据库,java程序通过jdbc连接oracle数据库方法

1. 赋予scott用户连接权限:Grant connect to scott; 2. 在Myeclipse中新建java项目导入jdbc包(classes12.jar): 右键项目 bulid path -〉add external archives 选择classes12.jar 3. 新建java文件, lianxi01.java import java.sql.Connection; im...

weixin_35922444的博客 286
上一篇: java读取word转换HTML格式,保留内容的样式和格式
下一篇: Idea中SpringBoot项目重启代码不生效,没有重新编译
码趣资源网
博客等级 码龄4年 268粉丝 518原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值