Mybatis like 的问题

package com.mtea.mis.builder;

/**
 * 父SQL构建器
 * 提供常用的构建方法
 * @author     Macrotea
 * @version 0.1
 * @date    2011-9-26
 * @note
 */
public class BaseSqlBuilder {

    /**
     * 两边Like(eg: %name%)
     * @param columnName
     * @param propNames
     * @return
     */
    public static String LIKE(String columnName, String... propNames) {
        if(propNames.length>0)
            return columnName+" LIKE CONCAT('%', #{"+propNames[0]+"}, '%')";
        else
            return columnName+" LIKE CONCAT('%', #{"+columnName+"}, '%')";
    }
   
    /**
     * 左边Like(eg: %name)
     * @param columnName
     * @param propNames
     * @return
     */
    public static String LEFTLIKE(String columnName, String... propNames) {
        if(propNames.length>0)
            return columnName+" LIKE CONCAT('%', #{"+propNames[0]+"})";
        else
            return columnName+" LIKE CONCAT('%', #{"+columnName+"})";
    }
   
    /**
     * 右边Like(eg: name%)
     * @param columnName
     * @param propNames
     * @return
     */
    public static String RIGHTLIKE(String columnName, String... propNames) {
        if(propNames.length>0)
            return columnName+" LIKE CONCAT(#{"+propNames[0]+"}, '%')";
        else
            return columnName+" LIKE CONCAT(#{"+columnName+"}, '%')";
    }
   
    public static void main(String[] args) {
        System.out.println(BaseSqlBuilder.LEFTLIKE("typeName"));
    }
}

 

 

public final class UserTypeSqlBuilder extends BaseSqlBuilder{

	public String searchBy(UserType e){
		BEGIN();
		SELECT("*");
		FROM(TABLE);
		if (e.getTypeName() != null) {
			WHERE(LIKE("typeName"));
		}
		if (e.getRemark() != null) {
			WHERE(LIKE("remark"));
		}
		return SQL();
	}
}

 

 

你可能感兴趣的:(mybatis)