Java 德比&x2B;冬眠+;春季MVC
Netbeans无法创建Java 德比&x2B;冬眠+;春季MVC,java,hibernate,spring-mvc,Java,Hibernate,Spring Mvc,Netbeans无法创建hibernate.reveng.xml,出现错误 无法与选定的Hibernate配置文件建立数据库连接。请验证hibernate.cfg.xml中的数据库连接详细信息 我的hibernate.cfg.xml如下所示 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DT
hibernate.reveng.xml
,出现错误
无法与选定的Hibernate配置文件建立数据库连接。请验证hibernate.cfg.xml中的数据库连接详细信息
我的hibernate.cfg.xml
如下所示
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">org.apache.derby.jdbc.ClientDriver</property>
<property name="hibernate.dialect">org.hibernate.dialect.DerbyDialect</property>
<property name="hibernate.connection.url">jdbc:derby://localhost:1527/User</property>
</session-factory>
</hibernate-configuration>
org.apache.derby.jdbc.ClientDriver
org.hibernate.dialogue.derbydialogue
jdbc:derby://localhost:1527/User
有什么问题?我正在使用JavaDB(Derby)数据库。当我使用MySQL时,我没有这个问题。最可能的原因是Derby-of-The-box预期在嵌入式模式下运行,不允许端口连接。您应该在网络模式下运行它 这里有一些信息:
这将为您提供设置网络模式或迁移到嵌入式系统的信息(我建议您先使用网络来测试这是否是问题所在),然后根据需要进行切换) 我会选择另一个方向。我将使用JPA并将hibernate设置为您的JPA供应商。它看起来有点不同,但是spring完全支持JPA(包括事务管理器和所有东西)。它看起来像这样:
您将有一个名为“persistence.xml”(将驻留在resources/META-INF中)的xml,而不是hibernate.cfg.xml,它如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0">
<persistence-unit name="myPersistanceUnit">
<class>com.company.entities.Entity1</class>
<class>com.company.entities.Entity2</class>
<class>com.company.entities.Entity3</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect" />
<property name="hibernate.show_sql" value="true" />
</properties>
</persistence-unit>
</persistence>
<tx:annotation-driven />
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"
p:entityManagerFactory-ref="entityManagerFactory" />
<!-- The data source is configured in the application server but spring also supports a configured bean -->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/MyDataSource" />
</bean>
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="persistenceUnitName" value="myPersistanceUnit" />
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="databasePlatform" value="org.hibernate.dialect.DerbyDialect" />
</bean>
</property>
</bean>
来处理数据库操作。在这些配置下,我认为您不会有任何问题
@PersistenceContext
protected EntityManager entityManager;