Spring Boot自定义Mapper的SQL语句


代码如下:
先创建一个Provider类:

public class RptEbankFsymtTranflowingProvider {
	
	public String select(String orgId, String startDate, String endDate, String merId) {
		String sql = "select * from RPT_EBANK_FSYMT_TRANFLOWING where 1=1";
		if (orgId != null) {
			sql += " and ORG_ID=#{orgId}";
		}
		if (startDate != null) {
			sql += " and DATA_DT>=#{startDate}";
		}
		if (endDate != null) {
			sql += " and DATA_DT<=#{endDate}";
		}
		if (merId != null) {
			sql += " and MER_ID=#{merId}";
		}
		return sql;
	}
}

然后在代码中类似如下使用它:

@Mapper
public interface RptEbankMerchantDetailMapper {
	// 查询所有数据
    @Select("select * from RPT_EBANK_MERCHANT_DETAIL")
    List<RptEbankMerchantDetail> getAllRptEbankMerchantDetail();
    
    @SelectProvider(method = "select", type = RptEbankMerchantDetailProvider.class)
    List<RptEbankMerchantDetail> getRptEbankMerchantDetail(@Param("orgId") String orgId, 
    															@Param("startDate") String startDate, 
    															@Param("endDate") String endDate, 
    															@Param("merId") String merId);
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM