myeclipse连接最新的oracle12c的方法
2013-11-28 10:31
274 查看
我是oracle新手,昨天装好了oracle,用sql plus测试了下,一切OK,打算就用oracle作为我java开发的常用数据库。今天用myeclipse连接数据库时出现了很多问题,首先是classnotfoundexception,就到网上找了ojdbc14.jar,结果给我来了个ORA-28040: No matching authentication protocol,之后试了网上说的class12.jar,class14.jar都未能解决问题,后面再一片文章里看到原因可能是驱动版本不对,可以在如图所示的MANIFAST.MF文件中查看,因此,加载驱动时就把class12,class14,还有ojdbc14.jar都删了,只留下ojdbc6.jar,结果还真跑成功了,之后想起我之前曾经在E:\Databases\oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN目录下sqlnet.ora中添加了SQLNET.ALLOWED_LOGON_VERSION,索性先删了这一属性试试,然后重新启动了oracle数据库,结果没问题,于是乎结果就是ojdbc6.jar文件,这个文件在如图所示的目录中显示的version就是12,其他的都是11或者10,9。至于这个ojdbc就是在E:\Databases\oracle\product\12.1.0\dbhome_1\jdbc\lib目下,而且只能添加这一个driver,如果与class.jar同时添加了话,还会出问题,至此,问题解决。
现附上我在网上搜到的一段测试代码:
现附上我在网上搜到的一段测试代码:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; public class Execute { /** * 一个非常标准的连接Oracle数据库的示例代码 */ public static void main(String [] args) { Connection con = null;// 创建一个数据库连接 PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement ResultSet result = null;// 创建一个结果集对象 try { Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序 // DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); System.out.println("开始尝试连接数据库!"); String url = "jdbc:oracle:" + "thin:@localhost:1521:oraclekd";// 127.0.0.1是本机地址 String user = "system";// 用户名,系统默认的账户名 String password = "Learning";// 你安装时选设置的密码 con = DriverManager.getConnection(url, user, password);// 获取连接 System.out.println("连接成功!"); String sql = "select * from users where name=?";// 预编译语句,“?”代表参数 pre = con.prepareStatement(sql);// 实例化预编译语句 pre.setString(1, "刘显安");// 设置参数,前面的1表示参数的索引,而不是表中列名的索引 result = pre.executeQuery();// 执行查询,注意括号中不需要再加参数 while (result.next()) // 当结果集不为空时 System.out.println("学号:" + result.getInt("id") + "姓名:" + result.getString("name")); } catch (Exception e) { e.printStackTrace(); } finally { try { // 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源 // 注意关闭的顺序,最后使用的最先关闭 if (result != null) result.close(); if (pre != null) pre.close(); if (con != null) con.close(); System.out.println("数据库连接已关闭!"); } catch (Exception e) { e.printStackTrace(); } } } }
相关文章推荐
- MyEclipse连接MySQL的方法
- 最新myeclipse 2017 ci 6 破解工具下载破解补丁下载及破解使用方法和如何查看已激活
- 最新MyEclipse 7.5 插件安装方法
- MyEclipse连接Mysql报错Illegal connection port value '3306>]解决方法
- 在myeclipse(java)中实现与Oracle数据库的连接方法一
- Myeclipse 使用最新Spring....或其他框架方法
- 关于连接myEclipse连接mysql时出现 Table 'performance_schema.session_variables' doesn't exist错误解决方法
- php连接java最新能用的方法,javabridge的配置
- myeclipse下载:下载最新的myeclipse的方法:myeclipse最新版的下载地址自己改
- MyEclipse5.5下连接Sql Server 2008的方法
- dede 最新的替换数据库里面的.连接方法
- Myeclipse8.5 最新注册码以使用方法(可以用到2015年!!!)
- MyEclipse连接MySQL的方法
- Oracle12c_RMAN连接target报ora-01017的解决方法
- MyEclipse连接MySQL的方法
- MyEclipse连接MySQL的方法
- MyEclipse连接MySQL的方法
- MyEclipse连接MySQL的方法
- 最新MyEclipse 7.5 插件安装方法
- 嵌入式设备 以及手机 最新判断网络是否连接成功的最好方法,你值得知道