亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

源代碼一字不改,測試都會報空指針錯誤怎么破

Exception in thread "main" java.lang.NullPointerException
?at com.imooc.test.Test.add(Test.java:33)
?at com.imooc.test.Test.main(Test.java:19)


package com.imooc.test;

import java.util.Set;

import org.hibernate.Session;
import org.hibernate.Transaction;

import com.imooc.entity.Grade;
import com.imooc.entity.Student;
import com.imooc.util.HibernateUtil;

/*
?* 單向一對多關系關系(班級--->學生)
?* 建立關聯關系后,可以方便的從一個對象導航到另一個對象
?* 注意關聯的方向
?*/
public class Test {
?public static void main(String[] args) {
??add();
??//findStudentsByGrade();
??//update();
??//delete();
??
?}
?
?//將學生添加到班級
?public static void add(){
??Grade g=new Grade("Java一班", "Java軟件開發一班");
??Student stu1=new Student("張三", "男");
??Student stu2=new Student("穆女神", "女");
??
??//如果希望在學生表中添加對應的班級編號,需要在班級中添加學生,建立關聯關系
??g.getStudents().add(stu1);
??g.getStudents().add(stu2);
??
??Session session=HibernateUtil.getSession();
??Transaction tx=session.beginTransaction();
??session.save(g);
??session.save(stu1);
??session.save(stu2);
??tx.commit();
??HibernateUtil.closeSession(session);
?}
?
?//查詢班級中包含的學生
?public static void findStudentsByGrade(){
??Session session=HibernateUtil.getSession();
??Grade grade=(Grade) session.get(Grade.class, 1);
??System.out.println(grade.getGname()+","+grade.getGdesc());
??
??/*Set<Student> students=grade.getStudents();
??for(Student stu:students){
???System.out.println(stu.getSname()+","+stu.getSex());
??}*/
?}

?//修改學生信息
?public static void update(){
??Grade g=new Grade("Java二班", "Java軟件開發二班");
??
??Session session=HibernateUtil.getSession();
??Transaction tx=session.beginTransaction();
??Student stu=(Student) session.get(Student.class, 1);
??//g.getStudents().add(stu);
??session.save(g);
??tx.commit();
??HibernateUtil.closeSession(session);
?}

?//刪除學生信息
?public static void delete(){
??Session session=HibernateUtil.getSession();
??Transaction tx=session.beginTransaction();
??Student stu=(Student) session.get(Student.class, 2);
??session.delete(stu);
??tx.commit();
??HibernateUtil.closeSession(session);
?}
}


正在回答

1 回答

數據庫表做外鍵關聯了嗎?映射文件配置確認沒問題?源代碼沒有問題

0 回復 有任何疑惑可以回復我~
#1

秋暮雨 提問者

集合使用前沒有初始化
2018-10-13 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Hibernate初探之一對多映射
  • 參與學習       42163    人
  • 解答問題       310    個

Hibernate中一對多關聯映射配置,以及cascade和inverse屬性作用

進入課程

源代碼一字不改,測試都會報空指針錯誤怎么破

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號