`
收藏列表
标题 标签 来源
baseDao
package dao;

import java.io.Serializable;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;

import org.apache.log4j.Logger;
import org.hibernate.Query;
import org.hibernate.StatelessSession;
import org.hibernate.Transaction;
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;
import org.springframework.orm.hibernate3.SessionFactoryUtils;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import eo.common.PageResult;

public class BaseUserDao extends HibernateDaoSupport {
	/** log4j instance. */
	private Logger log = Logger.getLogger(this.getClass());
	//private Connection con;
//	private SimpleJdbcTemplate jdbcTemplate ;
	/**
	 * 获取多条数据
	 * @param sql 查询语句
	 * @return 查询结果
	 */
	@SuppressWarnings("unchecked")
	List find(String sql) {
		this.logParams(sql,null);
		return getHibernateTemplate().find(sql);
	}

	/**
	 * 带有参数查询,获取多条数�?
	 * @param sql 查询语句
	 * @param parms 查询参数
	 * @return 查询结果
	 */
	@SuppressWarnings("unchecked")
	List find(String sql, Object[] parms) {
		logParams(sql, parms);
		return getHibernateTemplate().find(sql, parms);
	}

	/**
	 * 带有参数查询,获取�?�的记录�?
	 * @param hql 查询语句
	 * @param parms 查询参数�?
	 * @return 记录�?
	 */
	long getRecordsCount(String hql, Object... parms) {
		logParams(hql, parms);
		Query queryCount = getSession().createQuery("select count(*) " + hql);
		if (parms != null) {
			for (int i = 0; i < parms.length; i++) {
				queryCount.setParameter(i, parms[i]);
			}
		}
		long totalRecords = -1;
		Object count = queryCount.iterate().next();
		if (count != null) {
			totalRecords = ((Long) count).longValue();
		}
		return totalRecords;
	}

	/**
	 * 根据jdbcSql得到记录总数
	 * @param sql
	 * @param params
	 * @return
	 * @throws Exception
	 */
	long getCountsWithSql(String sql, Object... params) {
		logParams(sql, params);
		Query queryCount = getSession().createQuery(sql);
		if (params != null) {
			for (int i = 0; i < params.length; i++) {
				queryCount.setParameter(i, params[i]);
			}
		}
		long totalRecords = -1;
		Object count = queryCount.iterate().next();
		if (count != null) {
			totalRecords = ((Long) count).longValue();
		}
		return totalRecords;
	}

	/**
	 * 查询结果是一个字符串.
	 * @param hsql 查询语句
	 * @return 单个字符�?
	 */
	@SuppressWarnings("unchecked")
	String getSingleHSQLString(String hsql) {
		Iterator it = getHibernateTemplate().iterate(hsql);
		if (it.hasNext()) {
			Object l = (Object) it.next();
			if (l != null) {
				return l.toString();
			}
		}
		return null;
	}

	/**
	 * 获取单条数据
	 * @param clazz Class
	 * @param s Serializable
	 * @return Object
	 */
	@SuppressWarnings("unchecked")
	Object getSingleObject(Class clazz, Serializable s) {
		return getHibernateTemplate().get(clazz, s);
	}

	/**
	 * 获取单条数据
	 * @param clazz Class
	 * @param s Serializable 
	 * @return Object
	 */
	@SuppressWarnings("unchecked")
	Object loadSingleObject(Class clazz, Serializable s) {
		return getHibernateTemplate().load(clazz, s);
	}

	/**
	 * 增加记录
	 * @param obj 待保存对�?
	 */
	void saveSingleObject(Object obj) {
		getHibernateTemplate().save(obj);
	}

	/**
	 * 增加或�?�修改记�? 
	 * @param obj 待保存或修改对象
	 */
	void saveOrUpdateSingleObject(Object obj) {
		getHibernateTemplate().saveOrUpdate(obj);
	}

	/**
	 * 批量增加或�?�修改记�? 
	 * @param obj 待保存或修改对象
	 */
	@SuppressWarnings("unchecked")
	void saveOrUpdateAll(Collection obj) {
		getHibernateTemplate().saveOrUpdateAll(obj);
	}

	/**
	 * 修改记录
	 * @param obj 待修改对�?
	 */
	void update(Object obj) {
		getHibernateTemplate().update(obj);
	}

	/**
	 * 删除记录
	 * @param obj 待删除对�?
	 */
	void delete(Object obj) {
		getHibernateTemplate().delete(obj);
	}

	/**
	 * 删除�?选记�?
	 * @param obj 待删除对象集�?
	 */
	@SuppressWarnings("unchecked")
	void deleteAll(Collection obj) {
		getHibernateTemplate().deleteAll(obj);
	}

	/**
	 * 根据JDBC得到查询出来的一个�??.
	 * @param sql
	 * @return
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	Object getCountByJDBCsql(String sql,Object...params) {
		Object totalRecords =null;
		this.logParams(sql, params);
			Query query = getSession().createSQLQuery(sql);
			if (params != null) {
				for (int i = 0; i < params.length; i++) {
					query.setParameter(i, params[i]);
				}
			}
			List lst = query.list();
			if (lst.size()>0) {
				totalRecords = (Object) lst.get(0);
			}
		return totalRecords;
	}
	/**
	 * 根据JDBC得到查询出来的一个�??.
	 * @param sql
	 * @return
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	List getListByJDBChSql(String sql,Object...params) throws Exception {
		this.logParams(sql, params);
		Query query = getSession().createSQLQuery(sql);
		if (params != null) {
			for (int i = 0; i < params.length; i++) {
				query.setParameter(i, params[i]);
			}
		}
		List lst = query.list();
		return lst;
	}

	/**
	 * 得到翻页结果
	 * @param sql
	 *            查询语句
	 * @param params
	 *            客户端Dao类查询参�?
	 * @return 翻页结果
	 */
	@SuppressWarnings("unchecked")
	PageResult getListByPagination(String sql, int startPage, int pageTotal,
			Object... params) {
		//打印信息.
		logParams(sql, params);
		Query query = getSession().createQuery(sql);
		Query queryCount = null;
		queryCount = getSession().createQuery("select count(*) " + sql);
		if (params != null) {
			for (int i = 0; i < params.length; i++) {
				query.setParameter(i, params[i]);
				queryCount.setParameter(i, params[i]);
			}
		}
		int totalRecords = (int) ((Long) queryCount.iterate().next())
				.intValue();
		query.setFirstResult((startPage - 1) * pageTotal);
		query.setMaxResults(pageTotal);
		List list = query.list();
		return new PageResult(totalRecords, list);
	}

	/**
	 * 打印参数信息
	 * @param finalSQL 查询sql语句
	 * @param params 客户端Dao类查询参�?
	 * @param ps PagedStatement
	 */
	private void logParams(String finalSQL, Object[] params) {
		/************打印调试信息�?�?*****************/
		log.info("finalSQL:" + finalSQL);
		if (params != null) {
			for (Object o : params) {
				log.info("params :" + o);
			}
		}
		/************打印调试信息结束*****************/
	}

	/**
	 * 无状态批量删除数据,用于单独的批量删除操作,暂时不能和其它业务统�?进行事务处理
	 * @param entity 实体BEAN
	 * @param idValues 主健值集�?
	 */
	@SuppressWarnings("unchecked")
	void batchDeleteData(Class entity, Collection idValues) {
		String tableName = AnnotationUtils.getMappedTableName(entity);
		String keyColumnName = AnnotationUtils.getMappedKeyColumnName(entity);
		StatelessSession session = getSessionFactory().openStatelessSession();
		String finalSQL = "delete from " + tableName + " where "
				+ keyColumnName + " = :value";
		Query query = session.createSQLQuery(finalSQL);
		Transaction ta = session.getTransaction();
		ta.begin();
		for (Object ob : idValues) {
			query.setParameter("value", ob);
			query.executeUpdate();
		}
		ta.commit();
		session.close();
	}

	int deleteWithJDBCsqL(String sql,Object...params ) {
		SimpleJdbcTemplate jdbcTemplate= this.connection();
		this.logParams(sql, params);
		int a = jdbcTemplate.update(sql, params);
		return a;		
	}
	/**
	 * 根据sql语句来进行update操作
	 * @param sql 传统的jdbc sql语句
	 * @param params 问号参数数组
	 * @return 更新的记录数�?
	 */
	int updateWithJdbcSql(String sql, Object... params) {
		int c = -1;
		this.logParams(sql, params);
		SimpleJdbcTemplate jdbcTemplate= this.connection();
		 c = jdbcTemplate.update(sql, params);
		log.info("updateWithSql更改的记录数量为�?" + c);
		return c;
	}
	/**
	 * 根据sql语句来进行update操作
	 * @param sql 传统的jdbc sql语句
	 * @param params 问号参数数组
	 * @return 更新的记录数�?
	 */
	int updateOldWithJdbcSql(String sql, Object... params) {
		int c = -1;
		this.logParams(sql, params);
		Query query = this.getSession().createSQLQuery(sql);
		if (params != null) {
			for (int i = 0; i < params.length; i++) {
				query.setParameter(i, params[i]);
			}
		}
		 c = query.executeUpdate();
		log.debug("updateWithSql更改的记录数量为�?" + c);
		return c;
	}
	/**
	 * 根据hql语句来进行update操作
	 * @param hql hql语句
	 * @param params 问号参数数组
	 * @return 更新的记录数�?
	 */
	int updateWithHibernateHql(String hql, Object... params) {
		int c = -1;
		this.logParams(hql, params);
		Query query = getSession().createQuery(hql);
		if (params != null) {
			for (int i = 0; i < params.length; i++) {
				query.setParameter(i, params[i]);
			}
		}
		c = query.executeUpdate();
		log.debug("updateWithHql更改的记录数量为�?" + c);
		return c;
	}
	/***
	 * 得到数据库的连接.
	 * @return
	 * @throws SQLException
	 */
	private SimpleJdbcTemplate connection() {
		//if (con ==null || con.isClosed()){
		SimpleJdbcTemplate jdbcTemplate =
            new SimpleJdbcTemplate(SessionFactoryUtils.getDataSource(getSessionFactory()));
			//con =SessionFactoryUtils.getDataSource(this.getSessionFactory()).getConnection();
		return jdbcTemplate;
	}
	
	int delete(String hql, Object... params) {
		logParams(hql, params);
		Query query = getSession().createQuery(hql);
		for (int i=0; i<params.length; i++) {
			query.setParameter(i, params[i]);
		}
		return query.executeUpdate();
	}
	
	//调用存储过程:不返回�??
	void callProcedure(String call,Object...params ) throws Exception{
			SimpleJdbcTemplate jdbcTemplate= this.connection();
			this.logParams(call, params);
			jdbcTemplate.update(call, params);
	}
}
webXml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
	version="2.4">
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath*:beans/**/*.xml</param-value>
	</context-param>
	<context-param>
		<param-name>webAppRootKey</param-name>
		<param-value>renewbs.root</param-value>
	</context-param>
	<context-param>
		<param-name>log4jConfigLocation</param-name>
		<param-value>/WEB-INF/log4j.properties</param-value>
	</context-param>
	
	<listener>
		<listener-class>
			org.springframework.web.util.Log4jConfigListener</listener-class>
	</listener>
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener
			</listener-class>
	</listener>
  <filter>
    <filter-name>doradofilter</filter-name>
    <filter-class>com.bstek.dorado.core.DoradoFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>doradofilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter>
		<filter-name>authenticationFilter</filter-name>
		<filter-class>filter.AuthenticationFilter</filter-class>
		<init-param>
			<param-name>UNCHECK_RESOURCE_LIST</param-name>
			<param-value>
				/common/file-download.jsp;
				/common/file-upload.jsp;
				/login.jsp;
				/org-page.jsp;
				/logInAction.jsp;
				/fileupload.jsp;
				/mainchart.jsp;
				/chart/map.jsp;
				/chart/scatter.jsp;
				/chart/pie.jsp;
				/chart/bar.jsp;
				/chart/chart-contarl.jsp;
				/expLogInAction.jsp;
				/addressBase.jsp;
				/login-find-password.jsp;
				/login-modify-password.jsp
			</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>authenticationFilter</filter-name>
		<url-pattern>*.jsp</url-pattern>
	</filter-mapping>
 <display-name>services</display-name>
	<listener>
		<listener-class>
			org.apache.axis.transport.http.AxisHTTPSessionListener
		</listener-class>
	</listener>

	<servlet>
		<servlet-name>AxisServlet</servlet-name>
		<servlet-class>
			org.apache.axis.transport.http.AxisServlet
		</servlet-class>
	</servlet>

	<servlet>
		<servlet-name>AdminServlet</servlet-name>
		<servlet-class>
			org.apache.axis.transport.http.AdminServlet
		</servlet-class>
		<load-on-startup>100</load-on-startup>
	</servlet>

	<servlet>
		<servlet-name>SOAPMonitorService</servlet-name>
		<servlet-class>
			org.apache.axis.monitor.SOAPMonitorService
		</servlet-class>
		<init-param>
			<param-name>SOAPMonitorPort</param-name>
			<param-value>5001</param-value>
		</init-param>
		<load-on-startup>100</load-on-startup>
	</servlet>
	<!--<servlet>  
       <servlet-name>ScheduleByWeb</servlet-name>  
       <servlet-class>service.schedule.ScheduleByWeb</servlet-class>
       <load-on-startup>2</load-on-startup>  
 </servlet>  -->
	<servlet-mapping>
		<servlet-name>AxisServlet</servlet-name>
		<url-pattern>/servlet/AxisServlet</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
		<servlet-name>AxisServlet</servlet-name>
		<url-pattern>*.jws</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
		<servlet-name>AxisServlet</servlet-name>
		<url-pattern>/services/*</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
		<servlet-name>SOAPMonitorService</servlet-name>
		<url-pattern>/SOAPMonitor</url-pattern>
	</servlet-mapping>

	<session-config>
		<!-- Default to 5 minute session timeouts -->
		<session-timeout>120</session-timeout>
	</session-config>

	<mime-mapping>
		<extension>wsdl</extension>
		<mime-type>text/xml</mime-type>
	</mime-mapping>

	<mime-mapping>
		<extension>xsd</extension>
		<mime-type>text/xml</mime-type>
	</mime-mapping>
	
	
	
  <servlet>
    <servlet-name>doradoservlet</servlet-name>
    <servlet-class>com.bstek.dorado.core.DoradoServlet</servlet-class>
    <load-on-startup>2</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>doradoservlet</servlet-name>
    <url-pattern>*.d</url-pattern>
  </servlet-mapping>

  <!-- uploadfile  
	<servlet>
		<servlet-name>UploadFileAction</servlet-name>
		<servlet-class>servlet.UploadFileAction</servlet-class>
		<load-on-startup>6</load-on-startup>
	</servlet>
	<servlet-mapping>
	  <servlet-name>UploadFileAction</servlet-name>
	  <url-pattern>/fileupload</url-pattern>
  </servlet-mapping>-->
	
	
  <welcome-file-list>
		<welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
  <error-page>
	  <error-code>404</error-code>
	  <location>/building.jsp</location>
  </error-page>
  <error-page>
	  <error-code>500</error-code>
	  <location>/error.jsp</location>
  </error-page>

	<jsp-config>
		<taglib>
			<taglib-uri>http://www.bstek.com/dorado</taglib-uri>
			<taglib-location>/WEB-INF/dorado.tld</taglib-location>
		</taglib>
	</jsp-config>
	
</web-app>
dao
package dao;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

import org.apache.commons.beanutils.BeanUtils;
import org.apache.log4j.Logger;

import eo.common.PageResult;




public class BaseDao extends BaseUserDao{
	Logger log = Logger.getLogger(this.getClass());

	/**
     * 返回实体对象的class名称
     * @param clazz 实体对象
     * @return name
     */
    @SuppressWarnings("unchecked")
	private String getClassEntityName(Class clazz) {
        String name = "";
        if (clazz != null) {
            name = clazz.getSimpleName();
        }
        return name;
    }
	  /**
     * 获取查询语句
     * @param table 实体对象
     * @return 查询语句
     */
    @SuppressWarnings("unchecked")
	private String getHsqlFromStr(Class table) {
        String hsql = "from " + getClassEntityName(table);
        log.debug("hsql = " + hsql);
        return hsql;
    }
    
   /********************以下是各个业务模块可以调用的方法***********************/
	//得到数据的条�?.
    /**
     * 带有参数查询,获取�?�的记录�?
     * @param hql 查询语句
     * @param parms 查询参数
     * @return 记录�?
     */
    public long getCount(String hql, Object[] parms) {
        return super.getRecordsCount(hql, parms);
    }
    
    /**
     * 根据Hibernate sql
     * 带有参数查询,获取�?�的记录�?
     * @param hqlName 查询语句
     * @param params 参数�?
     * @return 记录�?
     */
    public long getCountBySqlName(String hqlSql, Object[] params) {
        return getCount(hqlSql, params);
    }
    /***
     * 根据�?般的jdbc sql得到总数.
     * @param sql
     * @return
     * @throws Exception
     */
    public long getCountWithSql(String sql,Object[] params){
    	return super.getCountsWithSql(sql,params);
    }
    /**
     * 获取�?张表的记录数�?
     * @param table 实体对象
     * @return 记录�?
     */
    @SuppressWarnings("unchecked")
	public long getCountByClass(Class table)  {
        return getCount(getHsqlFromStr(table),null);
    }
    //得到数据的条数END
    //得到表的单条记录.
    /**
     * 获取单条数据
     * @param clazz Class
     * @param s Serializable主键
     * @return Object
     */
    @SuppressWarnings("unchecked")
	public Object get(Class clazz, Serializable s) {
        return super.getSingleObject(clazz, s);
    }

    /**
     * 取得单条数据
     * @param table 实体对象
     * @param code 数据code(主键)
     * @throws Exception
     * @return 单条数据
     */
    @SuppressWarnings("unchecked")
	public Object getData(Class table, Serializable code) {
        return get(table, code);
    }
    /**
     * 获取单条数据
     * @param clazz Class
     * @param s Serializable 
     * @return Object
     */
    @SuppressWarnings("unchecked")
	public Object load(Class clazz, Serializable s) {
        return super.loadSingleObject(clazz, s);
    }
    //得到单条记录END
    
    //得到数据�?.
    /**
     * 获取多条数据
     * @param sql 查询语句
     * @return 查询结果
     */
    @SuppressWarnings("unchecked")
	public List getListData(String sql) {
        return super.find(sql);
    }
    
    /**
     * 带有参数查询,获取多条数�?
     * @param sql 查询语句
     * @param parms 查询参数
     * @return 查询结果
     */
    @SuppressWarnings("unchecked")
	public List getListData(String sql, Object[] parms) {
        return super.find(sql, parms);
    }
    /**
     * 根据表名得到该表的所有数据集.
     * @param table  相应的entity
     * @return �?有数据列�?
     * @throws Exception
     */
    @SuppressWarnings("unchecked")
	public List getListPageAll(Class table) {
        return getListData(getHsqlFromStr(table));
    }
   //得到数据集END
    /**
     * 判断指定code的实体是否存在,如果存在的话,赋值给obj
     * @param obj 实体对象
     * @throws Exception
     * @return 单条数据
     */
    public boolean locate(Object obj) throws Exception {
        Serializable idValue = AnnotationUtils.getVoKeyValue(obj);
        return locate(obj, idValue);
    }
    /**
     * 判断指定code的实体是否存在,如果存在的话,赋值给obj
     * @param obj 实体对象
     * @param code 数据code
     * @throws Exception
     * @return 单条数据
     */
    public boolean locate(Object obj, Serializable code) throws Exception {
        if (obj != null && code != null) {
            Object newEntity = get(obj.getClass(), code);
            if (newEntity != null) {
                BeanUtils.copyProperties(obj, newEntity);
                return true;
            }
        }
        return false;
    }
    //添加数据
    /**
     * 增加数据
     * @param data 数据
     * @throws Exception
     */
    public void addData(Object data) {
    	save(data);
    }
    
    /**
     * 增加记录
     * @param obj 待保存对�?
     */
    public void save(Object obj) {
        super.saveSingleObject(obj);
    }

    /**
     * 修改数据
     * @param data 数据
     * @throws Exception
     */
    public void updateData(Object data) {
    	super.update(data);
    }
    
    /**
     * 增加或�?�修改记�? 
     * @param obj 待保存或修改对象
     */
    public void saveOrUpdate(Object obj) {
        super.saveOrUpdateSingleObject(obj);
    }

    /**
     * 批量增加或�?�修改记�? 
     * @param obj 待保存或修改对象
     */
    @SuppressWarnings("unchecked")
    public void saveOrUpdateBatch(Collection obj) {
        super.saveOrUpdateAll(obj);
    }
    /***
     * 批量添加.
     * @param obj
     */
    @SuppressWarnings("unchecked")
    public void saveAllObject(Collection obj){
    	for (Object date : obj) {
            this.addData(date);
        }
    }
    
    /***
     * 批量删除�?
     * @param obj
     */
    @SuppressWarnings("unchecked")
    public void deleteAllObject(Collection obj){
    	super.deleteAll(obj);
    }
    /**
     * 根据sql语句来进行update操作
     * @param sql 传统的jdbc sql语句
     * @param params 问号参数数组
     * @return 更新的记录数�?
     */
    @SuppressWarnings("unchecked")
    public int updateWithSql(String sql, Object[] params) {
        return super.updateOldWithJdbcSql(sql, params);
    }
    /**
     * 根据hql语句来进行update操作
     * @param hql hql语句
     * @param params 问号参数数组
     * @return 更新的记录数�?
     */
    public int updateWithHql(String hql, Object[] params) {
        return super.updateWithHibernateHql(hql, params);
    }
    /**
     * 判断对象是否为BaseEntity.class.
     * @param data 数据
     * @throws Exception
     */
    public void deleteData(Object data)  {
        // Assert.isInstanceOf(BaseEntity.class, data);
        if (data != null) {
        	super.delete(data);
        }
    }
    /**
     * 批量删除数据
     * @param data 待删除对象集�?
     * @throws Exception
     */
    @SuppressWarnings("unchecked")
    public void deleteBatch(Collection data)  {
        for (Object obj : data) {
            deleteData(obj);
        }
    }
    /**
     * 翻页查询多表或单表查�?.
     * @param sql 查询语句
     * @param startPage 起始�?
     * @param pageSize 每页的最大记录数.
     * @param params 客户端Dao类查询参�?
     * @return 翻页结果
     */
    public PageResult getPageListInfo(String sql,int startPage,int pageSize, Object[] params) {
    	 return super.getListByPagination(sql, startPage, pageSize, params);
     }
	/***
	 * 
	 * �?:这些表名不要用hibernate映射的类.
	 * 根据JDBC修改批处理修改记�?.
	 * @param sql
	 * @return
	 * @throws Exception
	 */
	public int updateByJDBCsql(String sql,Object... params) throws Exception{
		return super.updateWithJdbcSql(sql,params);
	}
	/**
	 * �?:这些表名不要用hibernate映射的类.
	 * 根据JDBC得到第一条记�?.
	 * @param sql
	 * @return
	 * @throws Exception
	 */
	public Object getValueByJDBCsql(String sql,Object[] params)  {
		return super.getCountByJDBCsql(sql,params);
	}
	/***
	 * 根据jdbcSql删除信息.
	 */
	public int deleteByJDBCsqL(String sql,Object...params ) throws Exception{
		return super.deleteWithJDBCsqL(sql, params);
	}
	/**
	 * 根据使用hibenate的JDBC得到查询返回:当含有多个字段时返回List<Object[]>;
	 * @param sql
	 * @return
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	public List getListByJDBChHSql(String sql,Object[] params) throws Exception{
		return super.getListByJDBChSql(sql,  params);
	}
	
	//调用存储过程:不返回�??
	public void callProcedure(String call,Object...params ) throws Exception {
		super.callProcedure(call, params);
	}
	
	/*//获取JDBC 查询语句的ResultSet结果对象 
	public ResultSet getResultSetByJDBCSql(String sql, Object...params) throws Exception {
		return super.getResultSetByJDBCSql(sql, params);
	}*/
}
Global site tag (gtag.js) - Google Analytics