Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iBatis to MyBatis migration efforts?

Tags:

ibatis

mybatis

I am using iBatis-2.3.4.726 in my production application. I want to migrate my production application to use MyBatis.

What points i need to consider while migration process?

Is there any configuration changes or MyBatis supports iBatis configuration as deprecated commands?

like image 268
Satish Pandey Avatar asked Aug 18 '12 15:08

Satish Pandey


1 Answers

Before using migration guide mentioned by Satish, make sure that you've read all the comments, especially the last one that list which changes have to be done manually after using converter:

  • <procedure> is deprecated in mybatis. Converter is changing this to <update>. This will create problems where we need result set from procedure call. So manually updated with <select>.
  • Dynamic query part mentioned inside <dynamic> tag are not converted by tool
  • Both # and $ can be escaped by doubling in iBatis. This is not required in mybatis.
  • typeAlias should be defined in sql-map-config instead of mapper itself.
  • When result map with groupBy changed into mybatis style using collection, id property is not set properly by the converter.
  • jdbcType="INT" is not recognized in mybatis. Updated to "INTEGER"
  • nullValue in resultMap deprecated, we need to update query with ISNULL expression.

What I'd like to add is that converter seems to drop timeout parameter that could be present in <procedure> tag in iBatis. Make sure to copy all occurences to the generated XML.

like image 194
Michał Rybak Avatar answered Sep 21 '22 19:09

Michał Rybak