posts - 5,  comments - 1,  trackbacks - 0

          這是我以前BLOG的東東,寫于2005年初做用戶\單位管理模塊的那個時期



          單位代碼是由行政區劃+序號組成的,所以不好用序列,但我要取出當前最大的一個單位序號,因此我在TDWDM.HBM.XML中加上這段HSQL:
          ??? <query name="maxdwdm1">
          ????? <![CDATA[
          ??????? select max(substr(tdwdm.ccode,7,2)) from com.sugem.appAdmin.hbm.Tdwdm as tdwdm
          ????? ]]>
          ??? </query>

          Java類中這樣用:
          ??? public String findByMaxdw1Code() throws HibernateDaoException {
          ??????? Session sess = this.getSession();
          ??????? try {
          ??????????? Query query = sess.getNamedQuery("maxdwdm1");
          ??????????? //如果HSQL中有參數的話就這樣用setParameter
          ??????????? Object results = (Object) query.uniqueResult();
          ??????????? return (String) results;
          ??????? } catch (HibernateException he) {
          ??????????? throw new HibernateDaoException("通過單位id查找單位時出錯" + he.getMessage(),?he);
          ??????? }
          ??? }

          還有一種情況,我要得到用戶沒有的權限,可以這樣用:

          ??? public List findOutUserAuthByUserid(String userid) throws AppException {
          ??????? Session s = this.initSession();
          ??????? TuserauthorityDao dao = new TuserauthorityDao(s);
          ??????? try {
          ??????????? List l = dao.find("from com.sugem.appAdmin.hbm.Tappywlx as ywlx "
          ????????????????????????????? +"where ywlx.ccode not in "
          ????????????????????????????? +"(select userauth.cywlx "
          ????????????????????????????? +"from com.sugem.appAdmin.hbm.Tuserauthority as userauth "
          ????????????????????????????? + "where userauth.cuserid='" + userid + "')");
          ??????????? this.closeSession(s);
          ??????????? return l;
          ??????? } catch (HibernateDaoException he) {
          ??????????? this.closeSession(s);
          ??????????? throw new AppException("查找組數據findOutUserAuthByUserid時出錯:" +
          ?????????????????????????????????? he.getMessage());
          ??????? }
          ??? }


          現在看來,hibernateHSQL的確沒有ibatis的方便,現在有時臨時做一些報表我還是喜歡采用以前老早用的org.apache.commons.beanutils.RowSetDynaClass類......
          posted on 2007-02-01 15:57 小數點 閱讀(588) 評論(0)  編輯  收藏 所屬分類: 工作
          主站蜘蛛池模板: 郁南县| 湘潭市| 惠水县| 和田县| 北碚区| 安义县| 拉萨市| 定州市| 蒙阴县| 宣威市| 读书| 乃东县| 仲巴县| 改则县| 花莲县| 天水市| 张北县| 刚察县| 五寨县| 剑河县| 琼海市| 莱西市| 常德市| 青田县| 肥乡县| 万宁市| 山东省| 精河县| 青州市| 盈江县| 兰溪市| 城市| 东辽县| 温泉县| 高阳县| 潍坊市| 东阿县| 岑溪市| 通江县| 延川县| 小金县|