内置列类型映射
huiche是单向的数据读写,仅根据java侧类型决定数据的读写方式,跟数据库中实际类型无关,只需要支持对应的读写方式即可
说明
- 读取方式对应的是
ResultSet的方法,写入方式对应的是PreparedStatement下的方法 - 读取数据时,如果对应类型为基本类型,会返回其默认值,
0/false/'\0'等
| java类型 | 读取方式 | 写入方式 | 说明 |
|---|---|---|---|
| boolean/Boolean | getBoolean | setBoolean | |
| byte/Byte | getByte | setByte | |
| char/Character | getString | setString | |
| double/Double | getDouble | setDouble | |
| float/Float | getFloat | setFloat | |
| int/Integer | getInt | setInt | |
| long/Long | getLong | setLong | |
| short/Short | getShort | setShort | |
| String | getString | setString | 如果useNational=true 会使用getNString/setNString |
| byte[] | getBytes | setBytes | |
| Currency | getString | setString | 如果useNational=true 会使用getNString/setNString |
| StringBuffer | getString | setString | 如果useNational=true 会使用getNString/setNString |
| StringBuilder | getString | setString | 如果useNational=true 会使用getNString/setNString |
| BigDecimal | getBigDecimal | setBigDecimal | |
| BigInteger | getBigDecimal | setBigDecimal | |
| InputStream | getBinaryStream | setBinaryStream | |
| Locale | getString | setString | 如果useNational=true 会使用getNString/setNString |
| Object | getObject | setObject | |
| Path | getString | setString | 如果useNational=true 会使用getNString/setNString |
| Reader | getCharacterStream | setCharacterStream | 如果useNational=true 会使用getNCharacterStream/setNCharacterStream |
| UUID | getString | setString | |
| Date | getTimestamp | setTimestamp | |
| Duration | getLong | setLong | |
| Instant | getTimestamp | setTimestamp | |
| LocalDate | getDate | setDate | |
| LocalDateTime | getTimestamp | setTimestamp | |
| LocalTime | getTime | setTime | |
| OffsetDateTime | getTimestamp | setTimestamp | |
| ZonedDateTime | getTimestamp | setTimestamp | |
| java.sql.Date | getDate | setDate | |
| java.sql.Time | getTime | setTime | |
| java.sql.Timestamp | getTimestamp | setTimestamp | |
| ZoneId | getString | setString | |
| Optional<?> | 根据实际类型 | 根据实际类型 | |
| Enum<?> | getString/getInt | setString/setInt | EnumBy.NAME时是读写String,否则是读写Int |
| 其他类型 | getString | setString | 使用序列化转换器时才支持,作为兜底,读取时先getString然后反序列化, 写入时先序列化为String然后setString |
您可以通过自定义映射来覆盖内置的类型映射,参考自定义列类型映射