• Hibernate课程 初探一对多映射2-7 测试-修改和删除学生信息


    package com.ddwei.entity;
    
    import java.util.Set;
    
    import org.hibernate.Session;
    import org.hibernate.Transaction;
    
    import com.ddwei.util.HibernateUtil;
    
    /**
     * 建立关联关系后,
     * 可以方便的从一个导航对象,关联到另一个导航对象!
     * 注意关联方向:一对多
     * @author weijingli
     *
     */
    public class Test {
        
        public static void main(String[] args) {
    //        add();
    //        show();
    //        updateGrade();
            deleteStu();
        }
        
        
        //增加班级学生信息
        public static void add(){
            
            Grade g = new Grade("java一班","java一班是一个好班");
            Student stu1 = new Student("秦皇","男");
            Student stu2 = new Student("汉武","男");
            Student stu3 = new Student("唐宗","男");
            g.getStudents().add(stu1);
            g.getStudents().add(stu2);
            g.getStudents().add(stu3);
            Session session = HibernateUtil.getSession();
            Transaction tx = session.beginTransaction();
            session.save(g);
            session.save(stu1);
            session.save(stu2);
            session.save(stu3);
            tx.commit();
            HibernateUtil.closeSession(session);
        }
        
        
        //查询班级学生信息
        public static void show(){
            
            Session session1 = HibernateUtil.getSession();
            Grade grade1 = (Grade) session1.get(Grade.class, 1);//得到java1班
            System.out.println("班级名称为:"+grade1.getGname());
            Set<Student> students = grade1.getStudents();
            for(Student stu:students){
                System.out.println("学生姓名为:"+stu.getSname());
            }
            HibernateUtil.closeSession(session1);
        }
        
        
        //修改学生所在班级信息
        public static void updateGrade(){
            
            Grade grade2 = new Grade("java二班","java二班介绍");
            Session session2 = HibernateUtil.getSession();
            Transaction tx2 = session2.beginTransaction();
            Student student1 = (Student) session2.get(Student.class, 1);
            grade2.getStudents().add(student1);//java二班添加学号为1的学生
            session2.save(grade2);
            tx2.commit();
            HibernateUtil.closeSession(session2);
        } 
        
        //删除学生信息
        public static void deleteStu(){
            Session session2 = HibernateUtil.getSession();
            Transaction tx2 = session2.beginTransaction();
            Student stu2 = (Student)session2.get(Student.class, 3);
            session2.delete(stu2);
            tx2.commit();
            HibernateUtil.closeSession(session2);
        }
    
    }
  • 相关阅读:
    Hbase-06-Snapshot原理
    Hbase-05-备份表数据
    Hbase-04-hbck
    Python Exception Handling
    10.TiPD 调度
    8.存储引擎TiFlash
    6.TiDB数据库的存储
    7.存储引擎TiKV
    4.Tidb SQL优化(一)
    5.TiDB SQL优化(二)
  • 原文地址:https://www.cnblogs.com/1446358788-qq/p/9363829.html
Copyright © 2020-2023  润新知