"" JPA : DynamicQueryBuilder
, , .
pojo!!! , !
, !
= ();
bank.setId(12L);
bank.setAchCode( "1213" );
bank.setCbeCode( "1234" );
bank.setStatus( (1L));
bank.setAchShortName( "121" );
ids = ArrayList();
ids.add(1);
ids.add(2);
ids.add(3);
ids.add(4);
ids.add(5);
cbeCodes = new ArrayList();
cbeCodes.add( "1111" );
cbeCodes.add( "2222" );
DynamicQueryBuilder queryDyncBuilder1 = DynamicQueryBuilder.Builder(null).select(bank).withOperType(Operator.OperType.AND). withAdvancedParam ( "cbeCode", LIKE, PERCENT_AROUND).withAdvancedParam( "id", IN, ids) .withAdvancedParam( "achCode", BETWEEN, cbeCodes).withAdvancedParam( "achShortName", GT) .orderBy( "id" ). orderBy ( "cbeCode", true).orderBy( "status.code", true).build();
System.out.println(queryDyncBuilder1.getQueryString());
, JPQL:
SELECT b
FROM Bank b
WHERE b.status = :status
AND b.cbeCode LIKE :cbeCode
AND b.achShortName > :achShortName
AND b.id IN :id
AND (b.achCode BETWEEN :achCodeFrom AND :achCodeTo)
ORDER BY b.status.code DESC, b.id ASC, b.cbeCode DESC