2016年6月17日金曜日

MyBatisでLocalDate, LocalDateTime使う

4月に MyBatis-TypeHandlers-JSR310 1.0.0 がリリースされてました。知らんかった。
myBatisのエンティティにjava8のDate and Time APIを使うためのタイプハンドラです。
せっかく書いたけど、オレオレハンドラとはお別れです。


  • pom.xml
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis-typehandlers-jsr310</artifactId>
  <version>1.0.0</version>
</dependency>


  • mybatis-config.xml
<typeHandlers>
  <typeHandler handler="org.apache.ibatis.type.InstantTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.LocalDateTimeTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.LocalDateTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.LocalTimeTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.OffsetDateTimeTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.OffsetTimeTypeHandler" />
  <typeHandler handler="org.apache.ibatis.type.ZonedDateTimeTypeHandler" />
</typeHandlers>


これでエンティティクラスにLocalDate, LocalDateTime等が使えると。