补充一下,我对应的User类为
public class User extends BaseObject{
private Integer userID;
private Integer roleID;
private String userName;
private String userDept;
private Date userTerm;
private String userState;
private String userEnablePersonality;
private String userDescription;
......
}如果分不够,我还会加
关键是大家能帮我解决问题
非常感谢

解决方案 »

  1.   

    创建User类,roleID设置为2,然后使用hibernateTemplate的findbyXXX方法就能找回来
      

  2.   

    getHibernateTemplate().find(User.class,new Integer[]{1});
      

  3.   

    楼上的即可。另外你也可以用getSession来得到进行查询。spring的配置文件中有sessionFactory,将sessionFactory直接作为Hibernate来用即可。
      

  4.   

    /**
     * 函数说明:获得对象
     * 参数说明: 对象ID
     * 返回值:角色对象
     */
    public Role getById(String id) {
    return (Role)this.getHibernateTemplate().get(Role.class, id);
    }
      

  5.   

    哦,弄错了,我的是从role表中查询。
      

  6.   

    可以这样写:
    /**
     * 函数说明:获得所有对象
     * 参数说明:角色ID 
     * 返回值:所有对象
     */
    public List<User> getRoleById(String roleId) {
    return this.getHibernateTemplate().find("from User as u where u.roleId=?",roleId);
    }
      

  7.   

    其实Lz这种设计表是有问题的,最好有个userrole中间表对应两者之间的关系。这样才能很好的体现用户-角色之间的多对多关系。
      

  8.   

    其实Lz这种设计表是有问题的,最好有个userrole中间表对应两者之间的关系。这样才能很好的体现用户-角色之间的多对多关系。
      
      

  9.   

    还有一个问题就是:
    千山鸟飞绝提到的有个userrole中间表对应两者之间的关系。
    我想了一下,因为是多对多的关系,所以其实这个userrole表还是会很大的
    比如说这样
    用户号   角色号
    1        4
    1        2
    ....2        3
    3        3
    ....其实到时候由于一个用户可以对应多个角色,一个角色又会有多个用户,所以最后这个中间表也是会很大的
    不知道我说的对不对呢,呵呵