首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebird、Jaybird和Hibernate的依赖项

Firebird、Jaybird和Hibernate的依赖项
EN

Stack Overflow用户
提问于 2012-03-10 21:38:47
回答 2查看 3.3K关注 0票数 2

我很想看看Firebird与Hibernate的性能,但我无法让它正常运行。我在pom.xml中添加了:

代码语言:javascript
复制
<dependency>
    <groupId>net.sf.squirrel-sql.thirdparty-non-maven</groupId>
    <artifactId>jaybird</artifactId>
    <version>2.1.6</version>
</dependency>

当我运行它的时候,我总是得到:

代码语言:javascript
复制
java.lang.ClassNotFoundException: javax.resource.ResourceException

我尝试添加所有类型的javax、javaee和其他依赖项(通过Maven),但我无法运行它。使用PostgreSQL,我没有任何问题,一切都像它应该的那样工作。

运行在Apache Tomcat 7.0.26上。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-10 23:06:25

“问题”是Jaybird在内部依赖于资源适配器的JavaEE概念,因此需要来自JavaEE的一些类(特别是包含javax.resource包(和子包)的类)。您需要包含一个JavaEE jar,或者使用

代码语言:javascript
复制
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird-jdk18</artifactId>
<version>3.0.5</version>

这应该会自动下载所需的依赖项。

如果所有方法都失败了,请从http://www.firebirdsql.org/en/jdbc-driver/下载发行版,并使用lib文件夹中的connector-api-1.5.jar。

顺便说一句,我希望在Jaybird 5中消除这种依赖。

免责声明:我是Jaybird的开发者之一

票数 3
EN

Stack Overflow用户

发布于 2012-09-06 19:09:55

我们会弄清楚这一点:

  1. 你可以使用hibernate自己的连接池
  2. 你可以使用commons-dbcp连接池
  3. 你可以使用新的tomcat7的jdbc连接池。

假设您想要使用3,如果您使用firebird,则必须执行的步骤很少

http://sourceforge.net/projects/firebird/files/firebird-jca-jdbc-driver/2.2.0-release-jdk16/Jaybird-2.2.0JDK_1.6.zip/download

  • Extract

  • 下载jdk,将jaybird*.jar和-api*.jar拷贝到/usr/
  1. /tomcat7/lib。在连接器-api中,缺少类ResourceException.

警告:不要复制巨大的j2eeapi.jar,因为它们包含了从tomcat到servlet-api.jar的违规类

  1. 如果你是从tar安装的tomcat7,那就是全部。如果你使用ubuntu apt来安装tomcat的包,那么从tomcat的下载端下载原始的tar文件,解压它并将tomcat-jdbc复制到你的tomcat的lib文件夹中(对于ubuntu,就是/usr/share/tomcat7/lib)

就这样。将配置放到context.xml中,就这样了

代码语言:javascript
复制
<Resource
    name="jdbc/SOME_NAME"
    auth="Container"
    type="javax.sql.DataSource"
    factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
    testWhileIdle="true"
    testOnBorrow="true"
    testOnReturn="false"
    validationQuery="SELECT 'NOW' from RDB$DATABASE"
    validationInterval="30000"
    timeBetweenEvictionRunsMillis="30000"
    maxActive="100"
    minIdle="10"
    maxWait="10000"
    initialSize="10"
    removeAbandonedTimeout="60"
    removeAbandoned="true"
    logAbandoned="true"
    minEvictableIdleTimeMillis="30000"
    jmxEnabled="true"
    jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"
    username="sysdba"
    password="masterke"
    driverClassName="org.firebirdsql.jdbc.FBDriver"
    url="jdbc:firebirdsql:IP:ALIAS?lc_ctype=UTF-8"
/>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9646883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档