2014-11-10 7 views
0

나는이 튜토리얼을 따라하려고 해요 : https://www.youtube.com/playlist?list=PL4AFF701184976B25/hibernate.cfg.xml 파일을 어떻게 수정합니까?

나는 비디오 내 MySQL 데이터베이스에 추가 성공적으로 최대 절전 모드보고 기대 다섯 오긴했는데,하지만 내가 대신이 오류를 받고 있어요. 아래는 내 hibernate.cfg.xml 파일입니다.

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 
SLF4J: Defaulting to no-operation (NOP) logger implementation 
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. 
Exception in thread "main" org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml 
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2246) 
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2158) 
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2137) 
    at org.koushik.hibernate.HibernateTest.main(HibernateTest.java:15) 
Caused by: org.dom4j.DocumentException: Error on line 19 of document : Open quote is expected for attribute "{1}" associated with an element type "name". Nested exception: Open quote is expected for attribute "{1}" associated with an element type "name". 
    at org.dom4j.io.SAXReader.read(SAXReader.java:482) 
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2238) 
    ... 3 more 

<!DOCTYPE hibernate-configuration PUBLIC 
     "-//Hibernate/Hibernate Configuration DTD//EN" 
     "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> 

<hibernate-configuration> 
    <session-factory> 
    <!-- Database connection settings --> 
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="connection.url">jdbc:mysql://localhost/hibernatedb</property> 
    <property name="connection.username">root</property> 
    <property name="connection.password">mysqlroot</property> 

    <property name="connection.pool_size">1</property> 

    <property name="dialect">org.hibernate.dialect.MySQLDialect</property> 

    <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property> 

    <property name=show_sql>true</property> 
    <property name="hbm2ddl.auto">create</property> 
    <mapping class="org.koushik.javabrains.dto.UserDetails" /> 
</session-factory> 
</hibernate-configuration> 

문제는 무엇을 할 수 있고 내가 그것을 해결에 대해 어떻게 갈 수 있나요? 내 파일을 찾을 수 없는지 또는 문법적으로 문제가 있다고 판단 할 수 없습니다.

또한, 누군가가 Hibernate 4.3.7에 대한 작동중인 Hibernate 튜토리얼을 가리킬 수 있다면 매우 감사 할 것입니다. 지금까지 내가 발견 한 것은 배울 수있는 최대 절전 모드의 이전 버전을 설치해야하는 깨진/몹시 오래된 데이트 자료가 혼합 된 것입니다.

편집 -------------------

나는 이클립스에서 검증을 시도하고이 오류는 "루트에 대한 문서 유형 선언 말 8 행에 나타납니다 요소 유형 "hibernate-configuration"은 '>'로 끝나야합니다. " 또한이 줄은 "연결 ..."이 파란색으로 나타나지 않고 속성 이름의 이름 부분이 자주색으로 나타나지 않는 유일한 줄입니다. 구문 오류와 같은 느낌이 들지만 그것을 찾을 수 없습니다. 여기에 편집 2 ------------------ enter image description here

내 두 개의 파일

UserDetails.java

package org.koushik.javabrains.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; 
    } 
} 

HibernateTest.java

있습니다
package org.koushik.hibernate; 

import org.hibernate.Session; 
import org.hibernate.SessionFactory; 
import org.hibernate.cfg.Configuration; 
import org.koushik.javabrains.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 Configuration().configure().buildSessionFactory(); 
     Session session = sessionFactory.openSession(); 
     session.beginTransaction(); 
     session.save(user); 
     session.getTransaction().commit(); 
    } 

} 

답변

1

이 시도 :

<?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">com.mysql.jdbc.Driver</property> 
     <property name="hibernate.connection.url">jdbc:mysql://localhost/hibernatedb</property> 
     <property name="hibernate.connection.username">root</property> 
     <property name="hibernate.connection.password">mysqlroot</property> 
     <property name="hibernate.connection.pool_size">1</property> 
     <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 
     <property name="hibernate.hbm2ddl.auto">create</property> 
     <property name="hibernate.cache.provider_class">org.hibernate.cache.NoCacheProvider</property> 
     <property name="show_sql">true</property> 
     <mapping class="org.koushik.javabrains.dto.UserDetails" /> 
    </session-factory> 
</hibernate-configuration> 
+0

동일/유사한 오류가 발생합니다. 문서 예외 : 문서 9 행의 오류 : 루트 요소 유형 "hibernate-configuration"에 대한 문서 유형 선언은 '>'로 끝나야합니다. – James

+0

편집기가 각 줄의 끝 부분에 보이지 않는 이상한 문자를 넣지 않았는지 확인하십시오. – KKKCoder

+0

일식 IDE를 사용하여 안전해야합니까? – James