`
iswift
  • 浏览: 190140 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

No suitable driver found for jdbc:oracle:thin:@localhost:1521:orcl

阅读更多

背景:最近闲来没事,倒腾起了Maven来练练手。发现他是个好东西,但也很折腾人。。

 

想着要拿什么实验着,想着先从简单的入手,然后就选了Hibernate。。下载Hibernate包根据官方开发手册敲起来了。

 

这期间遇到两大问题:

 

1、Maven里添加jdbc驱动问题?

 

     因为下载Oracle驱动时要同意Oracle的许可认证,所以Apache的Repository里并没有集成,然后只能自己搜解决方案,大部分实现都是先将Oracle驱动下载到本地,然后在通过Maven命令安装到Maven本地仓库。

 

①、 Oracle JDBC驱动下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html   下载前必须点同意许可的单选按钮

 

②、安装驱动到Maven本地仓库,需要用到Maven插件install。先来看看install插件的必需参数

 

file:就是你要安装到本地Maven仓库的文件

repositoryLayout:这个有默认值,不用管

 

 

Required Parameters

Name Type Since Description
file File - The file to be installed in the local repository.
repositoryLayout String 2.2 The type of remote repository layout to install to. Try legacy for a Maven 1.x-style repository layout.
Default value isdefault.

 

 

首先,下载Oracle jdbc 驱动到本地,然后cmd 进入你下载的jar包的位置。如果是win7直接在jar包目录,按住shift+鼠标右键,点击在此处打开命令窗口就行了,然后敲入Maven命令如下:

 

我的jar包放桌面了,我因为之前装了,现在换个名字

 

C:\Users\swift\Desktop>

 

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc15 -Dversion=10.2.0.3.0 -Dpackaging=ja

r -Dfile=ojdbc15.jar

 

 

mvn:maven 命令,要安装Maven到环境变量里

install:install-file : 这个就是执行install插件的install-file目标

-D :就是为install-file传递参数

-DgroupId:为install-file目标传递groupId参数,设置你要安装的坐标groupId(这里不详细介绍,自行查文档)

-DartifactId:为install-file目标传递 artifactId 参数

-Dversion:设置版本,我这用的是Oracle的版本

 

-Dpackaging:安装类型(jar),还可以是其他类型如:war

-Dfile:你要安装的文件名

 

敲完按回车 看到 BUILD SUCCESS 字样 说明安装成功。在项目中使用的时候可以使用如下依赖

 

<dependency>
	<groupId>com.oracle</groupId>
	<artifactId>ojdbc15</artifactId>
	<version>10.2.0.3.0</version>
</dependency>
 

然后就OK了。。。。

 

 

2、就是本文主题No suitable driver found for jdbc:oracle:thin:@localhost:1521:orcl 这个异常

 

话说这个异常折腾了我两天,我开始一看总以为是我这个驱动包的问题。或者我配置的问题。。。百思不得其解

 

但我都是按官方开发手册敲的应该没问题呀。。。郁闷了一天。。。。上班时突然想起来是不是版本问题。觉得要回来试一

 

试,异常信息:

 

java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@localhost:1521:orcl
	at java.sql.DriverManager.getConnection(DriverManager.java:602)
	at java.sql.DriverManager.getConnection(DriverManager.java:154)
	at org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl.getConnection(DriverManagerConnectionProviderImpl.java:192)
	at org.hibernate.tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.prepare(SuppliedConnectionProviderConnectionHelper.java:51)
	at org.hibernate.tool.hbm2ddl.DatabaseExporter.<init>(DatabaseExporter.java:52)
	at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:367)
	at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:304)
	at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:293)
	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:490)
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1741)
	at com.hua.hibernate.util.HibernateUtil.buildSessionFactory(HibernateUtil.java:16)
	at com.hua.hibernate.util.HibernateUtil.<clinit>(HibernateUtil.java:10)
	at com.hua.hibernate.util.StudentBO.createStudent(StudentBO.java:20)
	at com.hua.hibernate.util.StudentBO.main(StudentBO.java:16)
 

 

pom.xml:

 

<project>
       <modelVersion>4.0.0</modelVersion>
	<groupId>com.hua.hibernate</groupId>
	<artifactId>hibernate1</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<dependencies>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-core</artifactId>
			<version>4.1.2</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.10</version>
		</dependency>
		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc14</artifactId>
			<version>10.2.0.3.0</version>
		</dependency>
	</dependencies>
</project>
 

最后测试发现,真是TM的Hibernate版本问题。我换成4.1.3.final 版就行了,坑爹呀

 

替换后的Pom

 

<project>
<modelVersion>4.0.0</modelVersion>
	<groupId>com.hua.hibernate</groupId>
	<artifactId>hibernate3</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<dependencies>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-core</artifactId>
			<version>4.1.3.Final</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.10</version>
		</dependency>
		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc14</artifactId>
			<version>10.2.0.3.0</version>
		</dependency>
	</dependencies>
</project>
 

 

  特此一记。。。

 

 

 

 

分享到:
评论

相关推荐

    使用JDBC连接ORACLE的三种URL格式

    ```jdbc:oracle:thin:@localhost:1521:orcl``` 在这个例子中,`localhost`是服务器地址,`1521`是默认的Oracle监听端口,`orcl`是SID。你可以通过SQL*Plus命令行工具查询`V$PARAMETER`视图获取SID: ``` sqlplus...

    MyBatisCodeHelper-Pro 破解20190226

    Oracle10/11/g 使用jdbc:oracle:thin:@localhost:1521:orcl MySQL使用jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8 其他类同。破解仅限于解决此问题,后续不维护,不支持,不答疑。

    JDBC存图片例子 oracle

    url = "jdbc:oracle:thin:@localhost:1521:orcl"; user = "scott"; password = "tiger"; //第一步,加载驱动程序 Class.forName("oracle.jdbc.driver.OracleDriver"); //第二步,获得数据库连接...

    JDBC与Oracle

    - 数据库URL:格式为`jdbc:oracle:thin:@&lt;hostname&gt;:&lt;port&gt;:&lt;service_name&gt;`,例如`jdbc:oracle:thin:@localhost:1521/orcl`。 - 用户名:数据库的用户名。 - 密码:对应用户的密码。 **连接步骤** 1. 加载驱动:`...

    数据库连接串及数据库驱动jar大全

    "jdbc:oracle:thin:@localhost:1521:orcl" * 2. Access url示例: "jdbc:odbc:Access" * 3. SQLServer url示例: "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs" * 4. DB2 url示例: "jdbc:db2://...

    Jdbc Driver for MySql Oracle

    "jdbc:oracle:thin:@localhost:1521:ORCL", "username", "password"); ``` 总的来说,这个压缩包提供的是Java开发环境中连接MySQL和Oracle数据库所需的JDBC驱动,对于需要同时处理这两种数据库的开发者来说,这是...

    jdbc连接oracle

    String url = "jdbc:oracle:thin:@localhost:1521:orcl"; String user = "test"; String password = "test"; Connection conn = DriverManager.getConnection(url, user, password); ``` 其中,`orcl`是数据库...

    Java使用Jdbc连接Oracle执行简单查询操作示例

    String url = "jdbc:Oracle:thin:@localhost:1521:orcl"; Statement stmt = null; ResultSet res = null; Connection conn = null; CallableStatement proc = null; String sql = " select T.REC_NO, T....

    js学习.txt

    --url&gt;jdbc:log4jdbc:oracle:thin:@10.15.0.138:1521:orcl; &lt;!--url&gt;jdbc:log4jdbc:oracle:thin:@192.168.10.11:1521:orcl; &lt;url&gt;jdbc:log4jdbc:oracle:thin:@192.168.10.78:1526:yyorcl&lt;/url&gt; &lt;driver-...

    oracle数据库和mysql数据库的链接信息

    jdbc:oracle:thin:@localhost:1521:orcl ``` - `jdbc:oracle:thin:`:这部分指定了使用的是Oracle的thin驱动。 - `@localhost:1521:`:这里指定了数据库服务器的主机名(或IP地址)以及监听端口。对于本地机器,则...

    Jdbc连接oracle远程数据库中文乱码解决

    jdbc.url=jdbc:oracle:thin:@localhost:1521:ORCL jdbc.username=myuser jdbc.password=mypassword characterEncoding=UTF-8 ``` - `applicationContext-db.xml`: 这是Spring框架中的一个配置文件,用于定义...

    springboot +mybatis+oracle 配置多个数据源,配置两个数据库信息

    spring.datasource.url=jdbc:oracle:thin:@localhost:1521:ORCL spring.datasource.username=root spring.datasource.password=password spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver ...

    三大主流数据库连接

    - `jdbc:oracle:thin:[system/manager]@127.0.0.1:1521:orcl` - 在这里,“system”和“manager”分别是用户名和密码。 **3. 连接属性** - 可以在JDBC URL后添加一系列连接属性,如字符集、会话跟踪等。 - 示例...

    各种数据库使用JDBC连接的方式

    - 示例:`jdbc:oracle:thin:@localhost:1521:orcl` 2. **DB2数据库**: - JDBC驱动类:`com.ibm.db2.jdbc.app.DB2Driver` - URL格式:`jdbc:db2://&lt;主机&gt;:&lt;端口&gt;/&lt;数据库名&gt;` - 示例:`jdbc:db2://localhost:...

    JDBC连接字符串.doc

    - JDBC URL:`jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL` 6. **Sybase**: - 驱动类:`com.sybase.jdbc2.jdbc.SybDriver` - JDBC URL:`jdbc:sybase:Tds:MyDbComputerNameOrIP:2638` 7. **ODBC(通用...

    java 连接 DB 总汇合

    5. String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID 6. 7. String user="test"; 8. 9. String password="test"; 10. 11. Connection conn= DriverManager.getConnection(url,...

    oracle jdbc mysql 等数据连接所有的配置

    - `"jdbc:oracle:thin:@localhost:1521:orcl"`:表示连接到本地主机上的Oracle数据库实例,端口号为1521,服务名为`orcl`。 - `"scott"` 和 `"tiger"` 分别表示登录数据库的用户名和密码。 #### SQL Server JDBC...

    JDBC 连接 各种数据库

    - 示例中的URL:`jdbc:oracle:thin:@localhost:1521:orcl` - 其中,`orcl`是服务标识符(SID),对应Oracle数据库实例。 2. **DB2数据库**: - JDBC驱动类:`com.ibm.db2.jdbc.app.DB2Driver` - URL模板:`jdbc...

    java中jdbc连接oracle代码及jar包

    String url = "jdbc:oracle:thin:@localhost:1521:ORCL"; // 替换为你的数据库实例信息 String username = "your_username"; // 替换为你的数据库用户名 String password = "your_password"; // 替换为你的数据库...

Global site tag (gtag.js) - Google Analytics