private static AbstractJdbcPersonAttributeDao createJdbcPersonAttributeDao(final JdbcPrincipalAttributesProperties jdbc) {
        val url = SpringExpressionLanguageValueResolver.getInstance().resolve(jdbc.getUrl());
        val sql = SpringExpressionLanguageValueResolver.getInstance().resolve(jdbc.getSql());
        if (jdbc.isSingleRow()) {
            LOGGER.debug("Configured single-row JDBC attribute repository for [{}]", url);
            val singleRow = new SingleRowJdbcPersonAttributeDao(JpaBeans.newDataSource(jdbc), sql);
            return configureJdbcPersonAttributeDao(singleRow, jdbc);
        }
        LOGGER.debug("Configured multi-row JDBC attribute repository for [{}]", url);
        val jdbcDao = new MultiRowJdbcPersonAttributeDao(JpaBeans.newDataSource(jdbc), sql);
        LOGGER.debug("Configured multi-row JDBC column mappings for [{}] are [{}]", url, jdbc.getColumnMappings());
        jdbcDao.setNameValueColumnMappings(jdbc.getColumnMappings());
        return configureJdbcPersonAttributeDao(jdbcDao, jdbc);
    }
New jdbc attribute repository dao list.

@param properties the properties
@return the list
support/cas-server-support-jdbc-authentication/src/main/java/org/apereo/cas/jdbc/JdbcPersonAttributeUtils.java