diff --git a/src/org/redkale/source/FilterJoinColumn.java b/src/org/redkale/source/FilterJoinColumn.java index 43b12e563..14d141623 100644 --- a/src/org/redkale/source/FilterJoinColumn.java +++ b/src/org/redkale/source/FilterJoinColumn.java @@ -35,9 +35,9 @@ public @interface FilterJoinColumn { * 例如: SELECT a.* FROM user a INNER JOIN record b ON a.userid = b.userid AND a.usertype = b.usertype * 那么注解为: @FilterJoinColumn(table = Record.class, columns = {"userid", "usertype"}) *

- * columns中的字段名如果不一致,可以将两个字段名用短横-连接成一个字段名 + * columns中的字段名如果不一致,可以将两个字段名用=连接成一个字段名 * 例如: SELECT a.* FROM user a INNER JOIN record b ON a.userid = b.buyerid AND a.usertype = b.usertype - * 那么注解为: @FilterJoinColumn(table = Record.class, columns = {"userid-buyerid", "usertype"}) + * 那么注解为: @FilterJoinColumn(table = Record.class, columns = {"userid=buyerid", "usertype"}) * * @return 关联字段 */ diff --git a/src/org/redkale/source/FilterJoinNode.java b/src/org/redkale/source/FilterJoinNode.java index eb2468f57..4dfc22659 100644 --- a/src/org/redkale/source/FilterJoinNode.java +++ b/src/org/redkale/source/FilterJoinNode.java @@ -130,7 +130,7 @@ public class FilterJoinNode extends FilterNode { final Predicate inner = filter; final String[][] localJoinColumns = new String[joinColumns.length][2]; for (int i = 0; i < joinColumns.length; i++) { - int pos = joinColumns[i].indexOf('-'); + int pos = joinColumns[i].indexOf('='); if (pos > 0) { localJoinColumns[i] = new String[]{joinColumns[i].substring(0, pos), joinColumns[i].substring(pos + 1)}; } else { @@ -286,11 +286,11 @@ public class FilterJoinNode extends FilterNode { if (node.joinClass == null) return null; StringBuilder sb = new StringBuilder(); String[] joinColumns = node.joinColumns; - int pos = joinColumns[0].indexOf('-'); + int pos = joinColumns[0].indexOf('='); sb.append(" INNER JOIN ").append(node.joinEntity.getTable(node)).append(" ").append(joinTabalis.get(node.joinClass)) .append(" ON ").append(info.getSQLColumn("a", pos > 0 ? joinColumns[0].substring(0, pos) : joinColumns[0])).append(" = ").append(node.joinEntity.getSQLColumn(joinTabalis.get(node.joinClass), pos > 0 ? joinColumns[0].substring(pos + 1) : joinColumns[0])); for (int i = 1; i < joinColumns.length; i++) { - pos = joinColumns[i].indexOf('-'); + pos = joinColumns[i].indexOf('='); sb.append(" AND ").append(info.getSQLColumn("a", pos > 0 ? joinColumns[i].substring(0, pos) : joinColumns[i])).append(" = ").append(node.joinEntity.getSQLColumn(joinTabalis.get(node.joinClass), pos > 0 ? joinColumns[i].substring(pos + 1) : joinColumns[i])); } return sb;