我写了以下代码:User.hbm.xml:<?xml version="1.0"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-mapping>
<class name="com.wwb.hibernate.po.User" table="t_user">
<id name="id" type="java.lang.Integer" column="id">
<generator class="increment"/>
</id>
<property name="name"></property>
</class>
</hibernate-mapping>
hibernate.cfg.xml如下:
<!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="connection.url">
jdbc:mysql://localhost:3306/test
</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="show_sql">true</property>
<mapping resource="com/wwb/hibernate/po/User.hbm.xml" />
</session-factory></hibernate-configuration>User:public class User {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
测试类:package com.wwb.hibernate.test;import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;import com.wwb.hibernate.po.User;public class Test { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Configuration cof=new Configuration();
cof.configure();
SessionFactory sf=cof.buildSessionFactory();
Session session=sf.openSession();
Transaction ts=session.beginTransaction();
User user=new User();
user.setName("dsad");
session.save(user);
ts.commit();
// session.get(User.class, 2);
// session.save(user);
}}怎么出现 thread "main" org.hibernate.MappingException: Could not read mappings from resource: com/wwb/hibernate/po/User.hbm.xml
at org.hibernate.cfg.Configuration.addResource(Configuration.java:485)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1465)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1433)
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-mapping>
<class name="com.wwb.hibernate.po.User" table="t_user">
<id name="id" type="java.lang.Integer" column="id">
<generator class="increment"/>
</id>
<property name="name"></property>
</class>
</hibernate-mapping>
hibernate.cfg.xml如下:
<!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="connection.url">
jdbc:mysql://localhost:3306/test
</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="show_sql">true</property>
<mapping resource="com/wwb/hibernate/po/User.hbm.xml" />
</session-factory></hibernate-configuration>User:public class User {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
测试类:package com.wwb.hibernate.test;import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;import com.wwb.hibernate.po.User;public class Test { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Configuration cof=new Configuration();
cof.configure();
SessionFactory sf=cof.buildSessionFactory();
Session session=sf.openSession();
Transaction ts=session.beginTransaction();
User user=new User();
user.setName("dsad");
session.save(user);
ts.commit();
// session.get(User.class, 2);
// session.save(user);
}}怎么出现 thread "main" org.hibernate.MappingException: Could not read mappings from resource: com/wwb/hibernate/po/User.hbm.xml
at org.hibernate.cfg.Configuration.addResource(Configuration.java:485)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1465)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1433)
解决方案 »
- ,想学Java,想快速上手!我该从哪开始..
- 在hibernate中 inverse="false"是什么意思
- Spring框架下的一些提问
- java中String.split()方法出问题啦
- Error creating bean with name 'userService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization
- hibernate报错:could not resolve property: roomTypes of:
- EJB 调用的问题
- 用过cmpp协议java开发包的大侠请进~~~~急!!
- 打消学习J2EE积极性,没必要学她开发管理系统么?
- 真是奇葩
- javax.servlet.ServletException:
- struts2中的global-result如何写这情况下
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-mapping>
<class name="com.wwb.hibernate.po.User" table="t_user">
<id name="id" type="java.lang.Integer" column="id">
<generator class="increment"/>
</id>
<property name="name" type="java.util.String">
<column name="name" /> //这里要写对应的在数据库的字段名
</property>
</class>
</hibernate-mapping>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<property name="cache.provider_class">
org.hibernate.cache.HashtableCacheProvider
</property>
在hibernate.cfg.xml中加入以上代码,再检查一下hibernate.cfg.xml和User.hbm.xml文件,把该加的都加上再调试一下