package com.litesuits.orm.db.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* 主键,这是一个模型里必须有的,是对象的唯一标识。
* 没有主键将会报错,一个表只有一个主关键字,它有两种类型:
* 1.主键值自定义,适用于已有唯一ID的对象。
* 2.主键值系统定义,适用于没有唯一ID的对象,将使用递增的数字作为值賦予它。
*
* @author mty
* @date 2013-6-2下午7:01:47
*/
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface PrimaryKey {
public AssignType value();
/**
* @author MaTianyu
* @date 2014-08-16
*/
enum AssignType {
/**
* 主键值自己来指定。
*/
BY_MYSELF,
/**
* 主键值由系统分配,系统将使用自动递增整数赋值给主键。
* 系统将从1开始递增分配,每次在上一条最大ID上+1 。
*/
AUTO_INCREMENT
}
}