zoukankan      html  css  js  c++  java
  • 关于在DWZ使用ssh后台查询的几种方式

    1.查询所有记录,并以列表形式查询

    DaoImpl

     1 public PageBean queryByPage(String hql, List<Object> listobj, int pageSize, int page) {
     2         try {
     3             SQLQuery query = this.getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery(hql);
     4             final int offset = PageBean.countOffset(pageSize, page);
     5             final int length = pageSize;            
     6             
     7             for(int i =0;i <listobj.size();i++) {
     8                 if(listobj.get(i) instanceof java.sql.Date) {
     9                     query.setDate(i,(Date)listobj.get(i));
    10                 }else {
    11                     query.setParameter(i,listobj.get(i));
    12                 }
    13             }
    14             
    15             query.setFirstResult(offset);  
    16             query.setMaxResults(length); 
    17             List list = query.list();
    18             
    19             List<ZdwhModel> listbd=new ArrayList<ZdwhModel>();
    20             ZdwhModel obj=null;
    21             Object  arrobj[]=null;
    22             for(int i=0;i<list.size();i++){
    23                 arrobj=(Object[])list.get(i);
    24                 obj=new ZdwhModel();
    25                 BigDecimal decimal = (BigDecimal) arrobj[0];
    26                 obj.setId(decimal.longValue());
    27                 obj.setDic_type((String)arrobj[6]);
    28                 obj.setItem_code((String)arrobj[2]);
    29                 obj.setItem_name((String)arrobj[3]);
    30                 obj.setMemo((String)arrobj[4]);
    31                 listbd.add(obj);
    32             }
    33             //count
    34             String countHql="select count(*)   "+hql.substring(hql.indexOf("from"),hql.indexOf("order"));
    35             query=null;
    36             query = this.getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery(countHql);
    37                         
    38             for(int i =0;i <listobj.size();i++) {
    39                 if(listobj.get(i) instanceof java.sql.Date) {
    40                     query.setDate(i,(Date)listobj.get(i));
    41                 }else {
    42                     query.setParameter(i,listobj.get(i));
    43                 }
    44             }
    45             
    46             List listcount = query.list();  
    47            
    48             int allRow = ((BigDecimal)listcount.get(0)).intValue();
    49             final int currentPage = PageBean.countCurrentPage(page);
    50             
    51              int totalPage = PageBean.countTotalPage(pageSize, allRow);//
    52             PageBean pageBean = new PageBean();
    53             pageBean.setPageSize(pageSize);
    54             pageBean.setAllRow(allRow);
    55             pageBean.setTotalPage(totalPage);
    56             pageBean.setCurrentPage(currentPage);
    57             pageBean.setList(listbd);
    58             pageBean.init();    
    59             return pageBean; 
    60             
    61             
    62         } catch (Exception e) {
    63             e.printStackTrace();
    64         }
    65         return null;
    66     }

    ServiceImpl

        public String getHql(Map<String, Object> map,List<Object> listobj){
            String hql = "";
            hql+=" order by id";
            return hql;
        }
        
        public PageBean queryForPage(int pageSize, int page,Map<String, Object> map){
            List<Object> listobj = new ArrayList<Object>();
            String hql = getHql(map, listobj);
            PageBean pageben = zdwhdao.queryByPage(hql, listobj, pageSize, page);
            return pageben;
        }
        

    2.预处理查询、并且查询结果 当确定返回的实例只有一个或者null时 用uniqueResult()方法

    1 public UserModel islogin(String dwdm,String uname, String upwd) {
    2         String hql="from UserModel where uname=? and upwd=? and dwdm=?";
    3         Query query=this.getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(hql);
    4         query.setString(0, uname);
    5         query.setString(1, upwd);
    6         query.setString(2, dwdm);
    7         return(UserModel)query.uniqueResult();
    8     }
  • 相关阅读:
    python运算学习之Numpy ------ 算术运算
    一招教你如何在简历上突出工作经验!
    【软件测试工程师】跳槽到大厂需要具备什么资历和技能?
    LoadRunner性能测试系统学习教程:脚本编写之参数化技术(4)
    Python+Selenium自动化测试教程连载(3)
    测试人员在职场中如何提升自己的沟通能力?
    LoadRunner性能测试系统学习教程:脚本编写之Block(块)技术与参数化(3)
    转行月入10K+的人,背后是付出怎么样的努力呢?
    LoadRunner性能测试系统学习教程:脚本编写之检查点函数(2)
    Python+Selenium自动化测试教程连载(2)
  • 原文地址:https://www.cnblogs.com/xkl520xka/p/6178539.html
Copyright © 2011-2022 走看看