问答详情
源自:1-11 通过Hibernate API编写访问数据库的代码

junit运行,报空指针异常

public class StudentsTest {
	
	private SessionFactory sessionFactory;
	private Session session;
	private Transaction transaction;
	
	//初始化方法
	@Before
	public void init(){
		//创建配置对象
		Configuration config=new Configuration().configure();
		//创建服务注册对象
		ServiceRegistry serviceRegistry=new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
		//创建会话工厂对象
		sessionFactory=config.buildSessionFactory(serviceRegistry);
		//创建会话对象
		session=sessionFactory.openSession();
		//开启事务
		transaction=session.beginTransaction();
	}
	
	//测试方法
	@Test
	public void testSaveStudents(){
		//生成学生对象
		Students s=new Students("张三丰","男",new Date(),"武当山");
		//保存这个学生对象,无需用SQL语句,因为这是Hibernate,它是一个ORM框架,它只需要保存这个对象就可以了。
		session.save(s);//保存对象进入数据库
	}
	
	//释放资源
	@After
	public void destory(){
		//提交事务
		transaction.commit();
		//关闭会话
		session.close();
		//关闭会话工厂
		sessionFactory.close();
	}
}


提问者:zzzzzzz小盆友 2016-03-30 13:52

个回答

  • SayYouLoveMe
    2016-04-08 01:13:52

    <mapping resource="Students.hbm.xml"/>

    你如果没把Students.hbm.xml放在src下就必须要加上他的跟路径eg:

    <mapping  resource="com/entity/Student.hbm.xml"/>

    我的就是放在com.entity的,找不到是因为你映射路径对不上!


  • zzzzzzz小盆友
    2016-03-30 14:23:20

    把Students.hbm.xml移到src下就可以了

  • zzzzzzz小盆友
    2016-03-30 13:53:25

    http://img.mukewang.com/56fb69b90001b8cf08730656.jpg

    具体保存信息如上所示