首页>代码>Spring4+Spring data Jpa整合+自定义Repository+Maven多模块(带例子、分页)项目实例>/hotel/hotel-sys/src/main/java/com/i5018/common/dao/GenericRepository.java
package com.i5018.common.dao;

import java.io.Serializable;
import java.util.LinkedHashMap;

import javax.persistence.Query;

import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.NoRepositoryBean;

import com.i5018.common.util.QueryResult;

/**
 * 针对spring data jpa所提供的接口{@link JpaRepository}再次扩展
 * @author lmk
 * @NoRepositoryBean是必须的
 */

@NoRepositoryBean
public interface GenericRepository<T, ID extends Serializable> extends
		JpaRepository<T, ID> {

	/**
	 * 
	 * 设置query的参数
	 * @param query
	 *            查询对象
	 * @param queryParams
	 *            参数
	 */

	public void setQueryParams(Query query, Object[] queryParams);

	/**
	 * 
	 * 组装ORDER BY 语句
	 * @param orderby
	 * @return
	 */

	public String buildOrderby(LinkedHashMap<String, String> orderby);

	/**
	 * 
	 * 获取实体名
	 * @param entityClass
	 * @return
	 */

	public String getEntityName(Class<T> entityClass);

	/**
	 * 
	 * jpql语句查询
	 * @param entityClass
	 * @param whereSql
	 * @param queryParams
	 * @param orderby
	 * @param pageable
	 * 
	 * @return
	 */

	public QueryResult<T> getScrollDataByJpql(Class<T> entityClass,
			String whereJpql, Object[] queryParams,

			LinkedHashMap<String, String> orderby, Pageable pageable);

	/**
	 * 
	 * sql语句查询
	 * @param sql
	 * @param queryParams
	 * @param pageable
	 * @return
	 */

	public QueryResult<T> getScrollDataBySql(String sql, Object[] queryParams,
			Pageable pageable);

}
最近下载更多
lyw18271800260  LV10 2023年3月27日
人工智能4708  LV11 2022年3月13日
253702090  LV3 2021年8月15日
912299793  LV21 2020年10月12日
2410068425  LV23 2020年6月17日
氪氪超爱氪氪  LV10 2020年1月14日
huilenet  LV15 2019年12月31日
SumJFor  LV4 2019年12月31日
1211413075  LV14 2019年12月24日
ZHX_Lucien  LV3 2019年9月26日
最近浏览更多
lyw18271800260  LV10 2023年3月27日
werqjkl  LV5 2022年9月30日
testuser1234567  LV24 2022年5月23日
人工智能4708  LV11 2022年3月13日
fengshengtian  LV8 2022年2月25日
ZiruiSong  LV7 2022年1月4日
东方星空  LV1 2021年8月6日
OMITUUID  LV6 2021年7月7日
徐万强  LV9 2021年6月2日
860595563  LV15 2021年5月18日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友