Java搜索类

if (LIKE_RIGHT.equals(type)) {

condition = condition + “concat(?,‘%’)”;

}

if (LIKE_BOTH.equals(type)) {

condition = condition + “concat(‘%’,?,‘%’)”;

}

columns.add(columnName);

likeConditionMap.put(columnName, condition);

return this;

}

/**

  • 指定日期等于某个时间

  • @author fengzx

  • @date 2020/3/28 12:13

*/

public Search eqDate(IGetter fn, Date param, String pattern) {

compareDate(fn, param, pattern, " = '");

return this;

}

/**

  • 指定日期等于某个时间

  • @author fengzx

  • @date 2020/3/28 12:13

*/

public Search eqDate(IGetter fn, String param) {

if (StringUtils.isBlank(param)) {

return this;

}

//属性名

String propertyName = BeanUtils.convertToFieldName(fn);

String columnName = BeanUtils.HumpToUnderline(propertyName);

String condition = columnName + " = ‘" + param + "’";

conditions.add(condition);

return this;

}

/**

  • 指定日期小于某个时间

  • @author fengzx

  • @date 2020/3/28 12:14

*/

public Search ltDate(IGetter fn, String param) {

if (StringUtils.isBlank(param)) {

return this;

}

//属性名

String propertyName = BeanUtils.convertToFieldName(fn);

String columnName = BeanUtils.HumpToUnderline(propertyName);

String condition = columnName + " < ‘" + param + "’";

conditions.add(condition);

return this;

}

/**

  • 指定日期小于某个时间

  • @author fengzx

  • @date 2020/3/28 12:14

*/

public Search ltDate(IGetter fn, Date param, String pattern) {

compareDate(fn, param, pattern, " < '");

return this;

}

/**

  • 指定日期大于某个时间

  • @author fengzx

  • @date 2020/3/28 12:14

*/

public void gtDate(IGetter fn, Date param, String pattern) {

compareDate(fn, param, pattern, " > '");

}

/**

  • 日期比较

  • @author fengzx

  • @date 2020/4/11 12:26

*/

private Search compareDate(IGetter fn, Date param, String pattern, String compare) {

if (param == null || StringUtils.isBlank(pattern)) {

return this;

}

SimpleDateFormat format = new SimpleDateFormat(pattern);

String dateParam = format.format(param);

//属性名

String propertyName = BeanUtils.convertToFieldName(fn);

String columnName = BeanUtils.HumpToUnderline(propertyName);

St 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 ring condition = columnName + compare + dateParam + “'”;

conditions.add(condition);

return this;

}

/**

  • 指定日期大于某个时间

  • @author fengzx

  • @date 2020/3/28 12:14

*/

public Search gtDate(IGetter fn, String param) {

if (StringUtils.isBlank(param)) {

return this;

}

//属性名

String propertyName = BeanUtils.convertToFieldName(fn);

String columnName = BeanUtils.HumpToUnderline(propertyName);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值