[size=small]
数据库里面就一张表person,id & name字段,个人感觉没有错,可是就是有问题。代码如下:
[code="java"]
jdbc:mysql://localhost:3306/helloword
root
admin
com.mysql.jdbc.Driver
org.hibernate.dialect.MySQLDialect
mysql
<mapping resource="com/dlcity/hibernate/helloHibernate/Person.hbm.xml" />
<mapping class="com.dlcity.hibernate.helloHibernate.Person" />
[/code]
[code="java"]
public class PersonOperate {
private Session session = null;
public PersonOperate(){
//找到hibernate配置
Configuration config = new Configuration().configure();
//从配置中找出SessionFactory
SessionFactory sessions = config.buildSessionFactory();
//打开session
this.session = sessions.openSession();
}
public void insert(Person p){
//开始事务
Transaction tran = this.session.beginTransaction();
//执行操作
this.session.save(p);
//提交事务
tran.commit();
}
}[/code]
[code="java"]
public class TestPO {
public static void main(String[] args){
Person p = new Person();
p.setId(3);
p.setName("testpo");
PersonOperate po = new PersonOperate();
po.insert(p);
}
}[/code]
[code="java"]
[/code]
异常如下:
[code="java"]
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.hibernate.MappingException: An AnnotationConfiguration instance is required to use
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1692)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1647)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1626)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1600)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1520)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1506)
at com.dlcity.hibernate.helloHibernate.PersonOperate.(PersonOperate.java:25)
at com.dlcity.hibernate.helloHibernate.TestPO.main(TestPO.java:10)
[/code]
[/size]
如果采用 形式定义, 说明你的Person是采用注解的,
那就应该用以下方式获得
[code="java"]SessionFactory SessionFactory =new AnnotationConfiguration().configure().buildSessionFactory(); [/code]
不知道你的Person是怎么定义的
[quote] [/quote]
去掉它,试试
那你改出来没有,就是导入那个class是干什么的,是过滤什么用的吗?
既然是报Driver的错,那你试试看把配置中的用户名都直接写到URL上看看