departmentejb.java

来自「100多M的J2EE培训内容」· Java 代码 · 共 106 行

JAVA
106
字号
package bible.ejb.entity.cmp;

import java.util.*;
import javax.ejb.*;
import javax.naming.*;


abstract public class DepartmentEJB implements EntityBean
{
  private EntityContext ctx;

  public void setEntityContext(EntityContext ctx) {
    this.ctx = ctx;
  }

  public void unsetEntityContext() {
    this.ctx = null;
  }

  abstract public Integer getId();
  abstract public void setId(Integer id);

  abstract public String getName();
  abstract public void setName(String val);

  abstract public Collection getCourses();
  abstract public void setCourses(Collection courses);


  public void ejbActivate() {
  }

  public void ejbPassivate() {
  }

  public void ejbLoad() {
  }

  public void ejbStore() {
  }

  public void ejbRemove() throws RemoveException
  {
  }

  public Integer ejbCreate(DepartmentVO dept)
    throws CreateException
  {
    setDepartmentData(dept);
    return null;
  }

  public void ejbPostCreate(DepartmentVO dept)
    throws CreateException
  {
  }

  public void addCourse(CourseVO courseData) throws NamingException, CreateException
  {
      Context ctx = new InitialContext();
      CourseLocalHome courseHome = (CourseLocalHome) ctx.lookup("cmp.Course");
      CourseLocal course = courseHome.create(courseData);
      getCourses().add(course);
  }

  public CourseVO[] getAllCourses()
  {
    Collection courses = getCourses();
    CourseVO[] courseArray = new CourseVO[courses.size()];
    Iterator courseIterator = courses.iterator();
    for (int i=0; courseIterator.hasNext(); i++)
    {
      CourseLocal course = (CourseLocal) courseIterator.next();
      courseArray[i] = course.getCourseData();
    }

    return courseArray;
  }

  public DepartmentVO getDepartmentData()
  {
    DepartmentVO dept = new DepartmentVO(this.getId());
    dept.setName(this.getName());
    return dept;
  }

  public void setDepartmentData(DepartmentVO dept)
  {
    setName(dept.getName());
  }
}














⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?