微信搜索:小大白日志

Java类型跟数据库类型的相互转换

1、自定义一个转换类型,获取数据库数据并输出数据时,把数据库的Varchar类型转为java的String[]类型
前提(1)
定义一个类VarcharToStringsHandler继承BaseTypeHandler<String[]>,且类上方加上
@MappedTypes({String[].class})和@MappedJdbcTypes({JdbcType.VARCHAR})
,且VarcharToStringsHandler类中getStringArray(String value)定义分割的字符,如”-“、","
 
前提(2)
mybatis-config.xml中注册VarcharToStringsHandler类:
<typeHandlers>
<typeHandler handler="com.handler.VarcharToStringsHandler" />
</typeHandlers>
 
使用:
数据库中film表的title字段值为”aaa-bbb-ccc“之类的数据,取出后转为java的String[]数据
实体类Film如下:
 
FillmMapper.xml中:
<result column="title" jdbcType="VARCHAR" javaType="[Ljava.lang.String;" property="title" />
指定javaType="[Ljava.lang.String;"即String[]数组,则Mybatis就会到已经注册了的TypeHandler中寻找到能处理jdbcType对应javaType的类型转换的TypeHandler类(此处为VarcharToStringsHandler类)来进行处理
 
posted @ 2019-07-24 22:42  明天喝可乐  阅读(1538)  评论(0)    收藏  举报