多条件复杂查询,不知具体有多少个条件,一个一个判断代码冗长,只想取出有值的条件,拼接到sql上,比如有个User类,有属性name,id, 当只有id有值时,返回"and id =xxxx"
用法,将自己的bean对象继承ParameterBaseUtils,用this.gainConditionFromObjectByField()即可
package cn.com.suntree.cmp.utils;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class ParameterBaseUtils {
/**
* 返回有的值条件,比如有个User类,有属性name,id
* 当只有id有值时,返回and id ={id的值}
*
* @return
* @throws
* @author ld
* @date 2019/02/11 14:13
*/
public String gainConditionFromObjectByField() {
StringBuffer sb = new StringBuffer();
Field[] fields = this.getClass().getDeclaredFields();//取出所有属性
for (int i = 0; i < fields.length; i++) {
Field f = fields[i];
String fieldName = f.getName();
Object value = getFieldValue(this, f