有个学生表stu{stuid,stuname }题目表sub{sid,stuid,subname}
sub中:
<many-to-one name="stu" class="hibernate.model.Stu" fetch="join" lazy="false">
<column name="stuid" />
</many-to-one>stu中为 :
<set inverse="true" name="sub" sort="unsorted">
<key>
<column name="stuid"/>
</key>
<one-to-many class="hibernate.model.Sub"/> </set>
我想通过一个表格显示出所有学生信息,但是我不知道怎样显示出该学生是否选了题目,也就是怎样确定学生在题目表里是否有自己的stuid存在,存在的话我的表格中就显示该生在题目表中所对应的题目。目前我只查找了学生这个表,所以只得到学生个人信息而并不能得到自己的题目信息。如果没有题目就显示无,有的话就该显示题目名称,不知道怎么来,请大家帮忙!
sub中:
<many-to-one name="stu" class="hibernate.model.Stu" fetch="join" lazy="false">
<column name="stuid" />
</many-to-one>stu中为 :
<set inverse="true" name="sub" sort="unsorted">
<key>
<column name="stuid"/>
</key>
<one-to-many class="hibernate.model.Sub"/> </set>
我想通过一个表格显示出所有学生信息,但是我不知道怎样显示出该学生是否选了题目,也就是怎样确定学生在题目表里是否有自己的stuid存在,存在的话我的表格中就显示该生在题目表中所对应的题目。目前我只查找了学生这个表,所以只得到学生个人信息而并不能得到自己的题目信息。如果没有题目就显示无,有的话就该显示题目名称,不知道怎么来,请大家帮忙!
解决方案 »
- HTTP POST 发送文件时收不到返回.
- hibernate报错
- struts2费解的问题
- struts整合了spring,怎样配置多个controller?
- hibernate 连接SQLServer2000 多个数据库 怎么设置 急!!!
- 关于在eclipse中使用Hibernate Synchronizer的问题!!!
- 如何在websphere中启用Java 2 Security ??或者如果在webservice中加访问认证??
- findForward的jsp页面的图片不显示?
- 关于JDBC数据库连接的问题
- 一个EJB的小问题
- 看一下我的Tomcat启动信息,帮忙解决
- J2EE团队开发用什么工具?
.setString(0, "u001").uniqueResult();
之后遍历你的集合输出就可以得到和学生关联的选题了
public class ShowAction extends ActionSupport {
@Override
public String execute() throws Exception {
StudentsPageUtil page = new StudentsPageUtil();
String hql="from Stu";这样我在页面该怎么去该学生所选的题目名称?
list = page .QueryList(hql);
this.t_totalpage=page.totalPage;
this.currentpage=page.currentPage;
return SUCCESS ;
}
get() set(0).....
Stu stu=(Stu)s.createQuery("from Stu u where u.stuid=?")
.setString(0, "u001").uniqueResult();
之后遍历你的集合输出就可以得到和学生关联的选题了 请问这段代码我该在哪写?我不需要传stuid了吧?麻烦您再说得详细一点,谢谢
把学生查出来,得到学生对象以后,直接用getQuestions()方法就可以得到该集合就是该生所选的题目。
这就是Hibernate的好处,不用考虑数据库结构,面向对象的方法直观得得到想要的结果。
通常这种操作会遇到session已经关闭的异常。
这是因为查学生的时候没有把题目查出来。在查学生session关闭前访问一下学生的题目。就可以了。通过“from Stu”HQL语句得到List<Stu>。遍历里面每个学生,使用学生对象的getQuestions()方法来得到题目的集合