(一)studentBean.javapackage school.entity;import javax.ejb.*;
import javax.naming.*;
import javax.rmi.*;import java.rmi.*;
import java.util.*;import school.interfaces.*;/**
 * @ejb:bean
 * name="student"
 * display="studentEJB"
 * type="CMP"
 * jndi-name="ejb/school/student"
 * local-jndi-name="ejb/school/studentLocal"
 * view-type="local"
 *
 * @ejb:finder signature="java.util.Collection findAll()"
 *
 * @jboss:table-name table-name="student"
 * @jboss:create-table create="true"
 * @jboss:remove-table remove="true"
 **/
public abstract class studentBean implements EntityBean
{
private EntityContext context;

/**
 * @ejb:persistent-field
 * @ejb:pk-field
 * @jboss:column-name name="id"
 * @jboss:jdbc-type CHAR
 * @jboss:sql-type CHAR(4)
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract String getId();
public abstract void setId(String id);

/**
 * @ejb:persistent-field
 * @jboss:column-name name="name"
 * @jboss:jdbc-type VARCHAR
 * @jboss:sql-type VARCHAR(10)
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract String getName();
public abstract void setName(String name); /**
 * @ejb:persistent-field
 * @jboss:column-name name="age"
 * @jboss:jdbc-type SMALLINT
 * @jboss:sql-type INT(2)
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract int getAge();
public abstract void setAge(int age);

/**
 * @ejb:persistent-field
 * @jboss:column-name name="sex"
 * @jboss:jdbc-type CHAR
 * @jboss:sql-type CHAR(2)
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract String getSex();
public abstract void setSex(String sex);

/**
 * @ejb:relation
 * name="student-contact-1-1"
 * role-name="student"
 *
 * @jboss:target-relation
 * related-pk-field="id"
 * fk-column="student_id"
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract contactLocal getContact();

/**
 * @ejb.interface-method view-type="local"
 **/
public abstract void setContact(contactLocal contact);

/**
 * @ejb:relation
 * name="student-specialty-1-n"
 * role-name="student"
 * target-multiple="yes"
 *
 * @jboss:relation
 * related-pk-field="id"
 * fk-column="specialty_id"
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract specialtyLocal getSpecialty();
public abstract void setSpecialty(specialtyLocal specialty);

/**
 * @ejb:relation
 * name="course-student-m-n"
 * role-name="student"
 * target-multiple="yes"
 *
 * @jboss:relation-mapping style="relation-table"
 * @jboss:relation-table table-name="student_course"
 * @jboss:relation
 * related-pk-field="id"
 * fk-column="student_id"
 * @jboss:target-relation
 * related-pk-field="id"
 * fk-column="course_id"
 *
 * @ejb:interface-method view-type="local"
 **/
public abstract Collection getCourses();
public abstract void setCourses(Collection courses);

/**
 * @ejb:interface-method view-type="local"
 **/
public void addCourse(courseLocal course)
{
try
{
Collection courses = getCourses();
courses.add(course);
}
catch(Exception e)
{
throw new EJBException(e.getMessage());
}
}

/**
 * @ejb:interface-method view-type="local"
 **/
public void dropCourse(courseLocal course)
{
try
{
Collection courses = getCourses();
courses.remove(course);
}
catch(Exception e)
{
throw new EJBException(e.getMessage());
}
}
/**
 * @ejb:create-method view-type="local"
 **/
public studentPK ejbCreate(String id, String name, int age, String sex)
throws CreateException
{
setId(id);
setName(name);
setAge(age);
setSex(sex);
return null;
}

public void ejbPostCreate(String id, String name, int age, String sex)
throws CreateException
{
}

public void setEntityContext(EntityContext ctx)
{
context = ctx;
}

public void unsetEntityContext()
{
context = null;
}

public void ejbRemove()
throws RemoveException
{
}

public void ejbLoad()
{
}

public void ejbStore()
{
}

public void ejbPassivate()
{
}

public void ejbActivate()
{
}
}

解决方案 »

  1.   

    (二)courseBean.javapackage school.entity;import javax.ejb.*;
    import javax.naming.*;
    import javax.rmi.*;import java.rmi.*;
    import java.util.*;import school.interfaces.*;/**
     * @ejb:bean
     * name="course"
     * display="courseEJB"
     * type="CMP"
     * jndi-name="ejb/school/course"
     * local-jndi-name="ejb/school/courseLocal"
     * view-type="local"
     *
     * @ejb:finder signature="java.util.Collection findAll()"
     *
     * @jboss:table-name table-name="course"
     * @jboss:create-table create="true"
     * @jboss:remove-table remove="true"
     **/
    public abstract class courseBean implements EntityBean
    {
    private EntityContext context;

    /**
     * @ejb:persistent-field
     * @ejb:pk-field
     * @jboss:column-name name="id"
     * @jboss:jdbc-type CHAR
     * @jboss:sql-type CHAR(4)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getId();
    public abstract void setId(String id);

    /**
     * @ejb:persistent-field
     * @jboss:column-name name="name"
     * @jboss:jdbc-type VARCHAR
     * @jboss:sql-type VARCHAR(20)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getName();
    public abstract void setName(String name);

    /**
     * @ejb:relation
     * name="course-student-m-n"
     * role-name="course"
     * target-multiple="yes"
     *
     * @jboss:relation-mapping style="relation-table"
     * @jboss:relation-table table-name="student_course"
     * @jboss:relation
     * related-pk-field="id"
     * fk-column="course_id"
     * @jboss:target-relation
     * related-pk-field="id"
     * fk-column="student_id"
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract Collection getStudents();
    public abstract void setStudents(Collection students);

    /**
     * @ejb:interface-method view-type="local"
     **/
    public void addStudent(studentLocal student)
    {
    try
    {
    Collection students = getStudents();
    students.add(student);
    }
    catch(Exception e)
    {
    throw new EJBException(e.getMessage());
    }
    }

    /**
     * @ejb:interface-method view-type="local"
     **/
    public void dropStudent(studentLocal student)
    {
    try
    {
    Collection students = getStudents();
    students.remove(student);
    }
    catch(Exception e)
    {
    throw new EJBException(e.getMessage());
    }
    }
    /**
     * @ejb:create-method view-type="local"
     **/
    public coursePK ejbCreate(String id, String name)
    throws CreateException
    {
    setId(id);
    setName(name);
    return null;
    }

    public void ejbPostCreate(String id, String name)
    throws CreateException
    {
    }

    public void setEntityContext(EntityContext ctx)
    {
    context = ctx;
    }

    public void unsetEntityContext()
    {
    context = null;
    }

    public void ejbRemove()
    throws RemoveException
    {
    }

    public void ejbLoad()
    {
    }

    public void ejbStore()
    {
    }

    public void ejbPassivate()
    {
    }

    public void ejbActivate()
    {
    }
    }
      

  2.   

    (三)contactBean.javapackage school.entity;import javax.ejb.*;
    import javax.naming.*;
    import javax.rmi.*;import java.rmi.*;
    import java.util.*;import school.interfaces.*;/**
     * @ejb:bean
     * name="contact"
     * display="contactEJB"
     * type="CMP"
     * jndi-name="ejb/school/contact"
     * local-jndi-name="ejb/school/contactLocal"
     * view-type="local"
     *
     * @ejb:finder signature="java.util.Collection findAll()"
     *
     * @jboss:table-name table-name="contact"
     * @jboss:create-table create="true"
     * @jboss:remove-table remove="true"
     **/
    public abstract class contactBean implements EntityBean
    {
    private EntityContext context;

    /**
     * @ejb:persistent-field
     * @ejb:pk-field
     * @jboss:column-name name="id"
     * @jboss:jdbc-type CHAR
     * @jboss:sql-type CHAR(4)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getId();
    public abstract void setId(String id);

    /**
     * @ejb:persistent-field
     * @jboss:column-name name="address"
     * @jboss:jdbc-type VARCHAR
     * @jboss:sql-type VARCHAR(50)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getAddress();
    public abstract void setAddress(String address); /**
     * @ejb:persistent-field
     * @jboss:column-name name="phone"
     * @jboss:jdbc-type VARCHAR
     * @jboss:sql-type VARCHAR(20)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getPhone();
    public abstract void setPhone(String phone); /**
     * @ejb:persistent-field
     * @jboss:column-name name="email"
     * @jboss:jdbc-type VARCHAR
     * @jboss:sql-type VARCHAR(50)
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract String getEmail();
    public abstract void setEmail(String email);

    /**
     * @ejb:relation
     * name="student-contact-1-1"
     * role-name="contact"
     *
     * @jboss:relation
     * related-pk-field="id"
     * fk-column="student_id"
     *
     * @ejb:interface-method view-type="local"
     **/
    public abstract studentLocal getStudent();

    /**
     * @ejb.interface-method view-type="local"
     **/
    public abstract void setStudent(studentLocal student);

    /**
     * @ejb:create-method view-type="local"
     **/
    public contactPK ejbCreate(String id, String address, String phone, String email)
    throws CreateException
    {
    setId(id);
    setAddress(address);
    setPhone(phone);
    setEmail(email);
    return null;
    }

    public void ejbPostCreate(String id, String address, String phone, String email)
    throws CreateException
    {
    }

    public void setEntityContext(EntityContext ctx)
    {
    context = ctx;
    }

    public void unsetEntityContext()
    {
    context = null;
    }

    public void ejbRemove()
    throws RemoveException
    {
    }

    public void ejbLoad()
    {
    }

    public void ejbStore()
    {
    }

    public void ejbPassivate()
    {
    }

    public void ejbActivate()
    {
    }
    }