在MyBatis的映射配置文件中写sql语句有时候很方便,但是对于有大量字段的表结构却不太简单,幸好MyBatis提供的有SqlBuilder工具类,可以生成相应的SQL语句,如下例程:
package com.utils;
import org.apache.ibatis.jdbc.SqlBuilder;
public class MyBatisUtils extends SqlBuilder {
public String selectUserSql() {
BEGIN();
SELECT("*");
FROM("UserDto");
return SQL();
}
public String deleteUserSql() {
BEGIN();
DELETE_FROM("UserDto");
WHERE("username = #{username}");
return SQL();
}
public String insertUserSql() {
BEGIN();
INSERT_INTO("UserDto");
VALUES("username", "#{username}");
VALUES("password", "#{password}");
VALUES("address", "#{address}");
VALUES("age", "#{age}");
VALUES("sex", "#{sex}");
return SQL();
}
public String updateUserSql() {
BEGIN();
UPDATE("UserDto");
SET("password = #{password}");
WHERE("username = #{username}");
return SQL();
}
public static void main(String[] args) {
MyBatisUtils myBatisUtils = new MyBatisUtils();
System.out.println("查询 = " + myBatisUtils.selectUserSql());
System.out.println("删除 = " + myBatisUtils.deleteUserSql());
System.out.println("插入 = " + myBatisUtils.insertUserSql());
System.out.println("更新 = " + myBatisUtils.updateUserSql());
}
}