现在有两个实体类关系是一对多,User类为一,Question类为多。
User类使用Set持有Q类的引用private Set<Question> question;
Q类使用User类的引用private User user;用户登录后,在提交问题表单中,增加问题的各个属性,Question表的外键关联User类的主键。最后要根据用户查看用户所提问的问题。
如何编写,求高手赐教

解决方案 »

  1.   

    用户登录了不有一个user的主键id,然后通过这个id到question表中去找关联外键值等于userid的数据不就可以了吗
      

  2.   

    你不是设置了 一对多的关系吗,根据id查出user,Set里面会有该用户所有问题信息
      

  3.   

    private Set<Question> question User持有Question 找到user还得不到question吗?
      

  4.   

    可以根据数据库用myeclipse工具生成xxxx.hbm.xml文件,然后根据自己的需求在修改相关参数,可能需要你自己好好研究一下,这个一句两句真讲不清楚的,给你一个例子,你好好看看,这个是我自己的项目:
    package com.xingao.entity;import java.util.HashSet;
    import java.util.Set;
    /**
     * T_role entity. @author MyEclipse Persistence Tools
     */public class T_role  implements java.io.Serializable {
        // Fields         private Integer id;
         private W_user w_user;
         private T_template t_template;
         private String name;
         private String duty;
         private String description;
         private Integer type;
         private Set<T_node_role> t_node_roles = new HashSet<T_node_role>();
        // Constructors    /** default constructor */
        public T_role() {
        } /** minimal constructor */
        public T_role(T_template t_template, String name) {
            this.t_template = t_template;
            this.name = name;
        }
        
        /** full constructor */
        public T_role(W_user w_user, T_template t_template, String name, String duty, String description, Integer type, Set<T_node_role> t_node_roles) {
            this.w_user = w_user;
            this.t_template = t_template;
            this.name = name;
            this.duty = duty;
            this.description = description;
            this.type = type;
            this.t_node_roles = t_node_roles;
        }   
        // Property accessors    public Integer getId() {
            return this.id;
        }
        
        public void setId(Integer id) {
            this.id = id;
        }    public W_user getW_user() {
            return this.w_user;
        }
        
        public void setW_user(W_user w_user) {
            this.w_user = w_user;
        }    public T_template getT_template() {
            return this.t_template;
        }
        
        public void setT_template(T_template t_template) {
            this.t_template = t_template;
        }    public String getName() {
            return this.name;
        }
        
        public void setName(String name) {
            this.name = name;
        }    public String getDuty() {
            return this.duty;
        }
        
        public void setDuty(String duty) {
            this.duty = duty;
        }    public String getDescription() {
            return this.description;
        }
        
        public void setDescription(String description) {
            this.description = description;
        }    public Integer getType() {
            return this.type;
        }
        
        public void setType(Integer type) {
            this.type = type;
        }    public Set<T_node_role> getT_node_roles() {
            return this.t_node_roles;
        }
        
        public void setT_node_roles(Set<T_node_role> t_node_roles) {
            this.t_node_roles = t_node_roles;
        }
       
    }
    package com.xingao.entity;import java.util.HashSet;
    import java.util.Set;/**
     * W_user entity. @author MyEclipse Persistence Tools
     */public class W_user implements java.io.Serializable { // Fields private Integer id;
    private String rtxAccount;
    private String name;
    private Integer right;
    private String passWord;
    private Integer onlyReadPrivilege;
    private Integer readAndWritePrivilege;
    private Set<W_workschedule> WWorkschedules = new HashSet<W_workschedule>();
    private Set<T_role> TRoles = new HashSet<T_role>();
    private Set<W_role> WRoles = new HashSet<W_role>();
    private Set<W_role_user> WRoleUsers = new HashSet<W_role_user>();
    private Set<T_W_role_user> TWRoleUsers = new HashSet<T_W_role_user>();
    private Set<W_workflowfile> WWorkflowfiles = new HashSet<W_workflowfile>();
    private Set<T_role_user> TRoleUsers = new HashSet<T_role_user>(); // Constructors /** default constructor */
    public W_user() {
    } /** minimal constructor */
    public W_user(String rtxAccount, String name, Integer right,
    String passWord, Integer onlyReadPrivilege,
    Integer readAndWritePrivilege) {
    this.rtxAccount = rtxAccount;
    this.name = name;
    this.right = right;
    this.passWord = passWord;
    this.onlyReadPrivilege = onlyReadPrivilege;
    this.readAndWritePrivilege = readAndWritePrivilege;
    } /** full constructor */
    public W_user(String rtxAccount, String name, Integer right,
    String passWord, Integer onlyReadPrivilege,
    Integer readAndWritePrivilege, Set<W_workschedule> WWorkschedules, Set<T_role> TRoles,
    Set<W_role> WRoles, Set<W_role_user> WRoleUsers, Set<T_W_role_user> TWRoleUsers, Set<W_workflowfile> WWorkflowfiles,
    Set<T_role_user> TRoleUsers) {
    this.rtxAccount = rtxAccount;
    this.name = name;
    this.right = right;
    this.passWord = passWord;
    this.onlyReadPrivilege = onlyReadPrivilege;
    this.readAndWritePrivilege = readAndWritePrivilege;
    this.WWorkschedules = WWorkschedules;
    this.TRoles = TRoles;
    this.WRoles = WRoles;
    this.WRoleUsers = WRoleUsers;
    this.TWRoleUsers = TWRoleUsers;
    this.WWorkflowfiles = WWorkflowfiles;
    this.TRoleUsers = TRoleUsers;
    } // Property accessors public Integer getId() {
    return this.id;
    } public void setId(Integer id) {
    this.id = id;
    } public String getRtxAccount() {
    return this.rtxAccount;
    } public void setRtxAccount(String rtxAccount) {
    this.rtxAccount = rtxAccount;
    } public String getName() {
    return this.name;
    } public void setName(String name) {
    this.name = name;
    } public Integer getRight() {
    return this.right;
    } public void setRight(Integer right) {
    this.right = right;
    } public String getPassWord() {
    return this.passWord;
    } public void setPassWord(String passWord) {
    this.passWord = passWord;
    } public Integer getOnlyReadPrivilege() {
    return this.onlyReadPrivilege;
    } public void setOnlyReadPrivilege(Integer onlyReadPrivilege) {
    this.onlyReadPrivilege = onlyReadPrivilege;
    } public Integer getReadAndWritePrivilege() {
    return this.readAndWritePrivilege;
    } public void setReadAndWritePrivilege(Integer readAndWritePrivilege) {
    this.readAndWritePrivilege = readAndWritePrivilege;
    } public Set<W_workschedule> getWWorkschedules() {
    return this.WWorkschedules;
    } public void setWWorkschedules(Set<W_workschedule> WWorkschedules) {
    this.WWorkschedules = WWorkschedules;
    } public Set<T_role> getTRoles() {
    return this.TRoles;
    } public void setTRoles(Set<T_role> TRoles) {
    this.TRoles = TRoles;
    } public Set<W_role> getWRoles() {
    return this.WRoles;
    } public void setWRoles(Set<W_role> WRoles) {
    this.WRoles = WRoles;
    } public Set<W_role_user> getWRoleUsers() {
    return this.WRoleUsers;
    } public void setWRoleUsers(Set<W_role_user> WRoleUsers) {
    this.WRoleUsers = WRoleUsers;
    } public Set<T_W_role_user> getTWRoleUsers() {
    return this.TWRoleUsers;
    } public void setTWRoleUsers(Set<T_W_role_user> TWRoleUsers) {
    this.TWRoleUsers = TWRoleUsers;
    } public Set<W_workflowfile> getWWorkflowfiles() {
    return this.WWorkflowfiles;
    } public void setWWorkflowfiles(Set<W_workflowfile> WWorkflowfiles) {
    this.WWorkflowfiles = WWorkflowfiles;
    } public Set<T_role_user> getTRoleUsers() {
    return this.TRoleUsers;
    } public void setTRoleUsers(Set<T_role_user> TRoleUsers) {
    this.TRoleUsers = TRoleUsers;
    }}