हल नहीं कर सकता है मैं हाइबरनेट संदर्भ से उदाहरण बनाने का प्रयास कर रहा हूं।हाइबरनेट त्रुटि: तालिका
मुझे सरल टेबल मिल गया है आईडी, नाम और आयु फ़ील्ड के साथ छात्र। मैंने सभी जावा-बीन्स नियमों के अनुसार इसे सही (जैसा कि मुझे लगता है) जावा-क्लास बनाया है।
मैंने कॉन्फ़िगरेशन फ़ाइल - hibernate.cfg.xml बनाई है, बस संदर्भ से उदाहरण की तरह।
मैंने एक वर्ग के छात्र के लिए हाइबरनेट मैपिंग बनाई है, और यहां त्रुटि हुई है।
<hibernate-mapping>
<class name="Pupil" table="pupils">
...
</class>
</hibernate-mapping>
तालिका = "छात्र" मेरे आईडीई में लाल है और मुझे संदेश "तालिका विद्यार्थियों को हल नहीं कर सकता" संदेश दिखाई देता है। मैंने संदर्भ में बहुत अजीब नोट भी स्थापित किया है जो कहता है कि अधिकांश उपयोगकर्ता उदाहरण चलाने की कोशिश कर रहे एक ही समस्या से असफल हो जाते हैं।
आह .. मैं इस उदाहरण से बहुत नाराज हूं .. IMHO अगर लेखकों को पता है कि ऐसी समस्या है तो उन्हें इसके बारे में कुछ जानकारी जोड़नी चाहिए।
लेकिन, मुझे इसे कैसे ठीक करना चाहिए? मैं यहाँ चींटी से और अन्य उपकरणों के साथ उदाहरण के लिए उपयोग नहीं करना चाहता हूं। मैं MySQL 5.0 का उपयोग कर रहा हूं, लेकिन मुझे लगता है कि इससे कोई फर्क नहीं पड़ता।
युपीडी: स्रोत कोड
Pupil.java - विन्यास - मेरी लगातार वर्ग
package domain;
public class Pupil {
private Integer id;
private String name;
private Integer age;
protected Pupil() { }
public Pupil (String name, int age) {
this.age = age;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId (Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName (String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge (Integer age) {
this.age = age;
}
public String toString() {
return "Pupil [ name = " + name + ", age = " + age + " ]";
}
}
Pupil.hbm.xml इस वर्ग
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="domain" >
<class name="Pupil" table="pupils">
<id name="id">
<generator class="native" />
</id>
<property name="name" not-null="true"/>
<property name="age"/>
</class>
</hibernate-mapping>
hibernate.cfg.xml के लिए मानचित्रण है हाइबरनेट
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/hbm_test</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.pool_size">1</property>
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="current_session_context_class">thread</property>
<property name="show_sql">true</property>
<mapping resource="domain/Pupil.hbm.xml"/>
</session-factory>
</hibernate-configuration>
HibernateUtils.java
package utils;
import org.hibernate.SessionFactory;
import org.hibernate.HibernateException;
import org.hibernate.cfg.Configuration;
public class HibernateUtils {
private static final SessionFactory sessionFactory;
static {
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (HibernateException he) {
System.err.println (he);
throw new ExceptionInInitializerError (he);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
Runner.java - परीक्षण के लिए वर्ग हाइबरनेट
import org.hibernate.Session;
import java.util.*;
import utils.HibernateUtils;
import domain.Pupil;
public class Runner {
public static void main (String[] args) {
Session s = HibernateUtils.getSessionFactory().getCurrentSession();
s.beginTransaction();
List pups = s.createQuery ("from Pupil").list();
for (Object obj : pups) {
System.out.println (obj);
}
s.getTransaction().commit();
HibernateUtils.getSessionFactory().close();
}
}
मेरे libs: antlr-2.7.6.jar, asm.jar, एएसएम-attrs .jar, cglib-2.1.3.jar, कॉमन्स-संग्रह-2.1.1.jar, कॉमन्स-लॉगिंग-1.0.4.jar, dom4j-1.6.1.jar, hibernate3.jar, jta.jar, log4j-1.2 .11.jar, mysql-connector-java-5.1.7-bin.jar
Compile error: cannot resolve table pupils
विचार? jboss उपकरण? क्या आपको jboss टूल प्राथमिकताओं में कनेक्शन जानकारी कॉन्फ़िगर करने की आवश्यकता है? – Surya
इंटेलिजे आईडीईए 7, हाइबरनेट 3.2, जेडीके 1.6। रुको, मैं कोड – Roman