Hibernate 为什么hikaricp给我找不到方法:启动时设置URL?

Hibernate 为什么hikaricp给我找不到方法:启动时设置URL?,hibernate,maven,jetty,hikaricp,Hibernate,Maven,Jetty,Hikaricp,我正在开发一个没有Maven和Spring的GWT应用程序,但我想使用HikariCP作为我的连接池,所以我从Maven的中央存储库下载了HikariCP-2.2.4.jar,并为我的postgresql驱动程序下载了pgjdbc-ng-0.3-complete.jar;最后,我将我的hibernate库从4.1更新到了4.3 我正在hibernate.cfg.xml上使用以下HikariCP属性 <property name="hibernate.connection.provider_

我正在开发一个没有Maven和Spring的GWT应用程序,但我想使用HikariCP作为我的连接池,所以我从Maven的中央存储库下载了HikariCP-2.2.4.jar,并为我的postgresql驱动程序下载了pgjdbc-ng-0.3-complete.jar;最后,我将我的hibernate库从4.1更新到了4.3

我正在hibernate.cfg.xml上使用以下HikariCP属性

<property name="hibernate.connection.provider_class">com.zaxxer.hikari.hibernate.HikariConnectionProvider</property>
<property name="hibernate.hikari.dataSourceClassName">com.impossibl.postgres.jdbc.PGDataSource</property>
<property name="hibernate.hikari.dataSource.user">user</property>
<property name="hibernate.hikari.dataSource.password">pass</property>
<property name="hibernate.hikari.maximumPoolSize">10</property>
<property name="hibernate.hikari.dataSource.url">jdbc:postgresql://localhost:5432/db</property>
com.zaxxer.hikari.hibernate.HikariConnectionProvider
com.impossibl.postgres.jdbc.PGDataSource
用户
通过
10
jdbc:postgresql://localhost:5432/db
现在,当我启动应用程序时,会出现下一个异常:

org.hibernate.hibernateeexception:java.lang.RuntimeException:java.beans.IntrospectionException:methodnotfound:setUrl 位于com.zaxxer.hikari.hibernate.HikariConnectionProvider.configure(HikariConnectionProvider.java:84) 位于org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111) 位于org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234) 位于org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206) 位于org.hibernate.engine.jdbc.internal.jdbcservicesiml.buildJdbcConnectionAccess(jdbcservicesiml.java:260) 位于org.hibernate.engine.jdbc.internal.jdbcservicesiml.configure(jdbcservicesiml.java:94) 位于org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111) 位于org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234) 位于org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206) 位于org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1887) 位于org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845) 位于org.persistencias.HibernateSessionFactory。(HibernateSessionFactory.java:43) 在org.persistencias.BaseHibernateDAO.getSession(BaseHibernateDAO.java:14)上

。 . . 原因:java.lang.RuntimeException:java.beans.IntrospectionException:未找到方法:setUrl 位于com.zaxxer.hikari.util.PropertyBeanSetter.setProperty(PropertyBeanSetter.java:129) 位于com.zaxxer.hikari.util.PropertyBeanSetter.setTargetFromProperties(PropertyBeanSetter.java:58) 位于com.zaxxer.hikari.util.PoolUtilities.initializeDataSource(PoolUtilities.java:134) 在com.zaxxer.hikari.pool.HikariPool上。(HikariPool.java:142) 在com.zaxxer.hikari.pool.HikariPool上。(HikariPool.java:109) 在com.zaxxer.hikari.HikariDataSource。(HikariDataSource.java:78) 位于com.zaxxer.hikari.hibernate.HikariConnectionProvider.configure(HikariConnectionProvider.java:80) ... 49多 原因:java.beans.IntrospectionException:未找到方法:setUrl 位于java.beans.PropertyDescriptor。(PropertyDescriptor.java:110) 位于com.zaxxer.hikari.util.PropertyBeanSetter.setProperty(PropertyBeanSetter.java:120) ... 55多

我在stackoverflow和Google上搜索过这里,但到目前为止还没有找到任何东西,有人能给我一个提示吗


谢谢大家!

pgjdbc ng PGDataSource没有url属性的setter。URL由pgjdbc ng在内部“组成”。您需要使用各个属性设置数据源:


hibernate.hikari.dataSource.host=localhost
hibernate.hikari.dataSource.port=5432
hibernate.hikari.dataSource.database=db

首先,假设这是您发布的正确配置,您的属性是错误的
hibernate.hikari.dataSourceClassNam
应该在末尾添加一个“e”。接下来,您不需要URL了。我还建议使用Spring来配置数据源,hibernate会话工厂使您的生活更轻松。抱歉,这是一个输入错误,感谢您的建议,但我认为开始使用Spring需要更多的时间。为什么需要更多的时间(根据您使用Spring的标记,为什么会更难?).Mmm因为我从未使用过它,我不知道将它应用到我现有的项目中有多容易。我之所以使用这个标签,是因为“java.beans.IntrospectionException”和人们谈论Spring的任何地方(,很抱歉误传)。所以我想让它在没有Spring的情况下工作。不管怎样,
PGDataSource
上没有
url
属性,而HikariCP甚至不鼓励使用url。只需设置
主机
数据库
属性即可。非常感谢,您在哪里找到此信息的?或者我在哪里能找到它?因为现在我有一个新错误“池初始化期间快速失败”。。。com.impossibl.postgres.jdbc.PGSQLSimpleException:连接错误:用户“postgres”的密码验证失败,您知道吗?谢谢