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