소스 검색

1.修改链家重复查询返回count

GouGengquan 2 달 전
부모
커밋
7b6c9ea961
1개의 변경된 파일4개의 추가작업 그리고 3개의 파일을 삭제
  1. 4 3
      src/main/java/com/leeroa/dydb/datasource/lianjia/service/impl/DataLianjiaServiceImpl.java

+ 4 - 3
src/main/java/com/leeroa/dydb/datasource/lianjia/service/impl/DataLianjiaServiceImpl.java

@@ -176,10 +176,11 @@ public class DataLianjiaServiceImpl implements DataLianjiaService, BeanWrapCallb
                     Criteria criteria = session.createCriteria(DataLianjia.class)
                             .add(Restrictions.eq("houses", dataLianjia.getHouses()))
                             .add(Restrictions.eq("dealDate", dataLianjia.getDealDate()))
-                            .add(Restrictions.eq("dealMoney", dataLianjia.getDealMoney()));
+                            .add(Restrictions.eq("dealMoney", dataLianjia.getDealMoney()))
+                            .setProjection(Projections.rowCount());
                     // 判断是否存在重复数据
-                    boolean exists = criteria.uniqueResult() != null;
-                    if (!exists) { // 未重复新增
+                    Long count = (Long) criteria.uniqueResult();
+                    if (count == 0) { // 未重复新增
                         session.save(dataLianjia);
                     } else { // 已重复数据跳过不新增
                         logger.info(String.format("重复的成交数据!小区/楼盘名称:%s-成交日期:%s-成交总价:%f万,该条数据已跳过!",dataLianjia.getHouses(),dataLianjia.getDealDate(),dataLianjia.getDealMoney()));