【发布时间】:2012-06-06 17:12:59
【问题描述】:
你好朋友,当我调用 SessionFactory sessionFactory =new Configuration().configure().buildSessionFactory(); 时,我用 hibernate 应用程序创建了 struts; 会话 =sessionFactory.openSession(); 此代码生成错误请帮助我示例代码在这里 这是我的 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.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/logintest</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">xxxx</property>
<property name="connection.pool_size">1</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="current_session_context_class">thread</property>
<property name="cache.provider_class">
org.hibernate.cache.NoCacheProvider
</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<mapping resource="hibernate.hbm.xml"/>
我的映射文件在这里
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="net.model.Contact" table="contacts">
<id name="id" type="int" column="id" >
<generator class="increment"></generator>
</id>
<property name="firstName" column="firstname"></property>
<property name="lastName" column="lastname"></property>
<property name="cellNo" column="cell_no"></property>
<property name="emailId" column="email_id"></property>
<property name="birthDate" column="birthdate"/>
<property name="website" column="website"/>
</class>
</hibernate-mapping>
主类来了
public class Testmain {
public static void main(String args[])
{
Session session=null;
try
{
SessionFactory sessionFactory =new Configuration().configure().buildSessionFactory();
session =sessionFactory.openSession();
Contact contact=new Contact();
contact.setFirstName("mohan");
contact.setLastName("raddy");
contact.setEmailId("mm@gmail.com");
contact.setCellNo("4664564564");
contact.setWebsite("www.stackoverflow.com");
session.save(contact);
session.beginTransaction().commit();
System.out.println("done");
}catch(Exception e)
{
System.out.println(e);
}
session.beginTransaction();
List<Contact> contacts = null;
try {
contacts = (List<Contact>)session.createQuery("from Contact").list();
} catch (HibernateException e) {
e.printStackTrace();
session.getTransaction().rollback();
}
session.getTransaction().commit();
for (Contact contact : contacts) {
System.out.println(contact.getFirstName());
System.out.println(contact.getLastName());
System.out.println(contact.getEmailId());
System.out.println(contact.getCellNo());
System.out.println(contact.getWebsite());
}
}}
在我运行主类时显示以下错误
线程“main”中的异常 java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(Z)V 在 net.sf.cglib.core.DebuggingClassWriter.(DebuggingClassWriter.java:47) 在 net.sf.cglib.core.DefaultGeneratorStrategy.getClassWriter(DefaultGeneratorStrategy.java:30) 在 net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:24) 在 net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:216) 在 net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145) 在 net.sf.cglib.core.KeyFactory.create(KeyFactory.java:117) 在 net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108) 在 net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104) 在 net.sf.cglib.proxy.Enhancer.(Enhancer.java:69) 在 org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:117) 在 org.hibernate.proxy.pojo.cglib.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:43) 在 org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162) 在 org.hibernate.tuple.entity.AbstractEntityTuplizer.(AbstractEntityTuplizer.java:135) 在 org.hibernate.tuple.entity.PojoEntityTuplizer.(PojoEntityTuplizer.java:55) 在 org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.(EntityEntityModeToTuplizerMapping.java:56) 在 org.hibernate.tuple.entity.EntityMetamodel.(EntityMetamodel.java:295) 在 org.hibernate.persister.entity.AbstractEntityPersister.(AbstractEntityPersister.java:434) 在 org.hibernate.persister.entity.SingleTableEntityPersister.(SingleTableEntityPersister.java:109) 在 org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55) 在 org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:226) 在 org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294) 在 net.model.Testmain.main(Testmain.java:25) Java 结果:1
【问题讨论】:
-
另一个线索可能会有所帮助 - 比如你得到的错误......
标签: hibernate