现问题如下:
学生表 sid(主键) ;sname;
老师表 tid(主键) ;tname;
在老师类中 private Set<Student> students; //对象组合
在老师的hbm.xml配置文件中配置
<set name="students" table="STUDENT">
<key>
<column name="SID" />
</key>
<one-to-many class="com.icar.entities.Student" />
</set>
第一次运行后会在服务器中自动生成两张表,在teacher表中多加了一列 SID(外键)(但是在老师类中是没有这个属性的,只是数据库中通过映射配置的外键关联自动生成的一列)
那么 若现在我有老师的tid号想查找他的所有学生。该怎样写HQL语句或者用什么方法可以达到效果呢?
学生表 sid(主键) ;sname;
老师表 tid(主键) ;tname;
在老师类中 private Set<Student> students; //对象组合
在老师的hbm.xml配置文件中配置
<set name="students" table="STUDENT">
<key>
<column name="SID" />
</key>
<one-to-many class="com.icar.entities.Student" />
</set>
第一次运行后会在服务器中自动生成两张表,在teacher表中多加了一列 SID(外键)(但是在老师类中是没有这个属性的,只是数据库中通过映射配置的外键关联自动生成的一列)
那么 若现在我有老师的tid号想查找他的所有学生。该怎样写HQL语句或者用什么方法可以达到效果呢?
反向生成有什么区别么? 现在我数据库里的Strudent表示 sid(主键),sname,老师表是tid(主键),tname,sid。但是我的老师实体类中没有sid这个属性啊,我Hql查询语句传了一个含sid的student对象过来。该怎么查?
反向生成有什么区别么? 现在我数据库里的Strudent表示 sid(主键),sname,老师表是tid(主键),tname,sid。但是我的老师实体类中没有sid这个属性啊,我Hql查询语句传了一个含sid的student对象过来。该怎么查?区别在于实现方式不同,但是结果都是一样的,你到时候 老师类里面会有学生对象,这个不用我说吧
还有,你们用过hibernate反向生成么? 或者用javaBean小工具也行
http://blog.csdn.net/wangpeng047/article/details/6877720
反向生成有什么区别么? 现在我数据库里的Strudent表示 sid(主键),sname,老师表是tid(主键),tname,sid。但是我的老师实体类中没有sid这个属性啊,我Hql查询语句传了一个含sid的student对象过来。该怎么查?区别在于实现方式不同,但是结果都是一样的,你到时候 老师类里面会有学生对象,这个不用我说吧
还有,你们用过hibernate反向生成么? 或者用javaBean小工具也行
http://blog.csdn.net/wangpeng047/article/details/6877720没有用过诶,难道这种方式生成的 就不能查询吗?
好吧 ,我搞反了 是tid的主键给了student做外键。现在问题是 我有存有tid的teacher对象,要查他的学生,该怎么查啊?
反向生成有什么区别么? 现在我数据库里的Strudent表示 sid(主键),sname,老师表是tid(主键),tname,sid。但是我的老师实体类中没有sid这个属性啊,我Hql查询语句传了一个含sid的student对象过来。该怎么查?区别在于实现方式不同,但是结果都是一样的,你到时候 老师类里面会有学生对象,这个不用我说吧
还有,你们用过hibernate反向生成么? 或者用javaBean小工具也行
http://blog.csdn.net/wangpeng047/article/details/6877720这个和正反向生成应该没什么关系的,我只是要用HQL语句根据teacher的tid去查询他的学生而已。
有啊
<set name="students" table="STUDENT">
<key>
<column name="TID" />
</key>
<one-to-many class="com.icar.entities.Student" />
</set>
有一对多映射,在运行之后,会在数据库的student表自动生成一列tid,问题是我的实体类里没有这一属性,那么我要是想用hql查询语句就不知道用什么条件判断了