소스 검색

fix 分表

release_toaliyun_real
xiaohanzi 5 년 전
부모
커밋
3b75d0b6bf
1개의 변경된 파일17개의 추가작업 그리고 2개의 파일을 삭제
  1. +17
    -2
      mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/impl/rule/ShardingRuleDefaultService.java

+ 17
- 2
mybatis-multi-tenancy/src/main/java/com/iformall/plugin/shard/impl/rule/ShardingRuleDefaultService.java 파일 보기

@@ -7,11 +7,26 @@ public class ShardingRuleDefaultService implements ShardingRuleService {
if (null == value || count <= 0 ) {
return null;
}
int hash = 9999999;
//如果是整数,则直接变为Long,好查询
if (value instanceof String) {
try {
Long lvalue = Long.parseLong((String)value);
hash = getHashCode(lvalue);
}catch(Exception e) {
hash = getHashCode(value);
}
}else {
hash = getHashCode(value);
}
return String.valueOf(hash%count);
}
private int getHashCode(Object value) {
int hash = value.hashCode();
if (hash < 0 ) {
hash = Math.abs(hash);
}
return String.valueOf(hash%count);
return hash;
}

}

불러오는 중...
취소
저장