{"id":2695,"date":"2024-03-13T05:23:22","date_gmt":"2024-03-13T05:23:22","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/"},"modified":"2024-03-19T14:20:17","modified_gmt":"2024-03-19T14:20:17","slug":"what-is-the-purpose-of-the-apply-function-in-mybatis","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/","title":{"rendered":"What is the purpose of the apply function in mybatis?"},"content":{"rendered":"<p>In MyBatis, the element is used to dynamically generate a group of parameters within an SQL statement. Typically, this element is used in conjunction with the element to iterate through elements in a collection or array, and apply the iteration results to the SQL statement.<\/p>\n<p>For example, we can iterate through the elements of a List collection and use the elements to apply the iteration result to the IN clause of an SQL statement.<\/p>\n<p>The sample code is as follows:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">select<\/span> <span class=\"hljs-attr\">id<\/span>=<span class=\"hljs-string\">\"selectUsersByIds\"<\/span> <span class=\"hljs-attr\">resultType<\/span>=<span class=\"hljs-string\">\"User\"<\/span> <span class=\"hljs-attr\">parameterType<\/span>=<span class=\"hljs-string\">\"Map\"<\/span>&gt;<\/span>\r\n  SELECT * FROM users\r\n  WHERE id IN\r\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">apply<\/span>&gt;<\/span>\r\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">foreach<\/span> <span class=\"hljs-attr\">collection<\/span>=<span class=\"hljs-string\">\"ids\"<\/span> <span class=\"hljs-attr\">item<\/span>=<span class=\"hljs-string\">\"id\"<\/span> <span class=\"hljs-attr\">separator<\/span>=<span class=\"hljs-string\">\",\"<\/span> <span class=\"hljs-attr\">open<\/span>=<span class=\"hljs-string\">\"(\"<\/span> <span class=\"hljs-attr\">close<\/span>=<span class=\"hljs-string\">\")\"<\/span>&gt;<\/span>\r\n      #{id}\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\">apply<\/span>&gt;<\/span>\r\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">select<\/span>&gt;<\/span>\r\n<\/code><\/pre>\n<p>In the example above, the element is used to iterate through the elements in the ids collection in the Map, and then the element applies the iteration result to the IN clause in the SQL statement. This allows for dynamically generating an IN clause containing all elements in the ids collection, achieving the functionality of dynamically constructing SQL statements.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In MyBatis, the element is used to dynamically generate a group of parameters within an SQL statement. Typically, this element is used in conjunction with the element to iterate through elements in a collection or array, and apply the iteration results to the SQL statement. For example, we can iterate through the elements of a [&hellip;]<\/p>\n","protected":false},"author":10,"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-2695","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>What is the purpose of the apply function 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\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is the purpose of the apply function in mybatis?\" \/>\n<meta property=\"og:description\" content=\"In MyBatis, the element is used to dynamically generate a group of parameters within an SQL statement. Typically, this element is used in conjunction with the element to iterate through elements in a collection or array, and apply the iteration results to the SQL statement. For example, we can iterate through the elements of a [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-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-13T05:23:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-19T14:20:17+00:00\" \/>\n<meta name=\"author\" content=\"Jackson Davis\" \/>\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=\"Jackson Davis\" \/>\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-purpose-of-the-apply-function-in-mybatis\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\"},\"author\":{\"name\":\"Jackson Davis\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\"},\"headline\":\"What is the purpose of the apply function in mybatis?\",\"datePublished\":\"2024-03-13T05:23:22+00:00\",\"dateModified\":\"2024-03-19T14:20:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\"},\"wordCount\":149,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\",\"name\":\"What is the purpose of the apply function in mybatis? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-13T05:23:22+00:00\",\"dateModified\":\"2024-03-19T14:20:17+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is the purpose of the apply function 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\/55a10b8b0457c35884c25677889ad350\",\"name\":\"Jackson Davis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"caption\":\"Jackson Davis\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is the purpose of the apply function 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\/what-is-the-purpose-of-the-apply-function-in-mybatis\/","og_locale":"en_US","og_type":"article","og_title":"What is the purpose of the apply function in mybatis?","og_description":"In MyBatis, the element is used to dynamically generate a group of parameters within an SQL statement. Typically, this element is used in conjunction with the element to iterate through elements in a collection or array, and apply the iteration results to the SQL statement. For example, we can iterate through the elements of a [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-13T05:23:22+00:00","article_modified_time":"2024-03-19T14:20:17+00:00","author":"Jackson Davis","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Jackson Davis","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/"},"author":{"name":"Jackson Davis","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350"},"headline":"What is the purpose of the apply function in mybatis?","datePublished":"2024-03-13T05:23:22+00:00","dateModified":"2024-03-19T14:20:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/"},"wordCount":149,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/","url":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/","name":"What is the purpose of the apply function in mybatis? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-13T05:23:22+00:00","dateModified":"2024-03-19T14:20:17+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-purpose-of-the-apply-function-in-mybatis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What is the purpose of the apply function 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\/55a10b8b0457c35884c25677889ad350","name":"Jackson Davis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","caption":"Jackson Davis"},"url":"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2695","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\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=2695"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2695\/revisions"}],"predecessor-version":[{"id":35541,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2695\/revisions\/35541"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=2695"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=2695"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=2695"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}