{"id":24890,"date":"2024-03-16T04:02:10","date_gmt":"2024-03-16T04:02:10","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/"},"modified":"2024-03-22T04:50:35","modified_gmt":"2024-03-22T04:50:35","slug":"mybatis-retrieves-the-automatically-generated-primary-key","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/","title":{"rendered":"&#8220;mybatis retrieves the automatically generated primary key&#8221;"},"content":{"rendered":"<p>In MyBatis, you can use the parameter useGeneratedKeys to fetch the automatically generated primary key.<\/p>\n<p>Firstly, set useGeneratedKeys to true in the insert statement, and specify keyProperty to indicate the attribute name that will receive the primary key. For example:<\/p>\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\">\"insertUser\"<\/span> <span class=\"hljs-attr\">useGeneratedKeys<\/span>=<span class=\"hljs-string\">\"true\"<\/span> <span class=\"hljs-attr\">keyProperty<\/span>=<span class=\"hljs-string\">\"id\"<\/span>&gt;<\/span>\r\n  INSERT INTO user (username, password) VALUES (#{username}, #{password})\r\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">insert<\/span>&gt;<\/span>\r\n<\/code><\/pre>\n<p>Next, in the corresponding Mapper interface method, define a parameter containing the primary key attribute, and MyBatis will automatically assign the generated primary key value to that parameter. For example:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">interface<\/span> <span class=\"hljs-title class_\">UserMapper<\/span> {\r\n  <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">insertUser<\/span><span class=\"hljs-params\">(User user)<\/span>;\r\n}\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">User<\/span> <span class=\"hljs-variable\">user<\/span> <span class=\"hljs-operator\">=<\/span> <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">User<\/span>();\r\nuser.setUsername(<span class=\"hljs-string\">\"test\"<\/span>);\r\nuser.setPassword(<span class=\"hljs-string\">\"123456\"<\/span>);\r\nuserMapper.insertUser(user);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u83b7\u53d6\u81ea\u52a8\u751f\u6210\u7684\u4e3b\u952e\u503c<\/span>\r\n<span class=\"hljs-type\">Long<\/span> <span class=\"hljs-variable\">id<\/span> <span class=\"hljs-operator\">=<\/span> user.getId();\r\n<\/code><\/pre>\n<p>With the above configuration and code, MyBatis will automatically assign the generated primary key value to the id attribute, which can be retrieved using user.getId().<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In MyBatis, you can use the parameter useGeneratedKeys to fetch the automatically generated primary key. Firstly, set useGeneratedKeys to true in the insert statement, and specify keyProperty to indicate the attribute name that will receive the primary key. For example: &lt;insert id=&#8221;insertUser&#8221; useGeneratedKeys=&#8221;true&#8221; keyProperty=&#8221;id&#8221;&gt; INSERT INTO user (username, password) VALUES (#{username}, #{password}) &lt;\/insert&gt; Next, in [&hellip;]<\/p>\n","protected":false},"author":7,"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-24890","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>&quot;mybatis retrieves the automatically generated primary key&quot; - 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\/mybatis-retrieves-the-automatically-generated-primary-key\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"&quot;mybatis retrieves the automatically generated primary key&quot;\" \/>\n<meta property=\"og:description\" content=\"In MyBatis, you can use the parameter useGeneratedKeys to fetch the automatically generated primary key. Firstly, set useGeneratedKeys to true in the insert statement, and specify keyProperty to indicate the attribute name that will receive the primary key. For example: &lt;insert id=&quot;insertUser&quot; useGeneratedKeys=&quot;true&quot; keyProperty=&quot;id&quot;&gt; INSERT INTO user (username, password) VALUES (#{username}, #{password}) &lt;\/insert&gt; Next, in [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\" \/>\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-16T04:02:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-22T04:50:35+00:00\" \/>\n<meta name=\"author\" content=\"Sophia Anderson\" \/>\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=\"Sophia Anderson\" \/>\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\/mybatis-retrieves-the-automatically-generated-primary-key\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\"},\"author\":{\"name\":\"Sophia Anderson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\"},\"headline\":\"&#8220;mybatis retrieves the automatically generated primary key&#8221;\",\"datePublished\":\"2024-03-16T04:02:10+00:00\",\"dateModified\":\"2024-03-22T04:50:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\"},\"wordCount\":103,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\",\"name\":\"\\\"mybatis retrieves the automatically generated primary key\\\" - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-16T04:02:10+00:00\",\"dateModified\":\"2024-03-22T04:50:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"&#8220;mybatis retrieves the automatically generated primary key&#8221;\"}]},{\"@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\/19a24313de9c988db3d69226b4a40a30\",\"name\":\"Sophia Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"caption\":\"Sophia Anderson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\"mybatis retrieves the automatically generated primary key\" - 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\/mybatis-retrieves-the-automatically-generated-primary-key\/","og_locale":"en_US","og_type":"article","og_title":"\"mybatis retrieves the automatically generated primary key\"","og_description":"In MyBatis, you can use the parameter useGeneratedKeys to fetch the automatically generated primary key. Firstly, set useGeneratedKeys to true in the insert statement, and specify keyProperty to indicate the attribute name that will receive the primary key. For example: &lt;insert id=\"insertUser\" useGeneratedKeys=\"true\" keyProperty=\"id\"&gt; INSERT INTO user (username, password) VALUES (#{username}, #{password}) &lt;\/insert&gt; Next, in [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-16T04:02:10+00:00","article_modified_time":"2024-03-22T04:50:35+00:00","author":"Sophia Anderson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Sophia Anderson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/"},"author":{"name":"Sophia Anderson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30"},"headline":"&#8220;mybatis retrieves the automatically generated primary key&#8221;","datePublished":"2024-03-16T04:02:10+00:00","dateModified":"2024-03-22T04:50:35+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/"},"wordCount":103,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/","url":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/","name":"\"mybatis retrieves the automatically generated primary key\" - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-16T04:02:10+00:00","dateModified":"2024-03-22T04:50:35+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/mybatis-retrieves-the-automatically-generated-primary-key\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"&#8220;mybatis retrieves the automatically generated primary key&#8221;"}]},{"@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\/19a24313de9c988db3d69226b4a40a30","name":"Sophia Anderson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","caption":"Sophia Anderson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/24890","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\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=24890"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/24890\/revisions"}],"predecessor-version":[{"id":58953,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/24890\/revisions\/58953"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=24890"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=24890"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=24890"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}