现有 EJB 转换器

已经存在一些预定义的 EJB 数据转换器以供在映射企业 bean 时使用。还可以将这些转换器扩展为您创建的新转换器的超类。

以下列表描述了在将企业 bean 映射至数据库列或将新的转换器添加至 EJB 项目时可以使用的现有转换器。这些现有转换器中的大部分都可以执行往返转换,只有一小部分只能从数据库列转换为 EJB 属性,不能从 EJB 属性转换为数据列。对这些例外情况作了注解。

转换器的名称通常会指示它们转换的类型,数据库字段列示在名称的前面,后跟 EJB 属性。此表尝试将相关的转换器集中在一起。每个描述都列示了转换器往返转换的数据库类型和 EJB 属性类型:

转换器名称 描述
VapAbstractConverter 所有转换器都使用的 Main 超类。
VapBigDecimalToBooleanConverter 在数据库 BigDecimal 字段与 Boolean 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToDoubleConverter 在数据库 BigDecimal 字段与 Double 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToFloatConverter 在数据库 BigDecimal 字段与 FLOAT 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToIntegerConverter 在数据库 BigDecimal 字段与 Integer 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToLongConverter 在数据库 BigDecimal 字段与 Long 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToShortConverter 在数据库 BigDecimal 字段与 Short 之间进行转换。这是专门为 Oracle 数字类型设计的。
VapBigDecimalToStringConverter 通过使用 java.math.BigDecimal 转换数据库 String。还会将 BigDecimal 转换回 String。这是专门为 Oracle 数字类型设计的。
VapByteToStringConverter 在数据库 Byte 与 String 之间进行转换。
VapCharToBoolean 将数据库 Char 转换为 Boolean。将 Boolean 对象转换为数据库 Char(Y 或 N)。
VapCharToString 在数据库 Char 与 String 之间进行转换。
VapDateToCalendarConverter 将数据库 java.sql.Date 转换为 java.util.Calendar 对象类型。将 java.util.Calendar 转换为 java.sql.Date。
VapDateToTimeConverter 在数据库 Date 与 Time 之间进行转换。
VapDateToTimestampConverter 在数据库 Date 与 Timestamp 之间进行转换。
VapDoubleToStringConverter 在数据库 DOUBLE 与 String 之间进行转换。
VapFloatToStringConverter 在数据库 FLOAT 与 String 之间进行转换。
VapIntegerToStringConverter 在数据库 Integer 与 String 之间进行转换。
VapLongStringCalendarConverter 扩展 VapStringCalendarConverter 以使用更长的格式“yyyy.MM.dd 'at' hh:mm:ss z”。
VapLongToStringConverter 在数据库 Long 与 String 之间进行转换。
   
数字转换器:  
VapNumberToBooleanConverter 扩展 VapNumberToPrimitiveWrapperConverter。将数据库基本 Number(0 或 1)转换为 Boolean(true 或 false),并将 Boolean 转换回 Number。
VapNumberToByteConverter 扩展 VapNumberToPrimitiveWrapperConverter。将数据库 Number 转换为 Byte。对数据库返回 byte。
VapNumberToCharacterConverter 扩展 VapNumberToPrimitiveWrapperConverter。在数据库 Character 与 Number 的 Unicode 值之间进行转换。
VapNumberToIntegerConverter 扩展 VapNumberToPrimitiveWrapperConverter。将数据库 Number 转换为 Integer。对数据库也返回 Integer。
VapNumberToLongConverter 扩展 VapNumberToPrimitiveWrapperConverter。将数据库 Number 转换为 Long。对数据库也返回 Long。
VapNumberToPrimitiveWrapperConverter 其他数字转换器使用的超类。在映射编辑器中不要选择此转换器。
VapNumberToShortConverter 将数据库 Number 转换为 Short。不能将 Short 转换回数据库 Number。
VapNumberToStringConverter 将数据库数字(TINYINT、SMALLINT、INTEGER、BIGINT、REAL、FLOAT 和 DOUBLE)转换为 String。对数据库也返回 String。这是其他转换器使用的超类。
   
VapShortToStringConverter 在数据库 Short 与 String 之间进行转换。
VapStringCalendarConverter 根据格式模式“yyyy.MM.dd”在数据库 String 与 Calendar 之间进行转换。
VapStringToBigDecimalConverter 将数据库 String 转换为 BigDecimal 值,并将 BigDecimal 值转换为数据库 String(VAR 或 VARCHAR)。
   
字符串至基本类型转换器:  
VapStringToBooleanConverter 将数据库 String 转换为 Boolean(如果 String 等于“Y”、“y”、“T”、“t”或“1”则设置为 true,否则设置为 false)。将 Boolean 转换为数据库 String(Y 或 N)。
VapStringToByteConverter 在数据库 String 与 Byte 之间进行转换。
VapStringToCharacterConverter 在数据库 String 与 Character 之间进行转换。
VapStringToDoubleConverter 在数据库 String 与 DOUBLE 之间进行转换。
VapStringToFloatConverter 在数据库 String 与 FLOAT 之间进行转换。
VapStringToIntegerConverter 在数据库 String 与 Integer 之间进行转换。
VapStringToLongConverter 在数据库 String 与 Long 之间进行转换。
VapStringToPrimitiveWrapperConverter 其他 String 用于基本数字转换器的超类。不要在映射中使用此转换。
VapStringToShortConverter 在数据库 String 与 Short 之间进行转换。
   
VapStringToURLConverter 在数据库 String 与 URL(java.net.URL)之间进行转换。
VapStringVarChar 不执行任何操作。不要使用此转换器。
VapTimestampToCalendarConverter 在数据库 Timestamp 与 Calendar 之间进行转换。
VapTimestampToDateConverter 在数据库 Timestamp 与 java.sql.Date 对象类型之间进行转换。
VapTimestampToTimeConverter 在数据库 Timestamp 与 java.sql.Time 对象类型之间进行转换。
VapTimestampToUtilDateConverter 在数据库 java.sql.Timestamp 与 java.util.Date 之间进行转换。
VapTimeToCalendarConverter 在数据库 Time 与 java.util.Calendar 对象之间进行转换。
VapTrimStringConverter 修剪数据库 String。
   
流转换器:  
BinaryStreamToEJBHomeConverter 将数据库二进制流转换为 EJB home 接口,并且将 home 接口转换为二进制流。

二进制流转换器假设 objectFrom(...) 的输入是 byte[]、InputStream 或 Blob。所有二进制流转换器都会从 dataFrom() 返回 byte[]。

BinaryStreamToEJBObjectConverter 在数据库二进制流与 EJB 对象(javax.ejb.EJBObject)之间进行转换。
VapAsciiStreamToObjectConverter 其他 ASCII 流转换器的超类。不要在映射中使用此转换器。

将数据库 String、InputStream 或 Clob 转换为 String 对象,并将 String 对象转换回数据库 String、InputStream 或 Clob。ASCII 流转换器在缺省情况下返回 String。

VapAsciiStreamToStringConverter 扩展 VapAsciiStreamToObjectConverter。返回 java.lang.String 目标类名。
VapBinaryStreamToByteArrayConverter 扩展 VapBinaryStreamToObjectConverter。包括用于返回字节数组的方法。
VapBinaryStreamToObjectConverter 其他二进制流转换器的超类。不要在映射中使用此转换器。

二进制流转换器假设 objectFrom(...) 的输入是 byte[]、InputStream 或 Blob。所有二进制流转换器都会从 dataFrom() 返回 byte[]。

VapBinaryStreamToSerializableObjectConverter 将数据库 InputStream、byte[] 或 Blob 转换为反序列化的对象,并将对象序列化为 byte[]。
VapStreamToObjectConverter 其他转换器的超类。不要在映射中使用此转换器。

从 InputStream 中抽取 byte[],并从 Clob 中抽取 String。

VapUnicodeStreamToObjectConverter Unicode 流转换器假设 objectFrom() 的数据库输入是 String、Reader 或 Clob。所有 unicode 流转换器都会返回 String。
VapUnicodeStreamToStringConverter 扩展 VapUnicodeStreamToObjectConverter。返回 java.lang.String 目标类名。

反馈