SQL Generate
支持原生SQL產生元件產生
目的
協助開發程式提供Sql產生對應程式,提升開發速度與品質
產生程式項目
PO 資料
Mapper 資料庫轉換物件
展示
@Test
void testNameWithIf() throws Exception {
final String input = "select s.*,to_char(sysdate,'HH24') time, sysdate " +
"from syscode s \n"+
"where 1=1 \n "+
"<if test=\"option2_name\">and type_id=:type_id </if>\n";
DriverManagerDataSource dataSource = getDriverManagerDataSource();
Map<String, Object> map = new HashMap<>();
map.put("type_id", "");
SqlOption sqlOption = new SqlMapper().fromString(input);
String sql = sqlOption.getSql();
final NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(dataSource);
namedParameterJdbcTemplate.query(sql, map, resultSet -> {
IMapperCodeGenerate mapperCodeGenerate = new SqlCodeGenerate();
CodeOption codeOption = new CodeOption();
codeOption.setMapperPackage("io.github.h8000572003.mapper");
codeOption.setPoPackage("io.github.h8000572003.domain");
codeOption.setBase("./src/test/java");
codeOption.setMapperSuffix("Mapper");
codeOption.setName("Sample");
codeOption.setPoSuffix("DTO");
codeOption.setMemo("說明SQL:"+input);
codeOption.setSql(input);
codeOption.setSqlOption(sqlOption);
codeOption.setResultSet(resultSet);
mapperCodeGenerate.generateByResultSet(codeOption);
return null;
});
}
Last updated
Was this helpful?