{"id":12614,"date":"2024-03-14T16:12:29","date_gmt":"2024-03-14T16:12:29","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/"},"modified":"2025-08-05T04:13:33","modified_gmt":"2025-08-05T04:13:33","slug":"what-is-the-usage-of-resultmap-in-mybatis","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/","title":{"rendered":"MyBatis ResultMap Guide &#038; Examples"},"content":{"rendered":"<p>In MyBatis, ResultMap is an object used to map query result sets. It describes how to map database query columns to Java object properties.<\/p>\n<p>ResultMap can be defined through XML configuration or annotations. When using XML configuration, you can specify the ResultMap in SQL statements using elements like `<id>`, `<result>`, and so on. For example:<br \/>\n&#8220;`xml<br \/>\n<resultMap id=\"userMap\" type=\"User\"><br \/>\n    <id property=\"id\" column=\"user_id\"\/><br \/>\n    <result property=\"username\" column=\"username\"\/><br \/>\n    <result property=\"password\" column=\"password\"\/><br \/>\n    <result property=\"email\" column=\"email\"\/><br \/>\n<\/resultMap><br \/>\n&#8220;`<\/p>\n<p>The above code defines a ResultMap named &#8220;userMap&#8221;, which maps the &#8220;user_id&#8221; column of the query result to the &#8220;id&#8221; property of the User object, and so on. When using ResultMap in SQL statements, you can specify the ResultMap ID using the `resultMap` attribute. For example:<br \/>\n&#8220;`xml<br \/>\n<select id=\"getUser\" resultMap=\"userMap\"><br \/>\n    SELECT * FROM users WHERE user_id = #{id}<br \/>\n<\/select><br \/>\n&#8220;`<\/p>\n<p>When defining ResultMap with annotations, you can use `@Results` and `@Result` annotations to specify the ResultMap. For example:<br \/>\n&#8220;`java<br \/>\n@Results(id = &#8220;userMap&#8221;, value = {<br \/>\n    @Result(property = &#8220;id&#8221;, column = &#8220;user_id&#8221;),<br \/>\n    @Result(property = &#8220;username&#8221;, column = &#8220;username&#8221;),<br \/>\n    @Result(property = &#8220;password&#8221;, column = &#8220;password&#8221;),<br \/>\n    @Result(property = &#8220;email&#8221;, column = &#8220;email&#8221;)<br \/>\n})<br \/>\n&#8220;`<\/p>\n<p>The advantage of using ResultMap is that it allows mapping complex query results to object properties, providing flexibility and maintainability. Additionally, ResultMap can handle complex result set mappings like one-to-one, one-to-many, nested queries, etc.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In MyBatis, ResultMap is an object used to map query result sets. It describes how to map database query columns to Java object properties. ResultMap can be defined through XML configuration or annotations. When using XML configuration, you can specify the ResultMap in SQL statements using elements like &#8220;, &#8220;, and so on. For example: [&hellip;]<\/p>\n","protected":false},"author":14,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[2147,2688,1459,1525,3139],"class_list":["post-12614","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-database-mapping","tag-java-persistence","tag-mybatis","tag-orm","tag-resultmap"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>MyBatis ResultMap Guide &amp; Examples - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MyBatis ResultMap Guide &amp; Examples\" \/>\n<meta property=\"og:description\" content=\"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-14T16:12:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-05T04:13:33+00:00\" \/>\n<meta name=\"author\" content=\"Noah Thompson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Noah Thompson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\"},\"author\":{\"name\":\"Noah Thompson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/2e83cc6ab9f60d36921c2d0f9f280f4a\"},\"headline\":\"MyBatis ResultMap Guide &#038; Examples\",\"datePublished\":\"2024-03-14T16:12:29+00:00\",\"dateModified\":\"2025-08-05T04:13:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\"},\"wordCount\":191,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"database mapping\",\"Java persistence\",\"MyBatis\",\"ORM\",\"resultMap\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\",\"name\":\"MyBatis ResultMap Guide & Examples - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-14T16:12:29+00:00\",\"dateModified\":\"2025-08-05T04:13:33+00:00\",\"description\":\"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MyBatis ResultMap Guide &#038; Examples\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/2e83cc6ab9f60d36921c2d0f9f280f4a\",\"name\":\"Noah Thompson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/350e537e1530ede2762ee0237e877d6693f4f7163ab4f303202cc9a6b27b6cb4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/350e537e1530ede2762ee0237e877d6693f4f7163ab4f303202cc9a6b27b6cb4?s=96&d=mm&r=g\",\"caption\":\"Noah Thompson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/noahthompson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"MyBatis ResultMap Guide & Examples - Blog - Silicon Cloud","description":"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/","og_locale":"en_US","og_type":"article","og_title":"MyBatis ResultMap Guide & Examples","og_description":"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.","og_url":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-14T16:12:29+00:00","article_modified_time":"2025-08-05T04:13:33+00:00","author":"Noah Thompson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Noah Thompson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/"},"author":{"name":"Noah Thompson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/2e83cc6ab9f60d36921c2d0f9f280f4a"},"headline":"MyBatis ResultMap Guide &#038; Examples","datePublished":"2024-03-14T16:12:29+00:00","dateModified":"2025-08-05T04:13:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/"},"wordCount":191,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["database mapping","Java persistence","MyBatis","ORM","resultMap"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/","url":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/","name":"MyBatis ResultMap Guide & Examples - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-14T16:12:29+00:00","dateModified":"2025-08-05T04:13:33+00:00","description":"Master MyBatis ResultMap: Map database columns to Java objects using XML\/annotations. Complete usage guide with examples.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-usage-of-resultmap-in-mybatis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"MyBatis ResultMap Guide &#038; Examples"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/2e83cc6ab9f60d36921c2d0f9f280f4a","name":"Noah Thompson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/350e537e1530ede2762ee0237e877d6693f4f7163ab4f303202cc9a6b27b6cb4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/350e537e1530ede2762ee0237e877d6693f4f7163ab4f303202cc9a6b27b6cb4?s=96&d=mm&r=g","caption":"Noah Thompson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/noahthompson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/12614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=12614"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/12614\/revisions"}],"predecessor-version":[{"id":156428,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/12614\/revisions\/156428"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=12614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=12614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=12614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}