@Test
public void toStringTest() {
Condition c1 = new Condition("name", null);
System.out.println(c1);
Condition c2 = new Condition("birthday", "!= null");
System.out.println(c2);
Condition c3 = new Condition("name", "= zhangsan");
System.out.println(c3);
Condition c4 = new Condition("name", "like %aaa");
System.out.println(c4);
Condition c5 = new Condition("id", "in 1,2,3");
System.out.println(c5);
Condition c6 = new Condition("age", "between 12 and 13");
System.out.println(c6);
}
控制檯輸出爲,默認條件佔位符爲 True
name IS NULL
birthday IS NOT NULL
name = ?
name LIKE ?
id IN (?,?,?)
age BETWEEN ? AND ?
還有關於條件佔位符的開啓與關閉,這裏指定爲關閉
@Test
public void toStringNoPlaceHolderTest() {
Condition conditionNull = new Condition("user", null);
conditionNull.setPlaceHolder(false);
System.out.println(conditionNull);
Condition conditionNotNull = new Condition("user", "!= null");
conditionNotNull.setPlaceHolder(false);
System.out.println(conditionNotNull);
Condition conditionEquals = new Condition("user", "= zhangsan");
conditionEquals.setPlaceHolder(false);
System.out.println(conditionEquals);
Condition conditionLike = new Condition("user", "like %aaa");
conditionLike.setPlaceHolder(false);
System.out.println(conditionLike);
Condition conditionIn = new Condition("user", "in 1,2,3");
conditionIn.setPlaceHolder(false);
System.out.println(conditionIn);
Condition conditionBetween = new Condition("user", "between 12 and 13");
conditionBetween.setPlaceHolder(false);
System.out.println(conditionBetween);
}
控制檯輸出爲,和上面的輸出比較一下區別
user IS NULL
user IS NOT NULL
user = zhangsan
user LIKE %aaa
user IN (1,2,3)
user BETWEEN 12 AND 13
1.3 SqlBuilder測試
@Test
public void queryNullTest() {
SqlBuilder builder = SqlBuilder.create().select().from("user").where(new Condition("name", "= null"));
System.out.println(builder);
SqlBuilder builder2 = SqlBuilder.create().select().from("user").where(new Condition("name", "is null"));
System.out.println(builder2);
SqlBuilder builder3 = SqlBuilder.create().select().from("user").where(LogicalOperator.OR, new Condition("name", "!= null"),new Condition("name","like%as"));
System.out.println(builder3);
SqlBuilder builder4 = SqlBuilder.create().select().from("user").where(LogicalOperator.AND, new Condition("name", "is not null"),new Condition("id", "in 12,13,14"));
System.out.println(builder4);
}
控制檯輸出爲
SELECT * FROM user WHERE name IS NULL
SELECT * FROM user WHERE name IS NULL
SELECT * FROM user WHERE name IS NOT NULL OR name = ?
SELECT * FROM user WHERE name IS NOT NULL AND id IN (?,?,?)