Java 我的第一个hibernate程序出现错误,请帮助我解决错误
错误: log4j:警告:找不到记录器的附加器 (org.hibernate.cfg.annotations.Version)。log4j:警告请初始化 log4j系统正常工作。线程“main”中出现异常 org.hibernate.exception.genericjdbception:无法打开连接 在 org.hibernate.exception.sqlstatecoverter.handledNonsspecificeException(sqlstatecoverter.java:103) 在 org.hibernate.exception.sqlstatecoverter.convert(sqlstatecoverter.java:91) 在 org.hibernate.exception.jdbceptionhelper.convert(jdbceptionhelper.java:43) 在 org.hibernate.exception.jdbceptionhelper.convert(jdbceptionhelper.java:29) 在 org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:420) 在 org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) 位于org.hibernate.jdbc.jdbcontext.connection(jdbcontext.java:119) 在 org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) 在 org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326) 位于org.koushik.hibernate.HibernateTest.main(HibernateTest.java:20) 原因:org.postgresql.util.psql异常:致命:数据库 “5432/hibernatedb”在上不存在 org.postgresql.core.v3.ConnectionFactoryImpl.readStartupMessages(ConnectionFactoryImpl.java:691) 在 org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:207) 在 org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:65) 位于org.postgresql.jdbc.PgConnection.(PgConnection.java:159) org.postgresql.Driver.makeConnection(Driver.java:415)位于 org.postgresql.Driver.connect(Driver.java:283)位于 位于的java.sql.DriverManager.getConnection(未知源) 位于的java.sql.DriverManager.getConnection(未知源) org.hibernate.connection.driverManager连接提供者.getConnection(driverManager连接提供者.java:110) 在 org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417) ... 还有5个 代码 hibernate.cfg.xmlJava 我的第一个hibernate程序出现错误,请帮助我解决错误,java,hibernate,postgresql,Java,Hibernate,Postgresql,错误: log4j:警告:找不到记录器的附加器 (org.hibernate.cfg.annotations.Version)。log4j:警告请初始化 log4j系统正常工作。线程“main”中出现异常 org.hibernate.exception.genericjdbception:无法打开连接 在 org.hibernate.exception.sqlstatecoverter.handledNonsspecificeException(sqlstatecoverter.java:103
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration SYSTEM "hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">org.postgresql.Driver</property>
<property name="connection.url">jdbc:postgresql://localhost/5432/hibernatedb</property>
<property name="connection.username">postgres</property>
<property name="connection.password">password</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache
<property name="cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property> -->
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">create</property>
<mapping class="org.javabrains.koushik.dto.UserDetails" />
<!-- <mapping resource="org/hibernate/tutorial/domain/Event.hbm.xml"/> -->
</session-factory>
</hibernate-configuration>
hibernatest.java
package org.javabrains.koushik.dto;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class UserDetails {
@Id
private int userID;
private String userName;
public int getUserID() {
return userID;
}
public void setUserID(int userID) {
this.userID = userID;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
package org.koushik.hibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.javabrains.koushik.dto.UserDetails;
public class HibernateTest {
public static void main(String[] args) {
UserDetails user = new UserDetails();
user.setUserID(1);
user.setUserName("First user");
SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
Session session =sessionFactory.openSession();
session.beginTransaction();
session.save(user);
session.getTransaction().commit();
}
}
看起来可能是连接URL中的错误。难道不是吗 jdbc:postgresql://localhost:5432/hibernatedb
?检查您的连接URL路径它应该是这样的:
<property name="connection.url">jdbc:postgresql://localhost:5432/hibernatedb</property>
可能重复但不知道如何解决这些错误..:(请帮我找出Anjali,看看你自己的代码。它在配置文件中可能有一个输入错误。嗯……但是我检查了conf文件三次以上,我都弄不清楚了。)。。
<property name="connection.url">jdbc:postgresql://localhost:5433/hibernatedb</property>
org.postgresql.util.PSQLException: FATAL: database "5432/hibernatedb" does not exist at