private String getExpressionAttributeName(String association, String attributeName) {
        StringBuilder sb = new StringBuilder();

        if (association.contains(".")) {
            String[] associationParts = association.split(".");

            for (String associationPart : associationParts) {
                sb.append(getExpressionAttributeName(associationPart));
                sb.append('.');
            }
        } else {
            sb.append(getExpressionAttributeName(association));
            sb.append('.');
        }

        return sb.append(getExpressionAttributeName(attributeName)).toString();
    }
private String getExpressionAttributeName ( String association , String attributeName ) { StringBuilder sb = new StringBuilder ( ) ; if ( association . contains ( "." ) ) { String [ ] associationParts = association . split ( "." ) ; for ( String associationPart : associationParts ) { sb . append ( getExpressionAttributeName ( associationPart ) ) ; sb . append ( '.' ) ; } } else { sb . append ( getExpressionAttributeName ( association ) ) ; sb . append ( '.' ) ; } return sb . append ( getExpressionAttributeName ( attributeName ) ) . toString ( ) ; }
-------------------------------------------------------------