您的位置:首页 > 编程语言 > Java开发

JAVA DAO层 对数据库操作常用方法(转)

2015-03-25 11:34 615 查看


第一种:   List<Map<String, Object>>


1、不带参数的

[java] view
plaincopy

<span style="font-size:18px">   /** 

     * @return 

     * @throws SQLException 

     */  

    @SuppressWarnings("unchecked")  

    public List<Map<String, String>> getProjectModule() throws SQLException   

    {  

        StringBuffer  sql = new StringBuffer();  

        sql.append("select ........ ........,");  

        sql.append("      ........ ........");  

        sql.append(" from dbo.........");  

        sql.append(" where fileuseflg='0' ");  

  

        Query query = this.getSession().createSQLQuery(sql.toString())  

                .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);  

        return query.list();  

    }</span>  


2、带参数的

[java] view
plaincopy

      

<span style="font-size:18px">   /** 

     * @param custId 

     * @param page 

     * @param rows 

     * @return 

     */  

    @SuppressWarnings("unchecked")  

    public List<Map<String, Object>> getCustomerList(String regieId, int page, int rows) throws SQLException{  

        StringBuffer sql = new StringBuffer();  

        sql.append("SELECT a.*,b.CUST_NAME ");  

        sql.append(" FROM ........  ");  

        sql.append(" WHERE a.CUSTOM_ID = b.CUSTOM_ID ");  

        sql.append(" AND a.VISIT_REGION_ID =:regieId ");  

        sql.append(" ORDER BY a.CUST_REGIE_CODE ");  

          

        return this.getSession().createSQLQuery(sql.toString()).setParameter("regieId", regieId)  

                    .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)  

                    .setFirstResult((page-1)*rows).setMaxResults(rows).list();  

    }</span>  

        sql.append(" AND a.VISIT_REGION_ID =:regieId ");            

        return this.getSession().createSQLQuery(sql.toString()).setParameter("regieId", regieId)

        跟 sql.append(" AND a.VISIT_REGION_ID ='"+regieId+"' "); 效果一样,如:

[java] view
plaincopy

<span style="font-size:18px">   /** 

     * @param projectId 

     * @param documentID 

     * @return 

     * @throws SQLException 

     */  

    @SuppressWarnings("unchecked")  

    public List<Map<String, Object>> fillDgPaddingListData(String projectId,  

            String documentID) throws SQLException {  

        System.out.println("编辑操作");  

        StringBuffer sql = new StringBuffer();  

        sql.append("SELECT a.*  ");  

        sql.append("FROM   ........ a ");  

        sql.append("  left  join  dbo.XLJXC_PROJECT   b   ");  

        sql.append("   on  a.subProjectID=b.PROJECT_ID   ");  

        sql.append("   WHERE  projectID = '" + projectId  

                + "' and  documentID='" + documentID + "' ");  

  

        Query query = this.getSession().createSQLQuery(sql.toString())  

                .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);  

        return query.list();  

    }</span>  


第二种  List<String>

[java] view
plaincopy

<span style="font-size:18px">   /** 

     * @param documentId 

     * @return 

     */  

    @SuppressWarnings("unchecked")  

    public List<String> findFilePathBySrcId(String srcId)   

    {  

        StringBuffer  sql = new StringBuffer();  

        sql.append("SELECT ........ ");  

        sql.append("FROM   dbo......... ");  

        sql.append("WHERE  srcID = '"+srcId+"' ");  

          

        List<String> list=this.getSession().createSQLQuery(sql.toString()).list();  

        return list;  

    }</span>  


第三种 String

[java] view
plaincopy

<span style="font-size:18px">   /** 

     * @param custId 

     * @return 

     */  

      

    public String getCustomerCount(String custId) throws SQLException{  

        StringBuffer sql = new StringBuffer();  

        sql.append("SELECT count(*)");  

        sql.append(" FROM ........cc_customer b  ");  

        sql.append(" WHERE a.CUST_REGIE_CODE = b.CUST_CODE ");  

        sql.append(" AND a.VISIT_REGION_ID =:custId ");  

          

        return this.getSession().createSQLQuery(sql.toString()).setParameter("custId", custId).list().get(0).toString();  

    }</span>  

[java] view
plaincopy

<span style="font-size:18px">return query.list().get(0)==null?"": query.list().get(0).toString();  判断</span><span style="font-size:18px">query.list().get(0)</span><span style="font-size:18px">是否为空 如:</span>  

[java] view
plaincopy

<span style="font-size:18px">   public String getComment(String id) throws SQLException{  

        StringBuffer sql = new StringBuffer();  

        sql.append("select COMMENT ");  

        sql.append(" from ........ ");  

        sql.append(" where id='"+id+"'");  

        Query query = this.getSession().createSQLQuery(sql.toString());  

        return query.list().get(0)==null?"": query.list().get(0).toString();  

 }</span>  


第四种 不带返回值

[java] view
plaincopy

<span style="font-size:18px">   /** 

     * @param ent 

     * @throws SQLException 

     * 插入 

     */  

    public void saveVisitCustormer(Work135DayVisitCust ent) throws SQLException{  

        StringBuffer sql = new StringBuffer();  

        sql.append("insert into DB2INST1.WORK135_DAY_VISIT_CUST ");  

        sql.append("........ ");  

        sql.append(" ...... ");  

  

        Query query = this.getSession().createSQLQuery(sql.toString());  

        query.executeUpdate();  

        //this.getSession().save(ent);  

    }  

    /** 

     * @throws SQLException 

     * 删除 

     */  

    public void delectDictByItemId(String itemId,String personCode,String orgCode)throws SQLException{  

        StringBuffer sql = new StringBuffer();  

        sql.append("delete from ........");  

        sql.append(" where evaluate_Item_Id = '"+itemId+"' and person_Code ='"+personCode+"' and org_Code ='"+orgCode+"'");  

        Query query = getSession().createSQLQuery(sql.toString());  

        query.executeUpdate();  

    }</span>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java dao