2012-10-06 3 views
0

넷빈즈 선택한 최대 절전 모드 설정 파일과 데이터베이스 연결을 설정할 수 없습니다 오류더비 +는 + 스프링 MVC

hibernate.reveng.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> 

처럼 보이는 hibernate.cfg.xml 내에서 데이터베이스 연결 세부 사항을 확인하십시오? Java DB (Derby) 데이터베이스로 작업하고 있습니다. MySQL을 사용할 때이 문제가 발생하지 않았습니다.

답변

0

가장 큰 원인은 상자의 Derby가 포함 된 모드에서 실행될 것으로 예상되며 포트 연결을 허용하지 않기 때문입니다. 네트워크 모드에서 실행해야합니다.

정보가 여기에 있습니다 : http://db.apache.org/derby/papers/DerbyTut/index.html

네트워크 모드를 설정하거나 내장 (나는 그 문제 여부를 테스트하는 첫 번째 네트워크가는 게 좋을 것) 한 후 전환으로 마이그레이션하는 정보를 제공해야하는 만약 원한다면).

0

다른 방향으로 갈 것입니다. JPA를 사용하고 JPA 공급 업체로서 최대 절전 모드를 설정합니다. 약간 다르게 보이지만 JPA (트랜잭션 관리자와 모든 것을 포함하여)는 봄 지원을 완벽하게 지원합니다. 그것은 다음과 같이 보일 것입니다 :
대신있는 hibernate.cfg.xml의 , 당신은 XML은 "이 persistence.xml"라는 것이다 (내부 자원/META-INF를 상주)과는 다음과 같이 표시됩니다

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

당신 ApplicationContext.xml은 다음과 같이해야합니다 : 대신 최대 절전 모드 주석의

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

, 당신은 JPA 주석을 사용합니다

(기본적으로 동일합니다 -는 javax.persistence 패키지 아래)를하고 기본 DAO 호출을 사용합니다

@PersistenceContext 
    protected EntityManager entityManager; 

DB 작업을 처리합니다. 이러한 구성 하에서는 문제가 없을 것이라고 생각합니다.