{"id":6786,"date":"2024-03-14T04:41:07","date_gmt":"2024-03-14T04:41:07","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/"},"modified":"2025-08-02T08:09:30","modified_gmt":"2025-08-02T08:09:30","slug":"how-to-use-mybatis-methods-for-data-manipulation","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/","title":{"rendered":"MyBatis CRUD Tutorial: Data Manipulation Guide"},"content":{"rendered":"<p>MyBatis is a persistence framework that offers a way to map SQL queries to Java objects using XML files or annotations. Here is an example of using MyBatis for CRUD operations.<\/p>\n<ol>\n<li>Increase data.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-comment\">\/\/ \u4f7f\u7528 SQLSessionFactoryBuilder \u521b\u5efa SQLSessionFactory<\/span>\r\n<span class=\"hljs-type\">SQLSessionFactory<\/span> <span class=\"hljs-variable\">factory<\/span> <span class=\"hljs-operator\">=<\/span> <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">SQLSessionFactoryBuilder<\/span>().build(inputStream);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u83b7\u53d6 SQLSession<\/span>\r\n<span class=\"hljs-type\">SQLSession<\/span> <span class=\"hljs-variable\">session<\/span> <span class=\"hljs-operator\">=<\/span> factory.openSession();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a\u5b9e\u4f53\u5bf9\u8c61<\/span>\r\n<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.setId(<span class=\"hljs-number\">1<\/span>);\r\nuser.setName(<span class=\"hljs-string\">\"Alice\"<\/span>);\r\nuser.setAge(<span class=\"hljs-number\">20<\/span>);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528 SQLSession \u7684 insert \u65b9\u6cd5\u63d2\u5165\u6570\u636e<\/span>\r\nsession.insert(<span class=\"hljs-string\">\"insertUser\"<\/span>, user);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u63d0\u4ea4\u4e8b\u52a1<\/span>\r\nsession.commit();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5173\u95ed SQLSession<\/span>\r\nsession.close();\r\n<\/code><\/pre>\n<ol>\n<li>Delete data.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-comment\">\/\/ \u83b7\u53d6 SQLSession<\/span>\r\n<span class=\"hljs-type\">SQLSession<\/span> <span class=\"hljs-variable\">session<\/span> <span class=\"hljs-operator\">=<\/span> factory.openSession();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528 SQLSession \u7684 delete \u65b9\u6cd5\u5220\u9664\u6570\u636e<\/span>\r\nsession.delete(<span class=\"hljs-string\">\"deleteUser\"<\/span>, <span class=\"hljs-number\">1<\/span>);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u63d0\u4ea4\u4e8b\u52a1<\/span>\r\nsession.commit();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5173\u95ed SQLSession<\/span>\r\nsession.close();\r\n<\/code><\/pre>\n<ol>\n<li>Update data.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-comment\">\/\/ \u83b7\u53d6 SQLSession<\/span>\r\n<span class=\"hljs-type\">SQLSession<\/span> <span class=\"hljs-variable\">session<\/span> <span class=\"hljs-operator\">=<\/span> factory.openSession();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a\u5b9e\u4f53\u5bf9\u8c61<\/span>\r\n<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.setId(<span class=\"hljs-number\">1<\/span>);\r\nuser.setName(<span class=\"hljs-string\">\"Bob\"<\/span>);\r\nuser.setAge(<span class=\"hljs-number\">25<\/span>);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528 SQLSession \u7684 update \u65b9\u6cd5\u66f4\u65b0\u6570\u636e<\/span>\r\nsession.update(<span class=\"hljs-string\">\"updateUser\"<\/span>, user);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u63d0\u4ea4\u4e8b\u52a1<\/span>\r\nsession.commit();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5173\u95ed SQLSession<\/span>\r\nsession.close();\r\n<\/code><\/pre>\n<ol>\n<li>Data retrieval:<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-comment\">\/\/ \u83b7\u53d6 SQLSession<\/span>\r\n<span class=\"hljs-type\">SQLSession<\/span> <span class=\"hljs-variable\">session<\/span> <span class=\"hljs-operator\">=<\/span> factory.openSession();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528 SQLSession \u7684 selectOne \u65b9\u6cd5\u67e5\u8be2\u5355\u6761\u6570\u636e<\/span>\r\n<span class=\"hljs-type\">User<\/span> <span class=\"hljs-variable\">user<\/span> <span class=\"hljs-operator\">=<\/span> session.selectOne(<span class=\"hljs-string\">\"getUserById\"<\/span>, <span class=\"hljs-number\">1<\/span>);\r\nSystem.out.println(user);\r\n\r\n<span class=\"hljs-comment\">\/\/ \u8c03\u7528 SQLSession \u7684 selectList \u65b9\u6cd5\u67e5\u8be2\u591a\u6761\u6570\u636e<\/span>\r\nList&lt;User&gt; userList = session.selectList(<span class=\"hljs-string\">\"getAllUsers\"<\/span>);\r\n<span class=\"hljs-keyword\">for<\/span> (User u : userList) {\r\n    System.out.println(u);\r\n}\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5173\u95ed SQLSession<\/span>\r\nsession.close();\r\n<\/code><\/pre>\n<p>The code example above demonstrates how to perform CRUD operations using MyBatis. You need to configure corresponding SQL statements in the XML file, instantiate the SQLSessionFactory, and then use the SQLSession to execute the operations.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MyBatis is a persistence framework that offers a way to map SQL queries to Java objects using XML files or annotations. Here is an example of using MyBatis for CRUD operations. Increase data. \/\/ \u4f7f\u7528 SQLSessionFactoryBuilder \u521b\u5efa SQLSessionFactory SQLSessionFactory factory = new SQLSessionFactoryBuilder().build(inputStream); \/\/ \u83b7\u53d6 SQLSession SQLSession session = factory.openSession(); \/\/ \u521b\u5efa\u4e00\u4e2a\u5b9e\u4f53\u5bf9\u8c61 User user = [&hellip;]<\/p>\n","protected":false},"author":5,"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":[88,410,2688,1459,3134],"class_list":["post-6786","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-crud-operations","tag-data-manipulation","tag-java-persistence","tag-mybatis","tag-sql-mapping"],"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 CRUD Tutorial: Data Manipulation Guide - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.\" \/>\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-use-mybatis-methods-for-data-manipulation\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MyBatis CRUD Tutorial: Data Manipulation Guide\" \/>\n<meta property=\"og:description\" content=\"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\" \/>\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-14T04:41:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-02T08:09:30+00:00\" \/>\n<meta name=\"author\" content=\"Emily Johnson\" \/>\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=\"Emily Johnson\" \/>\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-use-mybatis-methods-for-data-manipulation\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\"},\"author\":{\"name\":\"Emily Johnson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3b041b19cffc258705478ecfab895378\"},\"headline\":\"MyBatis CRUD Tutorial: Data Manipulation Guide\",\"datePublished\":\"2024-03-14T04:41:07+00:00\",\"dateModified\":\"2025-08-02T08:09:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\"},\"wordCount\":80,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"CRUD operations\",\"data manipulation\",\"Java persistence\",\"MyBatis\",\"SQL mapping\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\",\"name\":\"MyBatis CRUD Tutorial: Data Manipulation Guide - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-14T04:41:07+00:00\",\"dateModified\":\"2025-08-02T08:09:30+00:00\",\"description\":\"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MyBatis CRUD Tutorial: Data Manipulation Guide\"}]},{\"@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\/3b041b19cffc258705478ecfab895378\",\"name\":\"Emily Johnson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a5cb4e73d02ab1d79f2dfe919389ff7c1de072baa97686392031c03d858cc358?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a5cb4e73d02ab1d79f2dfe919389ff7c1de072baa97686392031c03d858cc358?s=96&d=mm&r=g\",\"caption\":\"Emily Johnson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/emilyjohnson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"MyBatis CRUD Tutorial: Data Manipulation Guide - Blog - Silicon Cloud","description":"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.","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-use-mybatis-methods-for-data-manipulation\/","og_locale":"en_US","og_type":"article","og_title":"MyBatis CRUD Tutorial: Data Manipulation Guide","og_description":"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-14T04:41:07+00:00","article_modified_time":"2025-08-02T08:09:30+00:00","author":"Emily Johnson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Emily Johnson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/"},"author":{"name":"Emily Johnson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3b041b19cffc258705478ecfab895378"},"headline":"MyBatis CRUD Tutorial: Data Manipulation Guide","datePublished":"2024-03-14T04:41:07+00:00","dateModified":"2025-08-02T08:09:30+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/"},"wordCount":80,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["CRUD operations","data manipulation","Java persistence","MyBatis","SQL mapping"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/","name":"MyBatis CRUD Tutorial: Data Manipulation Guide - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-14T04:41:07+00:00","dateModified":"2025-08-02T08:09:30+00:00","description":"Learn how to perform CRUD operations with MyBatis. Step-by-step tutorial for data manipulation in Java using MyBatis framework.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-mybatis-methods-for-data-manipulation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"MyBatis CRUD Tutorial: Data Manipulation Guide"}]},{"@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\/3b041b19cffc258705478ecfab895378","name":"Emily Johnson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a5cb4e73d02ab1d79f2dfe919389ff7c1de072baa97686392031c03d858cc358?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a5cb4e73d02ab1d79f2dfe919389ff7c1de072baa97686392031c03d858cc358?s=96&d=mm&r=g","caption":"Emily Johnson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/emilyjohnson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/6786","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\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=6786"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/6786\/revisions"}],"predecessor-version":[{"id":151556,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/6786\/revisions\/151556"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=6786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=6786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=6786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}