Skip to main content

@Column

标记字段,被该注解标识会被视为字段建表

详情见 model 中用法

属性名称注释
table可选值,默认值为当前实体类
dbColumnType可选值,会根据类型选择数据类型
comment可选值,字段标题或注释
title可选值,字段标题或注释
keyword可选值,指定当前标注字段是否是关键词字段
conditions可选值,生成哪些条件,默认只有 = 条件

xml 中参数名称生成对照

以 String name 字段为例子,除了 equal,参数名称生成逻辑就是 [字段名称]+[首字母大写的条件名称]

所有的 or 条件,必须添加 enableOr 参数详情见CommonQueryParam

名称解释生成的参数名称
equal等于 (=)name
less小于 (<)nameLess
great大于 (>)nameGreat
like模糊匹配 (LIKE)nameLike
instr包含(使用 INSTR 函数)nameInstr
in属于某个集合 (IN)nameIn
isNull是否为 NULLnameIsNull
isNotNull是否不为 NULLnameIsNotNull
orEqual或:等于nameOrEqual
orLess或:小于nameOrLess
orGreat或:大于nameOrGreat
orLike或:模糊匹配nameOrLike
orInstr或:包含nameOrInstr
orIn或:属于集合nameOrIn
orIsNull或:为空nameOrIsNull
orIsNotNull或:不为空nameOrIsNotNull
all所有条件都生效(通常表示全匹配)代表所有条件
import com.wangshu.annotation.*;
import com.wangshu.base.model.BaseModel;
import com.wangshu.enu.Condition;
import com.wangshu.enu.DataBaseType;
import com.wangshu.enu.SqlStyle;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Data
@Model(title = "用户")
public class User extends BaseModel {

@Column(title = "ID")
@Primary
private String id;

@Column(conditions = {Condition.equal, Condition.instr, Condition.like})
private String name;

@Column(conditions = {Condition.equal, Condition.less, Condition.great})
private String age;

}