Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 德比&x2B;冬眠+;春季MVC_Java_Hibernate_Spring Mvc - Fatal编程技术网

Java 德比&x2B;冬眠+;春季MVC

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

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 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;