Skip to main content
Hint

This article is generated by AI translation.

Array Type Handlers

Array type handlers are located in the net.hasor.dbvisitor.types.handler.array package.

HandlerJava TypePurpose
ArrayTypeHandlerjava.sql.ArrayGeneral array handling, using getArray/setArray for reading and writing
PgArrayTypeHandlerjava.sql.ArrayPostgreSQL array type specific handling
PgVectorTypeHandlerList<Float>PostgreSQL pgvector vector type handling

PgVectorTypeHandler

PgVectorTypeHandler handles the PostgreSQL pgvector extension's vector type, converting between List<Float> and pgvector's text format [1.0,2.0,3.0].

Usage example
public class EmbeddingEntity {
@Column(typeHandler = PgVectorTypeHandler.class)
private List<Float> embedding;
}

Array Element Type Mapping

When creating a java.sql.Array type, you need to specify the element type, for example:

Array array = ps.getConnection().createArrayOf(typeName, ...);

The JDBC types corresponding to the Java types of array elements are shown in the table below:

Element Java typeJDBC type
boolean.classJDBCType.BOOLEAN
Boolean.classJDBCType.BOOLEAN
byte.classJDBCType.TINYINT
Byte.classJDBCType.TINYINT
short.classJDBCType.SMALLINT
Short.classJDBCType.SMALLINT
int.classJDBCType.INTEGER
Integer.classJDBCType.INTEGER
long.classJDBCType.BIGINT
Long.classJDBCType.BIGINT
float.classJDBCType.FLOAT
Float.classJDBCType.FLOAT
double.classJDBCType.DOUBLE
Double.classJDBCType.DOUBLE
Calendar.classJDBCType.CHAR
char.classJDBCType.CHAR
java.util.Date.classJDBCType.TIMESTAMP
java.sql.Date.classJDBCType.TIMESTAMP
java.sql.Timestamp.classJDBCType.TIMESTAMP
java.sql.Time.classJDBCType.TIMESTAMP
Instant.classJDBCType.TIMESTAMP
LocalDateTime.classJDBCType.TIMESTAMP
LocalDate.classJDBCType.TIMESTAMP
LocalTime.classJDBCType.TIMESTAMP
ZonedDateTime.classJDBCType.TIMESTAMP
JapaneseDate.classJDBCType.TIMESTAMP
YearMonth.classJDBCType.TIMESTAMP
Year.classJDBCType.TIMESTAMP
Month.classJDBCType.TIMESTAMP
OffsetDateTime.classJDBCType.TIMESTAMP
OffsetTime.classJDBCType.TIMESTAMP
String.classJDBCType.VARCHAR
BigInteger.classJDBCType.BIGINT
BigDecimal.classJDBCType.NUMERIC
Byte[].classJDBCType.VARBINARY
byte[].classJDBCType.VARBINARY
URL.classJDBCType.DATALINK
URI.classJDBCType.DATALINK