JDBC-Oracle连接教程
前言
本文通过一个在eclipse平台中搭建的小项目,在项目中使用一条静态命令来查询oracle数据库测试用户“scott”下emp表中的几个字段,来学习jdbc连接数据库的方法。看完之后读者可以基本掌握jdbc-oracle数据库连接方法,然后举一反三,学会使用使用jdbc连接其它数据库。
0.jdbc的连接步骤
①导入数据库的jdbc资源包(jar包)
②注册驱动
③建立数据库连接(connection)
④准备sql语句
⑤获取sql语句发送器(statement)
⑥发送并执行sql语句,得到结果集(resultset)
⑦处理结果集
⑧关闭
1.导入资源包
从各数据库的安装目录中找到jdbc资源包,copy至需要的项目中。
以oracle数据库为例
①以作者本机的oracle安装地址作为参考,在“d:\oracle\product\11.2.0\dbhome_1\jdbc\lib”下找到资源包,找到其中的“ojdbc6.jar”,复制到eclipse的项目中新建的lib文件夹中去。
②右键这个文件,选择build path->add to build path
然后就可以看到新增的资源包
2.注册驱动与建立数据库连接
①先用class.forname()方式映射驱动类地址进来
②设置三个参数url、user、password
- url中“固定格式为 ‘jdbc:数据库名:连接方式:@数据库地址:端口号:实例名’ ”
- user表示访问数据库使用的用户名
- password表示用户名对应的密码
③使用drivemanagement工具获得一个connection(使用三参构造方法)对象
④设置完后可以使用使用print方法输出conn对象,能够正常输出说明连接建立成功
3.准备sql语句
准备需要执行的sql语句,这里我们用一句静态的sql指令来说明。
string sql=”select empno,ename,hiredate form emp”; //注意引号里的sql命令不需要以分号结束 |
4.创建发送器statement
发送器用来将需要执行的sql语句发送给数据库。
发送器由连接器对象调用方法创建:
statement st = conn.createstatement(); |
5.发送sql语句执行并返回执行后的结果集
结果集由发送器发送并执行sql命令返回获得。
resultset rs = st.excutequery(sql); //参数sql为我们定义的sql语句 |
6.处理结果集
结果集中的数据存储在一个二维表中,我们需要输出其中的元素来得到相应的数据。
在resultset类中,使用next方法判断结果表是否还有下一行,如果有则返回true,否则返回false。
该表的光标只能迭代一次,也就是说这个二维表只能遍历一次。
使用循环+getxxx方法获得对应的数据类型的列值。
while(rs.next()) { int empno=rs.getint(1); string ename=rs.getstring(2); date hiredate=rs.getdate(3);//除了填列号还可以填列标签如这里可以填“hiredate” system.out.println(empno+"\t"+ename+"\t"+hiredate); } |
其中date导入的是java.sql.date包
7.关闭流
关闭流需要反向关闭,不然会报异常。
rs.close(); st.close(); coon.close(); |
8.效果展示
结束分割线