繼續之前那個復習,繼續那3張表,在此前已經可以聯級插入數據,現在來聯級檢索出3張表的數據,假設要求查出名字為“lzj"的學生在3張表里的所有記錄。使用inner join操作。

          TstudentDAO:

            public List findall(String name){
            Session session =this.getSession();
            Transaction tx = null;
            Query query = session.createQuery("select t.name,t.email,s.name,tt.times from TStudent t join t.TSubjectses s join t.TTests tt where t.name=:name");
            query.setString("name", name);
            List result = query.list();
               List templist = new ArrayList();
               for (Iterator it = result.iterator();it.hasNext();){
                Object[] row=(Object[])it.next();
                Map mm = new HashMap();
                mm.put("name", (String)row[0]);
                mm.put("email", (String)row[1]);
                mm.put("sname", (String)row[2]);
                mm.put("times", (Integer)row[3]);
                templist.add(mm);
               }
               return templist;
              }


          action里只需要一句話:
          List results =  tstudentDAO.findall("lzj");
          并將結果返回給struts的jsp頁面:
          if(results!=null){
             HttpSession session=request.getSession();
                   session.setAttribute("results",results);
                   return mapping.findForward("ok");


          jsp頁面接受,使用struts標簽:

           <logic:present name="results">
               <table border="1">
              <logic:iterate id="element" name="results">
              <tr>
                <td width="100"><bean:write name="element" property="name"/></td>
             <td width="100"><bean:write name="element" property="email"/></td>
                <td width="100"><bean:write name="element" property="sname"/></td>
                      <td width="100"><bean:write name="element" property="times"/></td>

          <td id="result"></td>
             </tr>
          </logic:iterate>
           </logic:present>



          posted on 2008-06-26 23:10 lzj520 閱讀(333) 評論(0)  編輯  收藏 所屬分類: 個人學習日記 、Hibernate
          主站蜘蛛池模板: 内乡县| 防城港市| 沂南县| 五寨县| 甘南县| 临潭县| 东兴市| 阿尔山市| 乌海市| 广东省| 克拉玛依市| 西乌珠穆沁旗| 陕西省| 平陆县| 德庆县| 荔波县| 鹤庆县| 建平县| 北碚区| 射洪县| 青铜峡市| 铜山县| 商都县| 普洱| 读书| 仁布县| 云安县| 正安县| 江陵县| 漳州市| 安福县| 安义县| 永安市| 和林格尔县| 金川县| 临颍县| 和田市| 阜康市| 河间市| 平阴县| 江山市|