iBatis to MyBatis migration efforts?

16,002

Solution 1

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.

Solution 2

The migration process is very easy, i got my answer from here

Hope this helps you too.

Share:
16,002
Satish Pandey
Author by

Satish Pandey

Greetings, I am a full-stack senior developer with 10+ years of rich and varied experience in developing end-to-end Web Applications, Backend Web services, Serverless Applications, and Mobile Apps. I am highly proficient in developing CRM, WFM, MIS, CMS, eCommerce sites, ERP, SEO Tools, Web Crawlers, and Distributed Computing Architectures. Technologies that I'm Proficient includes: ⭐ BACK-END:- React, Java, J2EE, Spring, Hibernate, JPA, MyBatis, Thymeleaf, and RESTX Framework ⭐ Front-END:- Angular, ReactJS, TypeScript, Bootstrap, Javascript, jQuery, HTML5, CSS3, and Ajax ⭐ AWS:- EC2, S3, SNS, SES, Serverless, Lambda, API Gateway, CloudFormation, CodePipeline, Rekognition, SQS ⭐ DATABASES:- MySQL, Postgres, MongoDB, DynamoDB ⭐ TOOLS:- Docker, Jenkins, Nginx, CodeShip, CI/CD, Gitflow ✅ In Big Data I have experience working with the Hadoop ecosystem with components like Hdfs, Yarn, Hive, Pig, Kafka, Spark, etc. ✅ I'm using Linux Ubuntu as a development system and comfortable in writing Bash/Shell scripts, Docker images, Kubernetes/Hadoop multi-node clusters, and distributed application architectures/environments. 📍📍 I have Team Leadership qualities, where I can split, prioritize, and delegate tasks to developers, consult developers on best practices, ensure the high quality of software products, mentor junior/senior staff. I am versed with the talent to take a business to the next level with my skills and expertise. For my expertise, dedication, and hard work, I've always got good feedback from my clients📍📍 If you think that my skillset meets those you seek, feel free to contact me and we can discuss how to make your project more successful. Thanks for your time and effort !! Cheers :)

Updated on June 04, 2022

Comments

  • Satish Pandey
    Satish Pandey almost 2 years

    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?