本文共 3230 字,大约阅读时间需要 10 分钟。
MyBatis官方提供了逆向工程 mybatis-generator,可以针对数据库表自动生成MyBatis执行所需要的代码(如Mapper.java、Mapper.xml、POJO)。mybatis-generator 有三种用法:命令行、eclipse插件、maven插件。
org.mybatis.generator mybatis-generator-maven-plugin 1.3.2 src/main/resources/generatorConfig.xml true true Generate MyBatis Artifacts generate org.mybatis.generator mybatis-generator-core 1.3.2 mysql mysql-connector-java 5.1.40
这些参数改成true。
enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"
案例1:
TestTableExample example = new TestTableExample();example.or().andField1EqualTo(5).andField2IsNull();example.or().andField3NotEqualTo(9).andField4IsNotNull();List field5Values = new ArrayList();field5Values.add(8);field5Values.add(11);field5Values.add(14);field5Values.add(22);example.or().andField5In(field5Values);example.or().andField6Between(3, 7);
在上面的例子中,,动态生成的where子句是:
where (field1 = 5 and field2 is null) or (field3 <> 9 and field4 is not null) or (field5 in (8, 11, 14, 22)) or (field6 between 3 and 7)
案例2:
PsbcDiscountQualificationGpExample example = new PsbcDiscountQualificationGpExample();example.setOrderByClause("id asc");PsbcDiscountQualificationGpExample.Criteria criteria = example.createCriteria();criteria.andAreaIdEqualTo(new BigDecimal("333")).andAreaIdIsNotNull();psbcDiscountQualificationGpMapper.selectByExample(example);
动态生成的where子句是:
WHERE ( area_id = 333 and area_id is not null ) order by id asc
案例3:
PsbcDiscountQualificationGpExample example = new PsbcDiscountQualificationGpExample();PsbcDiscountQualificationGpExample.Criteria criteria1 = example.createCriteria();PsbcDiscountQualificationGpExample.Criteria criteria2 = example.createCriteria();criteria1.andAreaIdIsNotNull();criteria2.andIdEqualTo(new BigDecimal("111"));example.or(criteria2);psbcDiscountQualificationGpMapper.selectByExample(example);
动态生成的where子句是:
WHERE ( area_id is not null ) or( id = 111 )
参考:
https://www.cnblogs.com/liaojie970/p/7058543.html https://blog.csdn.net/weixin_42231507/article/details/80714719 https://www.cnblogs.com/deng-cc/p/9340748.html