{"id":19500,"date":"2024-03-15T18:59:20","date_gmt":"2024-03-15T18:59:20","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/"},"modified":"2024-03-21T15:50:59","modified_gmt":"2024-03-21T15:50:59","slug":"how-to-bulk-insert-data-in-mybatis","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/","title":{"rendered":"How to bulk insert data in MyBatis?"},"content":{"rendered":"<p>MyBatis offers a way to bulk insert data by using the foreach tag. Here is an example.<\/p>\n<ol>\n<li>Write the SQL statement for batch insert data in the Mapper XML file as shown below:<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">insert<\/span> <span class=\"hljs-attr\">id<\/span>=<span class=\"hljs-string\">\"batchInsert\"<\/span> <span class=\"hljs-attr\">parameterType<\/span>=<span class=\"hljs-string\">\"java.util.List\"<\/span>&gt;<\/span>\r\n    insert into user (name, age) values\r\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">foreach<\/span> <span class=\"hljs-attr\">collection<\/span>=<span class=\"hljs-string\">\"list\"<\/span> <span class=\"hljs-attr\">item<\/span>=<span class=\"hljs-string\">\"item\"<\/span> <span class=\"hljs-attr\">separator<\/span>=<span class=\"hljs-string\">\",\"<\/span>&gt;<\/span>\r\n        (#{item.name}, #{item.age})\r\n    <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">foreach<\/span>&gt;<\/span>\r\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">insert<\/span>&gt;<\/span>\r\n<\/code><\/pre>\n<ol>\n<li>Define a method in the Mapper interface for batch data insertion.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">batchInsert<\/span><span class=\"hljs-params\">(List&lt;User&gt; userList)<\/span>;\r\n<\/code><\/pre>\n<ol>\n<li>Call the method in the code and pass in the list of new data to be added.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code>List&lt;User&gt; userList = <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">ArrayList<\/span>&lt;User&gt;();\r\nuserList.add(<span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">User<\/span>(<span class=\"hljs-string\">\"John\"<\/span>, <span class=\"hljs-number\">25<\/span>));\r\nuserList.add(<span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">User<\/span>(<span class=\"hljs-string\">\"Jane\"<\/span>, <span class=\"hljs-number\">28<\/span>));\r\nuserMapper.batchInsert(userList);\r\n<\/code><\/pre>\n<p>In the above example, User is a JavaBean with properties of name and age. The userList is a list of new data to be added, which will be inserted into the database in bulk by calling the batchInsert method. The Mapper XML file uses the foreach tag to concatenate each data item into an SQL statement.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MyBatis offers a way to bulk insert data by using the foreach tag. Here is an example. Write the SQL statement for batch insert data in the Mapper XML file as shown below: &lt;insert id=&#8221;batchInsert&#8221; parameterType=&#8221;java.util.List&#8221;&gt; insert into user (name, age) values &lt;foreach collection=&#8221;list&#8221; item=&#8221;item&#8221; separator=&#8221;,&#8221;&gt; (#{item.name}, #{item.age}) &lt;\/foreach&gt; &lt;\/insert&gt; Define a method in the [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-19500","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"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>How to bulk insert data in MyBatis? - Blog - Silicon Cloud<\/title>\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\/how-to-bulk-insert-data-in-mybatis\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to bulk insert data in MyBatis?\" \/>\n<meta property=\"og:description\" content=\"MyBatis offers a way to bulk insert data by using the foreach tag. Here is an example. Write the SQL statement for batch insert data in the Mapper XML file as shown below: &lt;insert id=&quot;batchInsert&quot; parameterType=&quot;java.util.List&quot;&gt; insert into user (name, age) values &lt;foreach collection=&quot;list&quot; item=&quot;item&quot; separator=&quot;,&quot;&gt; (#{item.name}, #{item.age}) &lt;\/foreach&gt; &lt;\/insert&gt; Define a method in the [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-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-15T18:59:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T15:50:59+00:00\" \/>\n<meta name=\"author\" content=\"Ava Mitchell\" \/>\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=\"Ava Mitchell\" \/>\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\/how-to-bulk-insert-data-in-mybatis\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/\"},\"author\":{\"name\":\"Ava Mitchell\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64\"},\"headline\":\"How to bulk insert data in MyBatis?\",\"datePublished\":\"2024-03-15T18:59:20+00:00\",\"dateModified\":\"2024-03-21T15:50:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/\"},\"wordCount\":124,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/\",\"name\":\"How to bulk insert data in MyBatis? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T18:59:20+00:00\",\"dateModified\":\"2024-03-21T15:50:59+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to bulk insert data in MyBatis?\"}]},{\"@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\/a3e2658c2cb9fb2be95ae0a8861f4a64\",\"name\":\"Ava Mitchell\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g\",\"caption\":\"Ava Mitchell\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/avamitchell\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to bulk insert data in MyBatis? - Blog - Silicon Cloud","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\/how-to-bulk-insert-data-in-mybatis\/","og_locale":"en_US","og_type":"article","og_title":"How to bulk insert data in MyBatis?","og_description":"MyBatis offers a way to bulk insert data by using the foreach tag. Here is an example. Write the SQL statement for batch insert data in the Mapper XML file as shown below: &lt;insert id=\"batchInsert\" parameterType=\"java.util.List\"&gt; insert into user (name, age) values &lt;foreach collection=\"list\" item=\"item\" separator=\",\"&gt; (#{item.name}, #{item.age}) &lt;\/foreach&gt; &lt;\/insert&gt; Define a method in the [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T18:59:20+00:00","article_modified_time":"2024-03-21T15:50:59+00:00","author":"Ava Mitchell","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Ava Mitchell","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/"},"author":{"name":"Ava Mitchell","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/a3e2658c2cb9fb2be95ae0a8861f4a64"},"headline":"How to bulk insert data in MyBatis?","datePublished":"2024-03-15T18:59:20+00:00","dateModified":"2024-03-21T15:50:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/"},"wordCount":124,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/","name":"How to bulk insert data in MyBatis? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T18:59:20+00:00","dateModified":"2024-03-21T15:50:59+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-bulk-insert-data-in-mybatis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to bulk insert data in MyBatis?"}]},{"@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\/a3e2658c2cb9fb2be95ae0a8861f4a64","name":"Ava Mitchell","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/15c63cd0564b4a2e07d611bcdffa296f6ea80e8db07c3091f43a84010514899d?s=96&d=mm&r=g","caption":"Ava Mitchell"},"url":"https:\/\/www.silicloud.com\/blog\/author\/avamitchell\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19500","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\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=19500"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19500\/revisions"}],"predecessor-version":[{"id":53246,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19500\/revisions\/53246"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=19500"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=19500"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=19500"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}