All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cn.mybatis.mp.db.annotations.TableId Maven / Gradle / Ivy

package cn.mybatis.mp.db.annotations;

import cn.mybatis.mp.db.IdAutoType;
import db.sql.api.DbType;

import java.lang.annotation.*;

/**
 * ID 自增
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
@Repeatable(TableId.List.class)
public @interface TableId {

    /**
     * 自增类型
     *
     * @return
     */
    IdAutoType value() default IdAutoType.AUTO;

    /**
     * 数据库类型
     *
     * @return
     */
    DbType dbType() default DbType.MYSQL;

    /**
     * 自增器的名字
     * 自定义生成器 需要 实现 cn.mybatis.mp.core.incrementer.IdentifierGenerator
     * 然后 注册到ID生成器工厂 cn.mybatis.mp.core.incrementer.IdentifierGeneratorFactory.register(name,ID自增器实例)
     *
     * @return
     */
    String generatorName() default "";

    /**
     * id 自增的sql语句
     *
     * @return
     */
    String sql() default "";

    @Documented
    @Retention(RetentionPolicy.RUNTIME)
    @Target({ElementType.FIELD})
    @interface List {
        TableId[] value();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy