纯注解使用纯注解需要引入mybatis-dynamic-sql:
<dependency><groupId>org.mybatis.dynamic-sql</groupId><artifactId>mybatis-dynamic-sql</artifactId><version>1.1.4</version></dependency>需要修改两个位置:
<context id="default" targetRuntime="MyBatis3DynamicSql">...<javaClientGenerator type="ANNOTATEDMAPPER"...运行结果会生成三个类:
// club.throwable.entitypublic class Order {@Generated("org.mybatis.generator.api.MyBatisGenerator")private Long id;@Generated("org.mybatis.generator.api.MyBatisGenerator")private String orderId;@Generated("org.mybatis.generator.api.MyBatisGenerator")private Date createTime;@Generated("org.mybatis.generator.api.MyBatisGenerator")private BigDecimal amount;@Generated("org.mybatis.generator.api.MyBatisGenerator")private Byte orderStatus;@Generated("org.mybatis.generator.api.MyBatisGenerator")public Long getId() {return id;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public void setId(Long id) {this.id = id;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public String getOrderId() {return orderId;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public void setOrderId(String orderId) {this.orderId = orderId;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public Date getCreateTime() {return createTime;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public void setCreateTime(Date createTime) {this.createTime = createTime;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public BigDecimal getAmount() {return amount;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public void setAmount(BigDecimal amount) {this.amount = amount;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public Byte getOrderStatus() {return orderStatus;}@Generated("org.mybatis.generator.api.MyBatisGenerator")public void setOrderStatus(Byte orderStatus) {this.orderStatus = orderStatus;}}// club.throwable.daopublic final class OrderDynamicSqlSupport {@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final Order order = new Order();@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final SqlColumn<Long> id = order.id;@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final SqlColumn<String> orderId = order.orderId;@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final SqlColumn<Date> createTime = order.createTime;@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final SqlColumn<BigDecimal> amount = order.amount;@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final SqlColumn<Byte> orderStatus = order.orderStatus;@Generated("org.mybatis.generator.api.MyBatisGenerator")public static final class Order extends SqlTable {public final SqlColumn<Long> id = column("id", JDBCType.BIGINT);public final SqlColumn<String> orderId = column("order_id", JDBCType.VARCHAR);public final SqlColumn<Date> createTime = column("create_time", JDBCType.TIMESTAMP);public final SqlColumn<BigDecimal> amount = column("amount", JDBCType.DECIMAL);public final SqlColumn<Byte> orderStatus = column("order_status", JDBCType.TINYINT);public Order() {super("t_order");}}}@Mapperpublic interface OrderMapper {@Generated("org.mybatis.generator.api.MyBatisGenerator")BasicColumn[] selectList = BasicColumn.columnList(id, orderId, createTime, amount, orderStatus);@Generated("org.mybatis.generator.api.MyBatisGenerator")@SelectProvider(type=SqlProviderAdapter.class, method="select")long count(SelectStatementProvider selectStatement);@Generated("org.mybatis.generator.api.MyBatisGenerator")@DeleteProvider(type=SqlProviderAdapter.class, method="delete")int delete(DeleteStatementProvider deleteStatement);@Generated("org.mybatis.generator.api.MyBatisGenerator")@InsertProvider(type=SqlProviderAdapter.class, method="insert")@SelectKey(statement="SELECT LAST_INSERT_ID()", keyProperty="record.id", before=true, resultType=Long.class)int insert(InsertStatementProvider<Order> insertStatement);@Generated("org.mybatis.generator.api.MyBatisGenerator")@SelectProvider(type=SqlProviderAdapter.class, method="select")@Results(id="OrderResult", value = https://www.isolves.com/it/cxkf/kj/2021-08-12/{@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),@Result(column="order_id", property="orderId", jdbcType=JdbcType.VARCHAR),@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP),@Result(column="amount", property="amount", jdbcType=JdbcType.DECIMAL),@Result(column="order_status", property="orderStatus", jdbcType=JdbcType.TINYINT)})Optional
推荐阅读
-
短发|山口百惠儿媳才貌双全,结婚穿和服留齐刘海,没婆婆年轻时漂亮
-
小城时光说资讯 观看“不良网站”能够瞒天过海?3个坏影响躲不掉,以为无痕模式
-
「雷科技」《使命召唤:现代战争》免费畅玩:可体验5张多人地图
-
狮子座|11月底,缘起缘灭,不负此生,纵使分离,此情难分,祈祷复合
-
“触手怪”式的网文作者们:“每天一睁眼就觉得欠读者八千字”
-
-
我是肥球球|“小爱同学”被抢注?小米公司无能为力很无奈?上诉被驳回
-
-
只待君来|宁愿“糊涂一些”,也别做聪明人,女人到了中年
-
|被领导提拔,自己却直接拒绝,不升职,成为了一种新趋势
-
成都高空抛物入刑首案宣判|成都高空抛物入刑首案宣判 具体什么情况?
-
-
朱元璋|刘伯温死前送给朱元璋一筐鱼,朱元璋没懂,17年后才明白用意
-
PO数码|AR眼镜值得一看,享受90寸大屏沉浸感?OPPO放大招
-
#走在城长的旅途#他的话让俺想去睡觉,幽默段子:晚上和老爸聊天
-
-
[火山]一百个宇宙冷知识 看完才明白 人类是多么渺小(第11期)
-
[铁血蓝色科技]让闲置U盘变NAS,在家也能远程办公,百元小工具
-
-
『上游新闻』Ace2将搭载最强充电组合亮相,地表充电最强?OPPO