首页 > 解决方案 > 如何使用网络存储多对多映射休眠

问题描述

休眠:选择employee0_.eid 作为eid0_,employee0_.eName 作为eName0_ from Employee employee0_ 休眠:选择project0_.pid 作为pid1_,project0_.pName 作为pName1_ 从Project project0_ 休眠:选择employee0_.eid 作为eid0_0_,employee0_.eName 作为eName0_0_ 从Employee员工0_ 其中员工0_.eid=?休眠:从项目 project0_ where project0_.pid=? 中选择 project0_.pid 作为 pid1_0_,project0_.pName 作为 pName1_0_ 错误 DefaultDispatcherErrorHandler 异常在处理请求期间发生强文本:未能延迟初始化角色集合:com.geaks.zohaib.Employee.projects,没有关闭会话或会话 org.hibernate.LazyInitializationException:未能延迟初始化角色集合: com.geaks.zohaib.Employee.projects,没有会话或会话已关闭

public String AsignProjectsToTeacher()
    {           
        
          getEmployee();
          getProjects();
    
        HibernateDAO dao=new HibernateDAO();
        dao.assignProject(emp, project);
        
    

        
        return "true";
    }
    
    

公共无效assignProject(员工员工,项目项目){

      Session session = HibernateUtil.getInstance().openSession();
      session.beginTransaction(); 
      
    
      
      employee.getProjects().add(project);
      
     project.getEmployees().add(employee);
      
     

    
     
     
      session.save(employee);
      session.save(project);
      session.save(employee.getProjects().size());
      session.save(project.getEmployees().size());
      
        
      session.getTransaction().commit();
      session.close();
      
      
  }

标签: hibernatehibernate-mapping

解决方案


推荐阅读