!5 优化annotation包下的注解注释

Merge pull request !5 from xgc/dev
This commit is contained in:
xgc 2024-05-30 02:50:35 +00:00 committed by Gitee
commit 003dc5546a
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
5 changed files with 89 additions and 16 deletions

View File

@ -4,6 +4,7 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author xgc
**/
@ -11,5 +12,6 @@ import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
public @interface ExtraParam {
String key();
String value();
}

View File

@ -4,11 +4,15 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author xgc
**/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface MilvusCollection {
String name(); // 集合的名称
/**
* 集合的名称
*/
String name();
}

View File

@ -6,6 +6,7 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author xgc
**/
@ -13,14 +14,57 @@ import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
public @interface MilvusField {
String name() default ""; // 字段名称默认使用 Java 字段名
DataType dataType() default DataType.FloatVector; // 数据类型默认为 FLOAT_VECTOR
int dimension() default -1; // 向量维度仅对向量类型有效
boolean isPrimaryKey() default false; // 是否为主键
boolean autoID() default false; // 是否自动生成
String description() default ""; // 字段描述
DataType elementType() default DataType.None; // 数组或集合中元素的类型默认为 INVALID
int maxLength() default -1; // 数组或字符串类型的最大长度默认为 -1不指定
int maxCapacity() default -1; // 集合类型的最大容量默认为 -1不指定
boolean isPartitionKey() default false; // 是否为分区键
/**
* 字段名称默认使用 Java 字段名
*/
String name() default "";
/**
* 数据类型默认为 FLOAT_VECTOR
*
* @see DataType
*/
DataType dataType() default DataType.FloatVector;
/**
* 向量维度仅对向量类型有效
*/
int dimension() default -1;
/**
* 是否为主键
*/
boolean isPrimaryKey() default false;
/**
* 是否自动生成
*/
boolean autoID() default false;
/**
* 字段描述
*/
String description() default "";
/**
* 数组或集合中元素的类型默认为 INVALID
*
* @see DataType
*/
DataType elementType() default DataType.None;
/**
* 数组或字符串类型的最大长度
*/
int maxLength() default -1;
/**
* 集合类型的最大容量
*/
int maxCapacity() default -1;
/**
* 是否为分区键
*/
boolean isPartitionKey() default false;
}

View File

@ -7,14 +7,34 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author xgc
**/
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MilvusIndex {
IndexParam.IndexType indexType() default IndexParam.IndexType.FLAT; // 索引类型
IndexParam.MetricType metricType() default IndexParam.MetricType.L2; // 度量类型
String indexName() default ""; // 索引名称
ExtraParam[] extraParams() default {}; // 指定额外的参数
/**
* 索引类型
*
* @see IndexParam.IndexType
*/
IndexParam.IndexType indexType() default IndexParam.IndexType.FLAT;
/**
* 度量类型
*
* @see IndexParam.MetricType
*/
IndexParam.MetricType metricType() default IndexParam.MetricType.L2;
/**
* 索引名称
*/
String indexName() default "";
/**
* 指定额外的参数
*/
ExtraParam[] extraParams() default {};
}

View File

@ -11,5 +11,8 @@ import java.lang.annotation.Target;
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface MilvusPartition {
String[] name(); // 分区的名称
/**
* 分区的名称
*/
String[] name();
}