Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- final Collection<String> parts = buildQueryParts( dbObj );
- if ( parts.isEmpty() ) { return ImmutableList.of(); }
- final String query = "SELECT " + columnNames + " FROM " + dbObj.getTableName() + " WHERE " + join( parts, " AND " );
- return result = simpleJdbcTemplate.query( query, new BeanPropertyRowMapper<DbObj>( dbObj.getClass() ), new BeanPropertySqlParameterSource( dbObj ) );
- private static final Collection<String> buildQueryParts( final LocaDbObj dbObj ) {
- return transform( filter( dbObj.getFieldNames(), new HasValue( dbObj.toMap() ) ), new BuildPart( dbObj ) );
- }
- private static final class HasValue implements Predicate<String> {
- private final Map<String, Object> map;
- public HasValue( final Map<String, Object> map ) {
- this.map = map;
- }
- public boolean apply( final String propName ) {
- return map.get( propName ) != null;
- }
- }
Add Comment
Please, Sign In to add comment