{"id":900,"date":"2023-04-12T12:59:02","date_gmt":"2023-04-12T03:59:02","guid":{"rendered":"http:\/\/edu.ujhb.org\/?p=900"},"modified":"2023-04-12T12:59:02","modified_gmt":"2023-04-12T03:59:02","slug":"getting-started-with-springboot-english-edition","status":"publish","type":"post","link":"https:\/\/edu.ujhb.org\/?p=900","title":{"rendered":"Getting Started with Springboot (English Edition)"},"content":{"rendered":"\n<p>I want to do a video of IT tutorial, can you arrange the text content of the video tutorial for me according to the content of the website. Let&#8217;s start with the Springboot tutorial, and you start by giving me a list of things to cover.<\/p>\n\n\n\n<p>Sure, but here&#8217;s an outline of possible Spring Boot tutorials:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Introduction to Spring Boot:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What is Spring Boot?<\/li>\n\n\n\n<li>Advantages of Spring Boot<\/li>\n\n\n\n<li>Spring Boot&#8217;s version history<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Environment Setup:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Install Java and Maven<\/li>\n\n\n\n<li>Create a Spring Boot project<\/li>\n\n\n\n<li>Spring Boot&#8217;s IDE support<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>Spring Boot Core Components:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The core module of Spring Boot<\/li>\n\n\n\n<li>Spring Boot auto-configuration<\/li>\n\n\n\n<li>Spring Boot Starter<\/li>\n\n\n\n<li>Spring Boot Actuator<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>Spring Boot Application Development:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controller<\/li>\n\n\n\n<li>View<\/li>\n\n\n\n<li>Data Access<\/li>\n\n\n\n<li>Transaction<\/li>\n\n\n\n<li>Logging<\/li>\n\n\n\n<li>Exception Handling<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"5\">\n<li>Spring Boot integration with other technologies:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Spring Boot\u4e0eSpring Cloud<\/li>\n\n\n\n<li>Spring Boot\u4e0eSpring Security<\/li>\n\n\n\n<li>Spring Boot\u4e0eRedis<\/li>\n\n\n\n<li>Spring Boot\u4e0eMyBatis<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" start=\"6\">\n<li>Spring Boot deployment and operation:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Package and deploy<\/li>\n\n\n\n<li>Monitoring and management<\/li>\n\n\n\n<li>Logging and debugging<\/li>\n<\/ul>\n\n\n\n<p>The above is only a general framework, and the specific content needs to be further refined and refined according to your actual situation and the needs of your target audience. Hope this outline helps you!<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>Please explain in detail what Spring Boot is<\/p>\n\n\n\n<p>Spring Boot\u662f\u4e00\u4e2a\u57fa\u4e8eSpring\u6846\u67b6\u7684\u5f00\u6e90\u6846\u67b6\uff0c\u5b83\u65e8\u5728\u7b80\u5316Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u521b\u5efa\u548c\u5f00\u53d1\u8fc7\u7a0b\u3002Spring Boot\u63d0\u4f9b\u4e86\u4e00\u79cd\u5feb\u901f\u3001\u65b9\u4fbf\u7684\u65b9\u5f0f\u6765\u521b\u5efa\u72ec\u7acb\u7684\u3001\u751f\u4ea7\u7ea7\u522b\u7684Spring\u5e94\u7528\u7a0b\u5e8f\uff0c\u5b83\u51e0\u4e4e\u53ef\u4ee5\u8ba9\u5f00\u53d1\u8005\u4e0d\u7528\u8fc7\u591a\u8003\u8651\u914d\u7f6e\u7684\u95ee\u9898\uff0c\u800c\u76f4\u63a5\u4f7f\u7528Spring\u63d0\u4f9b\u7684\u529f\u80fd\u3002<\/p>\n\n\n\n<p>Spring Boot\u7684\u6838\u5fc3\u601d\u60f3\u662f\u201c\u7ea6\u5b9a\u4f18\u4e8e\u914d\u7f6e\u201d\uff08Convention Over Configuration\uff09\uff0c\u8fd9\u610f\u5473\u7740Spring Boot\u5728\u5927\u591a\u6570\u60c5\u51b5\u4e0b\u53ef\u4ee5\u81ea\u52a8\u914d\u7f6e\uff0c\u4ece\u800c\u907f\u514d\u4e86\u5f00\u53d1\u4eba\u5458\u82b1\u8d39\u5927\u91cf\u65f6\u95f4\u5728\u7e41\u7410\u7684\u914d\u7f6e\u4e0a\u3002\u540c\u65f6\uff0cSpring Boot\u8fd8\u63d0\u4f9b\u4e86\u4e00\u4e9b\u9ed8\u8ba4\u7684\u914d\u7f6e\uff0c\u4f7f\u5f97\u5f00\u53d1\u8005\u53ef\u4ee5\u5feb\u901f\u5730\u521b\u5efa\u4e00\u4e2a\u529f\u80fd\u5b8c\u5907\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n\n\n\n<p>Spring Boot\u4e0d\u4ec5\u4ec5\u662f\u4e00\u4e2a\u6846\u67b6\uff0c\u5b83\u8fd8\u63d0\u4f9b\u4e86\u8bb8\u591a\u6709\u7528\u7684\u5de5\u5177\uff0c\u5982\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\uff08Tomcat\u3001Jetty\u6216Undertow\uff09\uff0c\u6570\u636e\u5e93\u8bbf\u95ee\u3001\u5b89\u5168\u6027\u7b49\u7b49\u3002Spring Boot\u8fd8\u652f\u6301\u5404\u79cd\u6784\u5efa\u5de5\u5177\uff0c\u5982Maven\u548cGradle\uff0c\u53ef\u4ee5\u8f7b\u677e\u5730\u8fdb\u884c\u6784\u5efa\u3001\u6253\u5305\u548c\u90e8\u7f72\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u662f\u4e00\u4e2a\u5feb\u901f\u3001\u4fbf\u6377\u7684\u5f00\u53d1\u6846\u67b6\uff0c\u5b83\u4f7f\u5f97\u5f00\u53d1\u8005\u80fd\u591f\u66f4\u52a0\u4e13\u6ce8\u4e8e\u5e94\u7528\u7a0b\u5e8f\u7684\u4e1a\u52a1\u903b\u8f91\uff0c\u800c\u4e0d\u662f\u5728\u7e41\u7410\u7684\u914d\u7f6e\u4e0a\u6d6a\u8d39\u65f6\u95f4\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpring Boot\u7684\u4f18\u70b9<\/p>\n\n\n\n<p>Spring Boot\u662f\u4e00\u4e2a\u975e\u5e38\u53d7\u6b22\u8fce\u7684\u5f00\u53d1\u6846\u67b6\uff0c\u56e0\u4e3a\u5b83\u5177\u6709\u8bb8\u591a\u4f18\u70b9\uff0c\u4ee5\u4e0b\u662f\u4e00\u4e9bSpring Boot\u7684\u4f18\u70b9\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u7b80\u5316\u4e86\u914d\u7f6e\uff1aSpring Boot\u81ea\u52a8\u914d\u7f6e\u4e86\u8bb8\u591a\u5e38\u7528\u7684\u914d\u7f6e\uff0c\u4f7f\u5f97\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u66f4\u5feb\u5730\u8fdb\u884c\u5e94\u7528\u7a0b\u5e8f\u5f00\u53d1\uff0c\u51cf\u5c11\u4e86\u5f00\u53d1\u65f6\u95f4\u548c\u7cbe\u529b\u3002<\/li>\n\n\n\n<li>\u5feb\u901f\u5f00\u53d1\uff1aSpring Boot\u63d0\u4f9b\u4e86\u8bb8\u591a\u5feb\u901f\u5f00\u53d1\u7684\u5de5\u5177\u548c\u63d2\u4ef6\uff0c\u5982Spring Boot CLI\u3001Spring Initializr\u7b49\u7b49\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u66f4\u5feb\u5730\u5f00\u53d1\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n\n\n\n<li>\u96c6\u6210\u4e86\u5404\u79cd\u6280\u672f\uff1aSpring Boot\u96c6\u6210\u4e86\u8bb8\u591a\u5e38\u7528\u7684\u6280\u672f\uff0c\u5982JPA\u3001Hibernate\u3001Thymeleaf\u3001Spring Data\u3001Spring Security\u7b49\u7b49\uff0c\u4f7f\u5f97\u5f00\u53d1\u4eba\u5458\u80fd\u591f\u5feb\u901f\u5730\u96c6\u6210\u8fd9\u4e9b\u6280\u672f\u5230\u5e94\u7528\u7a0b\u5e8f\u4e2d\u3002<\/li>\n\n\n\n<li>\u6613\u4e8e\u6d4b\u8bd5\uff1aSpring Boot\u7684\u5e94\u7528\u7a0b\u5e8f\u7ed3\u6784\u975e\u5e38\u6e05\u6670\uff0c\u4fbf\u4e8e\u8fdb\u884c\u5355\u5143\u6d4b\u8bd5\u548c\u96c6\u6210\u6d4b\u8bd5\u3002<\/li>\n\n\n\n<li>\u6613\u4e8e\u90e8\u7f72\uff1aSpring Boot\u5e94\u7528\u7a0b\u5e8f\u53ef\u4ee5\u4f7f\u7528\u5404\u79cd\u90e8\u7f72\u65b9\u5f0f\uff0c\u5982Jar\u5305\u3001War\u5305\u3001Docker\u5bb9\u5668\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u63d0\u4f9b\u4e86\u5065\u5eb7\u68c0\u67e5\u3001\u6027\u80fd\u76d1\u63a7\u3001\u65e5\u5fd7\u8bb0\u5f55\u7b49\u529f\u80fd\uff1aSpring Boot\u63d0\u4f9b\u4e86\u4e00\u7cfb\u5217\u6709\u7528\u7684\u5de5\u5177\u548c\u63d2\u4ef6\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5b9e\u73b0\u5065\u5eb7\u68c0\u67e5\u3001\u6027\u80fd\u76d1\u63a7\u3001\u65e5\u5fd7\u8bb0\u5f55\u7b49\u529f\u80fd\uff0c\u4f7f\u5f97\u5e94\u7528\u7a0b\u5e8f\u66f4\u52a0\u5065\u58ee\u548c\u7a33\u5b9a\u3002<\/li>\n\n\n\n<li>\u793e\u533a\u6d3b\u8dc3\uff1aSpring Boot\u62e5\u6709\u4e00\u4e2a\u5e9e\u5927\u7684\u5f00\u53d1\u8005\u793e\u533a\uff0c\u6709\u8bb8\u591a\u5f00\u53d1\u8005\u5728\u79ef\u6781\u5730\u66f4\u65b0\u548c\u7ef4\u62a4\u8fd9\u4e2a\u6846\u67b6\uff0c\u63d0\u4f9b\u4e86\u5927\u91cf\u7684\u6280\u672f\u652f\u6301\u548c\u6587\u6863\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u662f\u4e00\u4e2a\u4f18\u79c0\u7684\u5f00\u53d1\u6846\u67b6\uff0c\u5b83\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u66f4\u5feb\u5730\u5f00\u53d1\u5e94\u7528\u7a0b\u5e8f\uff0c\u51cf\u5c11\u4e86\u7e41\u7410\u7684\u914d\u7f6e\u5de5\u4f5c\uff0c\u63d0\u4f9b\u4e86\u8bb8\u591a\u6709\u7528\u7684\u5de5\u5177\u548c\u63d2\u4ef6\uff0c\u4f7f\u5f97\u5e94\u7528\u7a0b\u5e8f\u66f4\u52a0\u5065\u58ee\u548c\u7a33\u5b9a\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpring Boot\u7684\u7248\u672c\u5386\u53f2<\/p>\n\n\n\n<p>Spring Boot\u7684\u7248\u672c\u5386\u53f2\u53ef\u4ee5\u8ffd\u6eaf\u52302014\u5e74\uff0c\u4ee5\u4e0b\u662fSpring Boot\u7684\u7248\u672c\u5386\u53f2\uff1a<\/p>\n\n\n\n<p>1.0.x\u7248\u672c\u7cfb\u5217\uff082014\u5e743\u6708\u53d1\u5e03\uff09\uff1a \u8fd9\u662fSpring Boot\u7684\u7b2c\u4e00\u4e2a\u7a33\u5b9a\u7248\u672c\u7cfb\u5217\u3002\u5b83\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efaSpring\u5e94\u7528\u7a0b\u5e8f\u7684\u529f\u80fd\uff0c\u5e76\u652f\u6301Tomcat\u3001Jetty\u548cUndertow\u7b49\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u3002\u8be5\u7248\u672c\u63d0\u4f9b\u4e86\u8bb8\u591a\u5e38\u7528\u7684\u5f00\u7bb1\u5373\u7528\u529f\u80fd\uff0c\u5982JPA\u3001Hibernate\u3001Thymeleaf\u3001Spring Data\u3001Spring Security\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>1.1.x\u7248\u672c\u7cfb\u5217\uff082014\u5e7410\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Groovy\u7684\u652f\u6301\u3001\u5bf9Ratpack\u7684\u652f\u6301\u3001\u652f\u6301\u81ea\u5b9a\u4e49Banner\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u589e\u5f3a\u4e86\u5bf9Spring Framework 4\u7684\u652f\u6301\u3002<\/p>\n\n\n\n<p>1.2.x\u7248\u672c\u7cfb\u5217\uff082015\u5e743\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9WebSocket\u7684\u652f\u6301\u3001\u5bf9Spring Integration\u7684\u652f\u6301\u3001\u5bf9Spring Batch\u7684\u652f\u6301\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u6539\u8fdb\u4e86\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u7684\u6027\u80fd\u548c\u5b89\u5168\u6027\u3002<\/p>\n\n\n\n<p>1.3.x\u7248\u672c\u7cfb\u5217\uff082015\u5e7411\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Spring Data REST\u7684\u652f\u6301\u3001\u5bf9OAuth2\u7684\u652f\u6301\u3001\u5bf9Java 8\u7684\u652f\u6301\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u6539\u8fdb\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u548c\u7a33\u5b9a\u6027\u3002<\/p>\n\n\n\n<p>1.4.x\u7248\u672c\u7cfb\u5217\uff082016\u5e749\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9HTTP\/2\u7684\u652f\u6301\u3001\u5bf9Spring Cloud\u7684\u652f\u6301\u3001\u5bf9Spring Boot Actuator\u7684\u6539\u8fdb\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u589e\u5f3a\u4e86\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u7684\u6027\u80fd\u548c\u5b89\u5168\u6027\u3002<\/p>\n\n\n\n<p>2.0.x\u7248\u672c\u7cfb\u5217\uff082018\u5e743\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Reactive\u7f16\u7a0b\u6a21\u578b\u7684\u652f\u6301\u3001\u5bf9Kotlin\u7684\u652f\u6301\u3001\u5bf9Java 9\u7684\u652f\u6301\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u6539\u8fdb\u4e86Spring Boot\u7684\u81ea\u52a8\u914d\u7f6e\u548c\u542f\u52a8\u901f\u5ea6\u3002<\/p>\n\n\n\n<p>2.1.x\u7248\u672c\u7cfb\u5217\uff082018\u5e7410\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Spring Cloud GCP\u7684\u652f\u6301\u3001\u5bf9Spring Boot Actuator\u7684\u6539\u8fdb\u3001\u5bf9Micrometer\u7684\u652f\u6301\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u6539\u8fdb\u4e86\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u7684\u6027\u80fd\u548c\u5b89\u5168\u6027\u3002<\/p>\n\n\n\n<p>2.2.x\u7248\u672c\u7cfb\u5217\uff082019\u5e7410\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Spring Boot Admin\u7684\u652f\u6301\u3001\u5bf9Spring Native\u7684\u652f\u6301\u3001\u5bf9JDK 13\u7684\u652f\u6301\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u589e\u5f3a\u4e86Spring Boot\u7684\u81ea\u52a8\u914d\u7f6e\u548c\u542f\u52a8\u901f\u5ea6\u3002<\/p>\n\n\n\n<p>2.3.x\u7248\u672c\u7cfb\u5217\uff082020\u5e7410\u6708\u53d1\u5e03\uff09\uff1a \u8be5\u7248\u672c\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u529f\u80fd\uff0c\u5982\u5bf9Spring Integration 5\u7684\u652f\u6301\u3001\u5bf9Spring HATEOAS 1\u7684\u652f\u6301\u3001\u5bf9Spring Configuration Processor\u7684\u6539\u8fdb\u7b49\u7b49\u3002\u6b64\u5916\uff0c\u8be5\u7248\u672c\u8fd8\u6539\u8fdb\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u548c\u7a33\u5b9a\u6027\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u7684\u7248\u672c\u5386\u53f2\u53ef\u4ee5\u770b\u51fa\uff0c\u5b83\u4e0d\u65ad\u5730\u5728\u589e\u5f3a\u548c\u6539\u8fdb\u81ea\u8eab\u7684<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5982\u4f55\u5b89\u88c5Java\u548cMaven<\/p>\n\n\n\n<p>\u5b89\u88c5Java\u548cMaven\u662fSpring Boot\u5f00\u53d1\u7684\u57fa\u7840\uff0c\u4e0b\u9762\u662f\u8be6\u7ec6\u7684\u5b89\u88c5\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5b89\u88c5Java\uff1a Java\u662fSpring Boot\u7684\u8fd0\u884c\u73af\u5883\uff0c\u9700\u8981\u5728\u7535\u8111\u4e0a\u5b89\u88c5Java\u5f00\u53d1\u5de5\u5177\u5305\uff08JDK\uff09\u3002\u9996\u5148\uff0c\u524d\u5f80Oracle\u5b98\u7f51\u4e0b\u8f7d\u6700\u65b0\u7248\u672c\u7684JDK\u5b89\u88c5\u7a0b\u5e8f\uff0c\u7f51\u5740\u4e3a\uff1a<a href=\"https:\/\/www.oracle.com\/java\/technologies\/javase-downloads.html%E3%80%82%E7%84%B6%E5%90%8E%EF%BC%8C%E6%8C%89%E7%85%A7%E5%AE%89%E8%A3%85%E7%A8%8B%E5%BA%8F%E7%9A%84%E6%8C%87%E7%A4%BA%E5%AE%89%E8%A3%85JDK%E3%80%82\">https:\/\/www.oracle.com\/java\/technologies\/javase-downloads.html\u3002\u7136\u540e\uff0c\u6309\u7167\u5b89\u88c5\u7a0b\u5e8f\u7684\u6307\u793a\u5b89\u88c5JDK\u3002<\/a><\/li>\n\n\n\n<li>\u914d\u7f6eJava\u73af\u5883\u53d8\u91cf\uff1a \u5b89\u88c5JDK\u540e\uff0c\u9700\u8981\u914d\u7f6eJava\u73af\u5883\u53d8\u91cf\u3002\u5728Windows\u7cfb\u7edf\u4e2d\uff0c\u6253\u5f00\u201c\u63a7\u5236\u9762\u677f\u201d-&gt;\u201c\u7cfb\u7edf\u201d-&gt;\u201c\u9ad8\u7ea7\u7cfb\u7edf\u8bbe\u7f6e\u201d-&gt;\u201c\u73af\u5883\u53d8\u91cf\u201d\uff0c\u5728\u201c\u7cfb\u7edf\u53d8\u91cf\u201d\u4e2d\u627e\u5230\u201cPath\u201d\u53d8\u91cf\uff0c\u6dfb\u52a0Java\u7684bin\u76ee\u5f55\u8def\u5f84\uff0c\u5982\uff1aC:\\Program Files\\Java\\jdk1.8.0_241\\bin\u3002\u7136\u540e\uff0c\u70b9\u51fb\u201c\u786e\u5b9a\u201d\u4fdd\u5b58\u73af\u5883\u53d8\u91cf\u914d\u7f6e\u3002<\/li>\n\n\n\n<li>\u5b89\u88c5Maven\uff1a Maven\u662f\u4e00\u4e2aJava\u6784\u5efa\u5de5\u5177\uff0c\u5b83\u53ef\u4ee5\u5e2e\u52a9\u6211\u4eec\u7ba1\u7406\u9879\u76ee\u4f9d\u8d56\u3001\u7f16\u8bd1\u6253\u5305\u3001\u53d1\u5e03\u7b49\u7b49\u3002\u9996\u5148\uff0c\u524d\u5f80Apache\u5b98\u7f51\u4e0b\u8f7d\u6700\u65b0\u7248\u672c\u7684Maven\u5b89\u88c5\u7a0b\u5e8f\uff0c\u7f51\u5740\u4e3a\uff1a<a href=\"https:\/\/maven.apache.org\/download.cgi%E3%80%82%E7%84%B6%E5%90%8E%EF%BC%8C%E6%8C%89%E7%85%A7%E5%AE%89%E8%A3%85%E7%A8%8B%E5%BA%8F%E7%9A%84%E6%8C%87%E7%A4%BA%E5%AE%89%E8%A3%85Maven%E3%80%82\">https:\/\/maven.apache.org\/download.cgi\u3002\u7136\u540e\uff0c\u6309\u7167\u5b89\u88c5\u7a0b\u5e8f\u7684\u6307\u793a\u5b89\u88c5Maven\u3002<\/a><\/li>\n\n\n\n<li>\u914d\u7f6eMaven\u73af\u5883\u53d8\u91cf\uff1a \u5b89\u88c5Maven\u540e\uff0c\u9700\u8981\u914d\u7f6eMaven\u73af\u5883\u53d8\u91cf\u3002\u5728Windows\u7cfb\u7edf\u4e2d\uff0c\u6253\u5f00\u201c\u63a7\u5236\u9762\u677f\u201d-&gt;\u201c\u7cfb\u7edf\u201d-&gt;\u201c\u9ad8\u7ea7\u7cfb\u7edf\u8bbe\u7f6e\u201d-&gt;\u201c\u73af\u5883\u53d8\u91cf\u201d\uff0c\u5728\u201c\u7cfb\u7edf\u53d8\u91cf\u201d\u4e2d\u6dfb\u52a0\u65b0\u53d8\u91cf\u201cMAVEN_HOME\u201d\uff0c\u503c\u4e3aMaven\u7684\u5b89\u88c5\u8def\u5f84\uff0c\u5982\uff1aC:\\apache-maven-3.6.3\u3002\u7136\u540e\uff0c\u5728\u201c\u7cfb\u7edf\u53d8\u91cf\u201d\u4e2d\u627e\u5230\u201cPath\u201d\u53d8\u91cf\uff0c\u6dfb\u52a0Maven\u7684bin\u76ee\u5f55\u8def\u5f84\uff0c\u5982\uff1aC:\\apache-maven-3.6.3\\bin\u3002\u6700\u540e\uff0c\u70b9\u51fb\u201c\u786e\u5b9a\u201d\u4fdd\u5b58\u73af\u5883\u53d8\u91cf\u914d\u7f6e\u3002<\/li>\n\n\n\n<li>\u9a8c\u8bc1\u5b89\u88c5\uff1a \u6253\u5f00\u547d\u4ee4\u884c\u7a97\u53e3\uff0c\u8f93\u5165\u201cjava -version\u201d\u548c\u201cmvn -version\u201d\u547d\u4ee4\uff0c\u5206\u522b\u67e5\u770bJava\u548cMaven\u7684\u7248\u672c\u53f7\u662f\u5426\u6b63\u786e\u663e\u793a\u3002\u5982\u679c\u6b63\u786e\u663e\u793a\u4e86\u7248\u672c\u53f7\uff0c\u5219\u8bf4\u660eJava\u548cMaven\u5df2\u7ecf\u6210\u529f\u5b89\u88c5\u5e76\u914d\u7f6e\u597d\u4e86\u73af\u5883\u53d8\u91cf\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u901a\u8fc7\u4e0a\u8ff0\u6b65\u9aa4\uff0cJava\u548cMaven\u5c31\u6210\u529f\u5b89\u88c5\u5e76\u914d\u7f6e\u597d\u4e86\u73af\u5883\u53d8\u91cf\uff0c\u53ef\u4ee5\u987a\u5229\u5730\u8fdb\u884cSpring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u5f00\u53d1\u548c\u6784\u5efa\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u5982\u4f55\u521b\u5efaSpring Boot\u9879\u76ee<\/p>\n\n\n\n<p>\u521b\u5efaSpring Boot\u9879\u76ee\u6709\u591a\u79cd\u65b9\u6cd5\uff0c\u4e0b\u9762\u4ecb\u7ecd\u4e24\u79cd\u5e38\u7528\u7684\u65b9\u6cd5\u3002<\/p>\n\n\n\n<p>\u65b9\u6cd5\u4e00\uff1a\u4f7f\u7528Spring Initializr\u521b\u5efa\u9879\u76ee<\/p>\n\n\n\n<p>Spring Initializr\u662f\u4e00\u4e2a\u53ef\u89c6\u5316\u7684Web\u754c\u9762\uff0c\u53ef\u4ee5\u5feb\u901f\u521b\u5efa\u57fa\u4e8eSpring Boot\u7684\u9879\u76ee\u3002\u4ee5\u4e0b\u662f\u5177\u4f53\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u6253\u5f00Spring Initializr\u7684\u7f51\u5740\uff1a<a href=\"https:\/\/start.spring.io\/%EF%BC%8C%E9%80%89%E6%8B%A9%E9%9C%80%E8%A6%81%E7%9A%84%E9%A1%B9%E7%9B%AE%E9%85%8D%E7%BD%AE%EF%BC%8C%E5%A6%82%E9%A1%B9%E7%9B%AE%E7%B1%BB%E5%9E%8B%E3%80%81%E8%AF%AD%E8%A8%80%E3%80%81Spring\">https:\/\/start.spring.io\/\uff0c\u9009\u62e9\u9700\u8981\u7684\u9879\u76ee\u914d\u7f6e\uff0c\u5982\u9879\u76ee\u7c7b\u578b\u3001\u8bed\u8a00\u3001Spring<\/a>&nbsp;Boot\u7248\u672c\u3001\u5de5\u7a0b\u540d\u3001\u5305\u540d\u3001\u4f9d\u8d56\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u70b9\u51fb\u201cGenerate\u201d\u6309\u94ae\uff0c\u751f\u6210\u4e00\u4e2a\u57fa\u4e8eSpring Boot\u7684Maven\u9879\u76ee\u7684zip\u538b\u7f29\u5305\u3002<\/li>\n\n\n\n<li>\u89e3\u538b\u8be5zip\u6587\u4ef6\uff0c\u5c06\u6587\u4ef6\u5939\u5bfc\u5165\u5f00\u53d1\u5de5\u5177\u4e2d\u5373\u53ef\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u65b9\u6cd5\u4e8c\uff1a\u4f7f\u7528IDE\u521b\u5efa\u9879\u76ee<\/p>\n\n\n\n<p>\u5927\u591a\u6570IDE\u90fd\u652f\u6301\u521b\u5efa\u57fa\u4e8eSpring Boot\u7684\u9879\u76ee\uff0c\u4e0b\u9762\u4ee5IntelliJ IDEA\u4e3a\u4f8b\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u6253\u5f00IntelliJ IDEA\uff0c\u9009\u62e9\u201cCreate New Project\u201d\u3002<\/li>\n\n\n\n<li>\u5728\u201cNew Project\u201d\u7a97\u53e3\u4e2d\u9009\u62e9\u201cSpring Initializr\u201d\u7c7b\u578b\u7684\u9879\u76ee\uff0c\u5e76\u8bbe\u7f6e\u9879\u76ee\u7684\u914d\u7f6e\u4fe1\u606f\u3002<\/li>\n\n\n\n<li>\u5728\u201cSpring Initializr\u201d\u7a97\u53e3\u4e2d\uff0c\u8bbe\u7f6e\u9879\u76ee\u7684\u914d\u7f6e\u4fe1\u606f\uff0c\u5982\u5de5\u7a0b\u540d\u3001\u5305\u540d\u3001\u4f9d\u8d56\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u70b9\u51fb\u201cNext\u201d\u6309\u94ae\uff0c\u5b8c\u6210\u9879\u76ee\u914d\u7f6e\u3002<\/li>\n\n\n\n<li>\u70b9\u51fb\u201cFinish\u201d\u6309\u94ae\uff0c\u5b8c\u6210\u9879\u76ee\u521b\u5efa\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u65e0\u8bba\u662f\u4f7f\u7528Spring Initializr\u8fd8\u662fIDE\u521b\u5efa\u9879\u76ee\uff0c\u521b\u5efa\u5b8c\u6210\u540e\u4f1a\u751f\u6210\u4e00\u4e2a\u57fa\u4e8eSpring Boot\u7684Maven\u9879\u76ee\u3002\u5f00\u53d1\u8005\u53ef\u4ee5\u5728\u8be5\u9879\u76ee\u7684\u57fa\u7840\u4e0a\u8fdb\u884c\u5f00\u53d1\uff0c\u4f7f\u7528Spring Boot\u63d0\u4f9b\u7684\u4e30\u5bcc\u529f\u80fd\u8fdb\u884c\u5feb\u901f\u5f00\u53d1\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpring Boot\u7684IDE\u652f\u6301<\/p>\n\n\n\n<p>Spring Boot\u62e5\u6709\u5e7f\u6cdb\u7684IDE\u652f\u6301\uff0c\u5e38\u89c1\u7684IDE\u6709Eclipse\u3001IntelliJ IDEA\u3001NetBeans\u7b49\u3002Spring Boot\u7684IDE\u652f\u6301\u63d0\u4f9b\u4e86\u8bb8\u591a\u6709\u7528\u7684\u5de5\u5177\u548c\u63d2\u4ef6\uff0c\u5982\u81ea\u52a8\u5b8c\u6210\u3001\u4ee3\u7801\u91cd\u6784\u3001\u8c03\u8bd5\u7b49\u7b49\uff0c\u5927\u5927\u63d0\u9ad8\u4e86\u5f00\u53d1\u6548\u7387\u548c\u4ee3\u7801\u8d28\u91cf\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u7684IDE\u652f\u6301\u7684\u4e00\u4e9b\u7279\u6027\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u4ee3\u7801\u81ea\u52a8\u5b8c\u6210\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u6839\u636e\u914d\u7f6e\u6587\u4ef6\u3001\u4f9d\u8d56\u5173\u7cfb\u7b49\u4fe1\u606f\uff0c\u81ea\u52a8\u63d0\u793a\u4ee3\u7801\u8865\u5168\uff0c\u51cf\u5c11\u4e86\u5f00\u53d1\u4eba\u5458\u8f93\u5165\u4ee3\u7801\u7684\u5de5\u4f5c\u91cf\u3002<\/li>\n\n\n\n<li>\u4ee3\u7801\u91cd\u6784\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u5bf9\u4ee3\u7801\u8fdb\u884c\u91cd\u6784\uff0c\u5982\u63d0\u53d6\u65b9\u6cd5\u3001\u63d0\u53d6\u53d8\u91cf\u3001\u91cd\u547d\u540d\u7b49\u7b49\uff0c\u4f7f\u5f97\u4ee3\u7801\u66f4\u52a0\u6613\u4e8e\u7ef4\u62a4\u548c\u4fee\u6539\u3002<\/li>\n\n\n\n<li>\u4ee3\u7801\u8c03\u8bd5\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u8fdb\u884c\u4ee3\u7801\u8c03\u8bd5\uff0c\u53ef\u4ee5\u5728\u4ee3\u7801\u4e2d\u8bbe\u7f6e\u65ad\u70b9\uff0c\u67e5\u770b\u53d8\u91cf\u7684\u503c\uff0c\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u8c03\u8bd5\u4ee3\u7801\u3002<\/li>\n\n\n\n<li>\u4f9d\u8d56\u7ba1\u7406\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u7ba1\u7406\u9879\u76ee\u4f9d\u8d56\uff0c\u81ea\u52a8\u4e0b\u8f7d\u548c\u5bfc\u5165\u6240\u9700\u7684\u4f9d\u8d56\u5e93\uff0c\u5e76\u4fdd\u6301\u4f9d\u8d56\u5e93\u7684\u7248\u672c\u66f4\u65b0\u3002<\/li>\n\n\n\n<li>\u9879\u76ee\u6784\u5efa\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u6784\u5efa\u548c\u6253\u5305\u9879\u76ee\uff0c\u5982Maven\u548cGradle\u6784\u5efa\u5de5\u5177\u7684\u96c6\u6210\uff0c\u53ef\u4ee5\u5feb\u901f\u6784\u5efa\u9879\u76ee\u548c\u751f\u6210\u53ef\u6267\u884cJar\u5305\u3002<\/li>\n\n\n\n<li>\u4e00\u952e\u90e8\u7f72\uff1a Spring Boot\u7684IDE\u63d2\u4ef6\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u4e00\u952e\u90e8\u7f72\u5e94\u7528\u7a0b\u5e8f\uff0c\u5982\u5c06\u9879\u76ee\u90e8\u7f72\u5230Tomcat\u3001Jetty\u6216Undertow\u7b49\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u4e0a\uff0c\u6216\u5c06\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230\u4e91\u7aef\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u7684IDE\u652f\u6301\u63d0\u4f9b\u4e86\u8bb8\u591a\u6709\u7528\u7684\u5de5\u5177\u548c\u63d2\u4ef6\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u66f4\u5feb\u5730\u5f00\u53d1\u548c\u7ef4\u62a4\u5e94\u7528\u7a0b\u5e8f\uff0c\u63d0\u9ad8\u4e86\u5f00\u53d1\u6548\u7387\u548c\u4ee3\u7801\u8d28\u91cf\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caVSCode\u4e0b\u7684Spring Boot\u7684\u5f00\u53d1<\/p>\n\n\n\n<p>VSCode\u662f\u4e00\u6b3e\u8f7b\u91cf\u7ea7\u7684\u5f00\u53d1\u5de5\u5177\uff0c\u63d0\u4f9b\u4e86\u4e30\u5bcc\u7684\u63d2\u4ef6\u548c\u6269\u5c55\uff0c\u53ef\u4ee5\u652f\u6301\u591a\u79cd\u7f16\u7a0b\u8bed\u8a00\u548c\u5f00\u53d1\u6846\u67b6\uff0c\u5305\u62ecSpring Boot\u3002\u4e0b\u9762\u4ecb\u7ecd\u5728VSCode\u4e0b\u5f00\u53d1Spring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u5177\u4f53\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5b89\u88c5Java\u548cMaven\uff1a \u5728VSCode\u4e2d\u5f00\u53d1Spring Boot\u5e94\u7528\u7a0b\u5e8f\uff0c\u9700\u8981\u5148\u5b89\u88c5Java\u548cMaven\u73af\u5883\uff0c\u5e76\u914d\u7f6e\u597d\u76f8\u5173\u7684\u73af\u5883\u53d8\u91cf\u3002<\/li>\n\n\n\n<li>\u5b89\u88c5VSCode\u63d2\u4ef6\uff1a \u6253\u5f00VSCode\uff0c\u641c\u7d22\u5e76\u5b89\u88c5\u201cSpring Boot Extension Pack\u201d\u63d2\u4ef6\uff0c\u8fd9\u4e2a\u63d2\u4ef6\u5305\u542b\u4e86\u5e38\u7528\u7684Spring Boot\u63d2\u4ef6\uff0c\u5982Spring Boot Tools\u3001Spring Boot Dashboard\u3001Spring Initializr\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u521b\u5efaSpring Boot\u9879\u76ee\uff1a \u5728VSCode\u4e2d\uff0c\u901a\u8fc7Spring Initializr\u63d2\u4ef6\u53ef\u4ee5\u521b\u5efaSpring Boot\u9879\u76ee\u3002\u5728\u83dc\u5355\u680f\u4e2d\uff0c\u9009\u62e9\u201cView\u201d-&gt;\u201cCommand Palette\u201d\uff0c\u5728\u641c\u7d22\u6846\u4e2d\u8f93\u5165\u201cSpring Initializr\u201d\uff0c\u9009\u62e9\u201cSpring Initializr: Generate a Maven Project\u201d\uff0c\u6309\u7167\u63d0\u793a\u8f93\u5165\u9879\u76ee\u4fe1\u606f\uff0c\u5373\u53ef\u521b\u5efa\u4e00\u4e2aSpring Boot\u9879\u76ee\u3002<\/li>\n\n\n\n<li>\u7f16\u5199\u4ee3\u7801\uff1a \u5728VSCode\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Java\u6216Kotlin\u7b49\u8bed\u8a00\u7f16\u5199Spring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u4ee3\u7801\u3002\u4f7f\u7528Spring Boot Tools\u63d2\u4ef6\u53ef\u4ee5\u5feb\u901f\u751f\u6210Spring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u4ee3\u7801\uff0c\u5982\u63a7\u5236\u5668\u3001\u670d\u52a1\u3001\u4ed3\u5e93\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u8c03\u8bd5\u4ee3\u7801\uff1a \u5728VSCode\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Boot Tools\u63d2\u4ef6\u8fdb\u884c\u8c03\u8bd5\u3002\u5728\u4ee3\u7801\u4e2d\u8bbe\u7f6e\u65ad\u70b9\uff0c\u542f\u52a8\u8c03\u8bd5\u6a21\u5f0f\uff0c\u5373\u53ef\u5728\u65ad\u70b9\u5904\u67e5\u770b\u53d8\u91cf\u7684\u503c\u3001\u5806\u6808\u4fe1\u606f\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u6253\u5305\u548c\u90e8\u7f72\uff1a \u5728VSCode\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Maven\u63d2\u4ef6\u5c06Spring Boot\u5e94\u7528\u7a0b\u5e8f\u6253\u5305\u4e3a\u53ef\u6267\u884cJar\u5305\u3002\u5728\u547d\u4ee4\u884c\u4e2d\u8f93\u5165\u201cmvn clean package\u201d\u547d\u4ee4\uff0c\u5373\u53ef\u751f\u6210\u53ef\u6267\u884cJar\u5305\u3002\u4f7f\u7528Spring Boot Dashboard\u63d2\u4ef6\u53ef\u4ee5\u5feb\u901f\u90e8\u7f72\u5e94\u7528\u7a0b\u5e8f\u5230\u5d4c\u5165\u5f0fWeb\u670d\u52a1\u5668\u6216\u4e91\u7aef\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728VSCode\u4e0b\u5f00\u53d1Spring Boot\u5e94\u7528\u7a0b\u5e8f\u53ef\u4ee5\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\u548c\u4ee3\u7801\u8d28\u91cf\uff0c\u901a\u8fc7\u4e30\u5bcc\u7684\u63d2\u4ef6\u548c\u6269\u5c55\uff0c\u53ef\u4ee5\u66f4\u65b9\u4fbf\u5730\u7f16\u5199\u3001\u8c03\u8bd5\u548c\u90e8\u7f72Spring Boot\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpring Boot\u7684\u6838\u5fc3\u6a21\u5757<\/p>\n\n\n\n<p>Spring Boot\u662f\u5efa\u7acb\u5728Spring Framework\u4e4b\u4e0a\u7684\uff0c\u5b83\u7ee7\u627f\u4e86Spring Framework\u7684\u8bb8\u591a\u4f18\u79c0\u7279\u6027\uff0c\u540c\u65f6\u4e5f\u5f15\u5165\u4e86\u8bb8\u591a\u65b0\u7684\u529f\u80fd\u548c\u6a21\u5757\u3002\u4e0b\u9762\u4ecb\u7ecdSpring Boot\u7684\u6838\u5fc3\u6a21\u5757\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Spring Boot Starter\uff1a Spring Boot Starter\u662fSpring Boot\u7684\u6838\u5fc3\u6a21\u5757\u4e4b\u4e00\uff0c\u5b83\u63d0\u4f9b\u4e86\u8bb8\u591a\u5e38\u7528\u7684\u5f00\u7bb1\u5373\u7528\u7684\u529f\u80fd\uff0c\u5982Web\u5e94\u7528\u7a0b\u5e8f\u3001\u5b89\u5168\u3001JPA\u3001\u7f13\u5b58\u3001\u90ae\u4ef6\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u5f15\u5165Spring Boot Starter\u4f9d\u8d56\uff0c\u5373\u53ef\u5feb\u901f\u96c6\u6210\u8fd9\u4e9b\u5e38\u7528\u529f\u80fd\u3002<\/li>\n\n\n\n<li>Spring Boot Autoconfigure\uff1a Spring Boot Autoconfigure\u662fSpring Boot\u7684\u53e6\u4e00\u4e2a\u6838\u5fc3\u6a21\u5757\uff0c\u5b83\u53ef\u4ee5\u6839\u636e\u5e94\u7528\u7a0b\u5e8f\u7684\u4f9d\u8d56\u5173\u7cfb\u81ea\u52a8\u914d\u7f6eSpring\u5e94\u7528\u7a0b\u5e8f\uff0c\u800c\u65e0\u9700\u624b\u52a8\u7f16\u5199\u914d\u7f6e\u6587\u4ef6\u3002\u5b83\u901a\u8fc7\u6761\u4ef6\u6ce8\u89e3\u3001\u5c5e\u6027\u914d\u7f6e\u7b49\u6280\u672f\uff0c\u4e3a\u5f00\u53d1\u4eba\u5458\u63d0\u4f9b\u4e86\u5feb\u901f\u914d\u7f6eSpring\u5e94\u7528\u7a0b\u5e8f\u7684\u65b9\u6cd5\u3002<\/li>\n\n\n\n<li>Spring Boot Actuator\uff1a Spring Boot Actuator\u662fSpring Boot\u7684\u76d1\u63a7\u548c\u7ba1\u7406\u6a21\u5757\uff0c\u5b83\u63d0\u4f9b\u4e86\u8bb8\u591a\u76d1\u63a7\u548c\u7ba1\u7406\u7aef\u70b9\uff0c\u5982\/health\u3001\/metrics\u3001\/info\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e9b\u7aef\u70b9\u4e86\u89e3\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u3001\u6027\u80fd\u6307\u6807\u3001\u914d\u7f6e\u4fe1\u606f\u7b49\u7b49\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e9b\u7aef\u70b9\u5bf9\u5e94\u7528\u7a0b\u5e8f\u8fdb\u884c\u7ba1\u7406\u548c\u63a7\u5236\u3002<\/li>\n\n\n\n<li>Spring Boot CLI\uff1a Spring Boot CLI\u662f\u4e00\u4e2a\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u53ef\u4ee5\u5feb\u901f\u521b\u5efa\u3001\u8fd0\u884c\u548c\u6d4b\u8bd5Spring Boot\u5e94\u7528\u7a0b\u5e8f\u3002\u5b83\u53ef\u4ee5\u5728\u547d\u4ee4\u884c\u4e2d\u8f93\u5165\u7b80\u6d01\u7684\u547d\u4ee4\uff0c\u5373\u53ef\u521b\u5efa\u57fa\u4e8eGroovy\u6216Kotlin\u7684Spring Boot\u5e94\u7528\u7a0b\u5e8f\uff0c\u8fd8\u53ef\u4ee5\u5728\u547d\u4ee4\u884c\u4e2d\u8fd0\u884c\u548c\u6d4b\u8bd5\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n\n\n\n<li>Spring Boot Test\uff1a Spring Boot Test\u662fSpring Boot\u7684\u6d4b\u8bd5\u6a21\u5757\uff0c\u5b83\u63d0\u4f9b\u4e86\u8bb8\u591a\u5e38\u7528\u7684\u6d4b\u8bd5\u5de5\u5177\u548c\u6ce8\u89e3\uff0c\u5982@SpringBootTest\u3001@WebMvcTest\u3001@DataJpaTest\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u4f7f\u7528\u8fd9\u4e9b\u5de5\u5177\u548c\u6ce8\u89e3\u8fdb\u884c\u5355\u5143\u6d4b\u8bd5\u3001\u96c6\u6210\u6d4b\u8bd5\u548c\u7aef\u5230\u7aef\u6d4b\u8bd5\uff0c\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u8d28\u91cf\u548c\u7a33\u5b9a\u6027\u3002<\/li>\n\n\n\n<li>Spring Boot DevTools\uff1a Spring Boot DevTools\u662fSpring Boot\u7684\u5f00\u53d1\u5de5\u5177\u6a21\u5757\uff0c\u5b83\u53ef\u4ee5\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\uff0c\u5982\u81ea\u52a8\u91cd\u542f\u3001\u81ea\u52a8\u5237\u65b0\u3001\u9759\u6001\u8d44\u6e90\u7f13\u5b58\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165Spring Boot DevTools\u4f9d\u8d56\uff0c\u5373\u53ef\u4eab\u53d7\u8fd9\u4e9b\u4fbf\u6377\u7684\u5f00\u53d1\u5de5\u5177\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u7684\u6838\u5fc3\u6a21\u5757\u63d0\u4f9b\u4e86\u4e30\u5bcc\u7684\u529f\u80fd\u548c\u5de5\u5177\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u521b\u5efa\u3001\u914d\u7f6e\u548c\u7ba1\u7406Spring\u5e94\u7528\u7a0b\u5e8f\uff0c\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\u548c\u5e94\u7528\u7a0b\u5e8f\u8d28\u91cf\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpring Boot\u81ea\u52a8\u914d\u7f6e<\/p>\n\n\n\n<p>Spring Boot\u81ea\u52a8\u914d\u7f6e\u662fSpring Boot\u7684\u4e00\u4e2a\u6838\u5fc3\u7279\u6027\uff0c\u5b83\u53ef\u4ee5\u6839\u636e\u5e94\u7528\u7a0b\u5e8f\u7684\u4f9d\u8d56\u5173\u7cfb\u81ea\u52a8\u914d\u7f6eSpring\u5e94\u7528\u7a0b\u5e8f\uff0c\u800c\u65e0\u9700\u624b\u52a8\u7f16\u5199\u914d\u7f6e\u6587\u4ef6\u3002Spring Boot\u81ea\u52a8\u914d\u7f6e\u57fa\u4e8e\u6761\u4ef6\u6ce8\u89e3\u548cSpring Bean\u7684\u673a\u5236\uff0c\u5b83\u4f1a\u81ea\u52a8\u626b\u63cf\u5e94\u7528\u7a0b\u5e8f\u7684\u4f9d\u8d56\u5173\u7cfb\uff0c\u6839\u636e\u4f9d\u8d56\u5173\u7cfb\u81ea\u52a8\u914d\u7f6e\u5e94\u7528\u7a0b\u5e8f\u6240\u9700\u7684Spring Bean\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u81ea\u52a8\u914d\u7f6e\u7684\u5177\u4f53\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u626b\u63cf\u7c7b\u8def\u5f84\uff1a Spring Boot\u4f1a\u626b\u63cf\u5e94\u7528\u7a0b\u5e8f\u7684\u7c7b\u8def\u5f84\uff0c\u5bfb\u627e\u4e0e\u81ea\u52a8\u914d\u7f6e\u76f8\u5173\u7684\u7c7b\u3002\u8fd9\u4e9b\u7c7b\u5305\u542b\u4e86\u81ea\u52a8\u914d\u7f6e\u6240\u9700\u7684Spring Bean\u3002<\/li>\n\n\n\n<li>\u81ea\u52a8\u914d\u7f6e\u6761\u4ef6\uff1a Spring Boot\u4f1a\u6839\u636e\u4e00\u7ec4\u81ea\u52a8\u914d\u7f6e\u6761\u4ef6\u5224\u65ad\u662f\u5426\u9700\u8981\u81ea\u52a8\u914d\u7f6eSpring Bean\u3002\u8fd9\u4e9b\u6761\u4ef6\u5305\u62ec\uff1a\u7c7b\u662f\u5426\u5b58\u5728\u3001\u914d\u7f6e\u5c5e\u6027\u662f\u5426\u5b58\u5728\u3001Spring Bean\u662f\u5426\u5b58\u5728\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u81ea\u52a8\u914d\u7f6e\u5019\u9009\u9879\uff1a \u6839\u636e\u81ea\u52a8\u914d\u7f6e\u6761\u4ef6\uff0cSpring Boot\u4f1a\u4e3a\u6bcf\u4e2aSpring Bean\u751f\u6210\u4e00\u7ec4\u81ea\u52a8\u914d\u7f6e\u5019\u9009\u9879\u3002\u8fd9\u4e9b\u5019\u9009\u9879\u5305\u542b\u4e86\u81ea\u52a8\u914d\u7f6e\u6240\u9700\u7684\u5c5e\u6027\u548c\u4f9d\u8d56\u5173\u7cfb\u3002<\/li>\n\n\n\n<li>\u81ea\u52a8\u914d\u7f6e\u51b3\u7b56\uff1a \u5bf9\u4e8e\u6bcf\u4e2aSpring Bean\uff0cSpring Boot\u4f1a\u6839\u636e\u5019\u9009\u9879\u8fdb\u884c\u81ea\u52a8\u914d\u7f6e\u51b3\u7b56\u3002\u5982\u679c\u53ea\u6709\u4e00\u4e2a\u5019\u9009\u9879\uff0c\u5219\u81ea\u52a8\u914d\u7f6eSpring Bean\uff1b\u5982\u679c\u6709\u591a\u4e2a\u5019\u9009\u9879\uff0c\u5219\u6839\u636e\u4f18\u5148\u7ea7\u8fdb\u884c\u9009\u62e9\uff1b\u5982\u679c\u6ca1\u6709\u5019\u9009\u9879\uff0c\u5219\u4e0d\u8fdb\u884c\u81ea\u52a8\u914d\u7f6e\u3002<\/li>\n\n\n\n<li>\u81ea\u5b9a\u4e49\u914d\u7f6e\uff1a \u5982\u679c\u5f00\u53d1\u4eba\u5458\u9700\u8981\u81ea\u5b9a\u4e49\u67d0\u4e9b\u914d\u7f6e\uff0c\u53ef\u4ee5\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u6dfb\u52a0\u81ea\u5b9a\u4e49\u914d\u7f6e\u6587\u4ef6\uff0c\u5e76\u6dfb\u52a0@Configuration\u6ce8\u89e3\u3002\u81ea\u5b9a\u4e49\u914d\u7f6e\u53ef\u4ee5\u8986\u76d6\u81ea\u52a8\u914d\u7f6e\uff0c\u4ece\u800c\u5b9e\u73b0\u81ea\u5b9a\u4e49\u914d\u7f6e\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot\u81ea\u52a8\u914d\u7f6e\u662f\u4e00\u79cd\u5feb\u901f\u914d\u7f6eSpring\u5e94\u7528\u7a0b\u5e8f\u7684\u65b9\u6cd5\uff0c\u53ef\u4ee5\u5927\u5927\u7b80\u5316\u5e94\u7528\u7a0b\u5e8f\u7684\u914d\u7f6e\u5de5\u4f5c\uff0c\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\u548c\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u7ef4\u62a4\u6027\u3002\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u8981\u5f15\u5165\u6240\u9700\u7684\u4f9d\u8d56\uff0c\u5373\u53ef\u81ea\u52a8\u914d\u7f6eSpring\u5e94\u7528\u7a0b\u5e8f\u3002\u5982\u679c\u9700\u8981\u81ea\u5b9a\u4e49\u914d\u7f6e\uff0c\u5219\u53ef\u4ee5\u901a\u8fc7\u6dfb\u52a0\u81ea\u5b9a\u4e49\u914d\u7f6e\u6587\u4ef6\u6765\u8986\u76d6\u81ea\u52a8\u914d\u7f6e\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot Starter<\/p>\n\n\n\n<p>Spring Boot Starter\u662fSpring Boot\u7684\u4e00\u4e2a\u6838\u5fc3\u6a21\u5757\uff0c\u5b83\u63d0\u4f9b\u4e86\u4e00\u7ec4\u5e38\u7528\u7684\u5f00\u7bb1\u5373\u7528\u7684\u529f\u80fd\uff0c\u5982Web\u5e94\u7528\u7a0b\u5e8f\u3001\u5b89\u5168\u3001JPA\u3001\u7f13\u5b58\u3001\u90ae\u4ef6\u7b49\u7b49\u3002Spring Boot Starter\u662f\u4e00\u79cd\u4f9d\u8d56\u7ba1\u7406\u673a\u5236\uff0c\u5b83\u901a\u8fc7\u5f15\u5165\u6240\u9700\u7684Starter\u4f9d\u8d56\uff0c\u5373\u53ef\u5feb\u901f\u96c6\u6210\u76f8\u5e94\u7684\u529f\u80fd\uff0c\u800c\u65e0\u9700\u624b\u52a8\u7f16\u5199\u914d\u7f6e\u6587\u4ef6\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u5f15\u5165Spring Boot Starter\u4f9d\u8d56\uff0c\u5373\u53ef\u5feb\u901f\u642d\u5efaSpring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u57fa\u7840\u6846\u67b6\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u4ecb\u7ecd\u4e00\u4e9b\u5e38\u7528\u7684Spring Boot Starter\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Spring Boot Starter Web\uff1a Spring Boot Starter Web\u662fSpring Boot\u4e2d\u6700\u5e38\u7528\u7684Starter\u4e4b\u4e00\uff0c\u5b83\u5305\u542b\u4e86Spring MVC\u3001Tomcat\u3001Jackson\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u642d\u5efaWeb\u5e94\u7528\u7a0b\u5e8f\u7684\u57fa\u7840\u6846\u67b6\u3002<\/li>\n\n\n\n<li>Spring Boot Starter Security\uff1a Spring Boot Starter Security\u662fSpring Boot\u7684\u5b89\u5168Starter\uff0c\u5b83\u5305\u542b\u4e86Spring Security\u3001OAuth2\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u642d\u5efa\u5b89\u5168\u7684Web\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n\n\n\n<li>Spring Boot Starter Data JPA\uff1a Spring Boot Starter Data JPA\u662fSpring Boot\u7684\u6570\u636e\u8bbf\u95eeStarter\uff0c\u5b83\u5305\u542b\u4e86Spring Data JPA\u3001Hibernate\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u96c6\u6210\u6570\u636e\u8bbf\u95ee\u5c42\u3002<\/li>\n\n\n\n<li>Spring Boot Starter Test\uff1a Spring Boot Starter Test\u662fSpring Boot\u7684\u6d4b\u8bd5Starter\uff0c\u5b83\u5305\u542b\u4e86JUnit\u3001Mockito\u3001Spring Test\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u7f16\u5199\u5355\u5143\u6d4b\u8bd5\u3001\u96c6\u6210\u6d4b\u8bd5\u548c\u7aef\u5230\u7aef\u6d4b\u8bd5\u3002<\/li>\n\n\n\n<li>Spring Boot Starter Cache\uff1a Spring Boot Starter Cache\u662fSpring Boot\u7684\u7f13\u5b58Starter\uff0c\u5b83\u5305\u542b\u4e86Spring Cache\u3001Ehcache\u3001Guava Cache\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u96c6\u6210\u7f13\u5b58\u3002<\/li>\n\n\n\n<li>Spring Boot Starter Mail\uff1a Spring Boot Starter Mail\u662fSpring Boot\u7684\u90ae\u4ef6Starter\uff0c\u5b83\u5305\u542b\u4e86JavaMail\u3001Spring Mail\u7b49\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u96c6\u6210\u90ae\u4ef6\u53d1\u9001\u529f\u80fd\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot Starter\u63d0\u4f9b\u4e86\u4e00\u7ec4\u5e38\u7528\u7684\u5f00\u7bb1\u5373\u7528\u7684\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u96c6\u6210Spring\u5e94\u7528\u7a0b\u5e8f\u6240\u9700\u7684\u529f\u80fd\uff0c\u964d\u4f4e\u4e86\u5f00\u53d1\u6210\u672c\uff0c\u63d0\u9ad8\u4e86\u5f00\u53d1\u6548\u7387\u3002\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u8981\u5728\u9879\u76ee\u4e2d\u5f15\u5165\u6240\u9700\u7684Starter\u4f9d\u8d56\uff0c\u5373\u53ef\u5feb\u901f\u642d\u5efa\u5e94\u7528\u7a0b\u5e8f\u7684\u57fa\u7840\u6846\u67b6\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot Actuator<\/p>\n\n\n\n<p>Spring Boot Actuator\u662fSpring Boot\u7684\u4e00\u4e2a\u76d1\u63a7\u548c\u7ba1\u7406\u6a21\u5757\uff0c\u5b83\u63d0\u4f9b\u4e86\u8bb8\u591a\u76d1\u63a7\u548c\u7ba1\u7406\u7aef\u70b9\uff0c\u5982\/health\u3001\/metrics\u3001\/info\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e9b\u7aef\u70b9\u4e86\u89e3\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u3001\u6027\u80fd\u6307\u6807\u3001\u914d\u7f6e\u4fe1\u606f\u7b49\u7b49\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e9b\u7aef\u70b9\u5bf9\u5e94\u7528\u7a0b\u5e8f\u8fdb\u884c\u7ba1\u7406\u548c\u63a7\u5236\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u4ecb\u7ecdSpring Boot Actuator\u7684\u4e00\u4e9b\u5e38\u7528\u7aef\u70b9\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\/health\uff1a \/health\u7aef\u70b9\u7528\u4e8e\u68c0\u67e5\u5e94\u7528\u7a0b\u5e8f\u7684\u5065\u5eb7\u72b6\u51b5\uff0c\u5b83\u8fd4\u56de\u4e00\u4e2aJSON\u683c\u5f0f\u7684\u54cd\u5e94\uff0c\u5305\u542b\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u5065\u5eb7\u4fe1\u606f\uff0c\u5982\u78c1\u76d8\u7a7a\u95f4\u3001\u6570\u636e\u5e93\u8fde\u63a5\u3001\u5185\u5b58\u4f7f\u7528\u60c5\u51b5\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\/metrics\uff1a \/metrics\u7aef\u70b9\u7528\u4e8e\u76d1\u63a7\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u6307\u6807\uff0c\u5b83\u8fd4\u56de\u4e00\u4e2aJSON\u683c\u5f0f\u7684\u54cd\u5e94\uff0c\u5305\u542b\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u5404\u79cd\u6027\u80fd\u6307\u6807\uff0c\u5982\u8bf7\u6c42\u6570\u3001\u54cd\u5e94\u65f6\u95f4\u3001CPU\u4f7f\u7528\u60c5\u51b5\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\/info\uff1a \/info\u7aef\u70b9\u7528\u4e8e\u8fd4\u56de\u5e94\u7528\u7a0b\u5e8f\u7684\u57fa\u672c\u4fe1\u606f\uff0c\u5982\u5e94\u7528\u7a0b\u5e8f\u7684\u540d\u79f0\u3001\u7248\u672c\u53f7\u3001\u6784\u5efa\u65f6\u95f4\u7b49\u7b49\u3002\u8fd9\u4e9b\u4fe1\u606f\u53ef\u4ee5\u7528\u4e8e\u8bc6\u522b\u5e94\u7528\u7a0b\u5e8f\u7684\u7248\u672c\u548c\u72b6\u6001\u3002<\/li>\n\n\n\n<li>\/env\uff1a \/env\u7aef\u70b9\u7528\u4e8e\u83b7\u53d6\u5e94\u7528\u7a0b\u5e8f\u7684\u73af\u5883\u53d8\u91cf\uff0c\u5b83\u8fd4\u56de\u4e00\u4e2aJSON\u683c\u5f0f\u7684\u54cd\u5e94\uff0c\u5305\u542b\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u6240\u6709\u73af\u5883\u53d8\u91cf\u3002<\/li>\n\n\n\n<li>\/trace\uff1a \/trace\u7aef\u70b9\u7528\u4e8e\u8ddf\u8e2a\u5e94\u7528\u7a0b\u5e8f\u7684\u8bf7\u6c42\u548c\u54cd\u5e94\uff0c\u5b83\u8fd4\u56de\u4e00\u4e2aJSON\u683c\u5f0f\u7684\u54cd\u5e94\uff0c\u5305\u542b\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u8bf7\u6c42\u548c\u54cd\u5e94\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u5982\u8bf7\u6c42\u8def\u5f84\u3001\u8bf7\u6c42\u53c2\u6570\u3001\u54cd\u5e94\u72b6\u6001\u7801\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\/shutdown\uff1a \/shutdown\u7aef\u70b9\u7528\u4e8e\u5173\u95ed\u5e94\u7528\u7a0b\u5e8f\uff0c\u5b83\u53ef\u4ee5\u7528\u4e8e\u7ba1\u7406\u548c\u63a7\u5236\u5e94\u7528\u7a0b\u5e8f\u7684\u751f\u547d\u5468\u671f\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\/shutdown\u7aef\u70b9\u662f\u7981\u7528\u7684\uff0c\u9700\u8981\u624b\u52a8\u542f\u7528\u624d\u80fd\u4f7f\u7528\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u603b\u4e4b\uff0cSpring Boot Actuator\u63d0\u4f9b\u4e86\u4e00\u7ec4\u6709\u7528\u7684\u76d1\u63a7\u548c\u7ba1\u7406\u7aef\u70b9\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u4e86\u89e3\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u3001\u6027\u80fd\u6307\u6807\u3001\u914d\u7f6e\u4fe1\u606f\u7b49\u7b49\uff0c\u4e5f\u53ef\u4ee5\u7528\u4e8e\u7ba1\u7406\u548c\u63a7\u5236\u5e94\u7528\u7a0b\u5e8f\u7684\u751f\u547d\u5468\u671f\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u7aef\u70b9\u8fdb\u884c\u4f7f\u7528\u548c\u5b9a\u5236\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91ca\u63a7\u5236\u5668(Controller)<\/p>\n\n\n\n<p>\u5728Spring MVC\u4e2d\uff0c\u63a7\u5236\u5668(Controller)\u662f\u5904\u7406HTTP\u8bf7\u6c42\u5e76\u8fd4\u56deHTTP\u54cd\u5e94\u7684\u7ec4\u4ef6\u3002\u63a7\u5236\u5668\u63a5\u6536HTTP\u8bf7\u6c42\uff0c\u6839\u636e\u8bf7\u6c42\u7684\u5185\u5bb9\u548c\u4e1a\u52a1\u903b\u8f91\u8fdb\u884c\u5904\u7406\uff0c\u6700\u7ec8\u8fd4\u56deHTTP\u54cd\u5e94\u3002\u5728Spring Boot\u4e2d\uff0c\u63a7\u5236\u5668\u4ecd\u7136\u662fSpring MVC\u7684\u6838\u5fc3\u7ec4\u4ef6\uff0c\u7528\u4e8e\u5904\u7406HTTP\u8bf7\u6c42\u5e76\u8fd4\u56deHTTP\u54cd\u5e94\u3002<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u63a7\u5236\u5668\u901a\u5e38\u4f7f\u7528@Controller\u6216@RestController\u6ce8\u89e3\u8fdb\u884c\u6807\u6ce8\u3002@Controller\u6ce8\u89e3\u8868\u793a\u8be5\u7c7b\u662f\u4e00\u4e2a\u63a7\u5236\u5668\uff0c\u53ef\u4ee5\u5904\u7406HTTP\u8bf7\u6c42\u5e76\u8fd4\u56deHTTP\u54cd\u5e94\u3002@RestController\u6ce8\u89e3\u662f@Controller\u6ce8\u89e3\u7684\u6269\u5c55\uff0c\u8868\u793a\u8be5\u7c7b\u662f\u4e00\u4e2aRESTful\u98ce\u683c\u7684\u63a7\u5236\u5668\uff0c\u53ef\u4ee5\u5c06\u65b9\u6cd5\u7684\u8fd4\u56de\u503c\u76f4\u63a5\u8f6c\u6362\u4e3aHTTP\u54cd\u5e94\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u4f7f\u7528@Controller\u6ce8\u89e3\u7684\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Controller\npublic class HomeController {\n    @GetMapping(\"\/\")\n    public String index() {\n        return \"index\";\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c@Controller\u6ce8\u89e3\u8868\u793aHomeController\u7c7b\u662f\u4e00\u4e2a\u63a7\u5236\u5668\u3002@GetMapping\u6ce8\u89e3\u8868\u793a\u8be5\u65b9\u6cd5\u53ef\u4ee5\u5904\u7406HTTP GET\u8bf7\u6c42\uff0c\u5e76\u5c06\u8bf7\u6c42\u6620\u5c04\u5230\u6839\u8def\u5f84\u201d\/\u201d\u3002\u65b9\u6cd5\u7684\u8fd4\u56de\u503c\u662f\u4e00\u4e2aString\u7c7b\u578b\u7684\u89c6\u56fe\u540d\u79f0\uff0c\u8868\u793a\u8981\u8fd4\u56de\u7684\u89c6\u56fe\u540d\u79f0\u662f\u201dindex\u201d\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u4f7f\u7528@RestController\u6ce8\u89e3\u7684\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@RestController\npublic class HelloController {\n    @GetMapping(\"\/hello\")\n    public String hello() {\n        return \"Hello, World!\";\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c@RestController\u6ce8\u89e3\u8868\u793aHelloController\u7c7b\u662f\u4e00\u4e2aRESTful\u98ce\u683c\u7684\u63a7\u5236\u5668\u3002@GetMapping\u6ce8\u89e3\u8868\u793a\u8be5\u65b9\u6cd5\u53ef\u4ee5\u5904\u7406HTTP GET\u8bf7\u6c42\uff0c\u5e76\u5c06\u8bf7\u6c42\u6620\u5c04\u5230\u8def\u5f84\u201d\/hello\u201d\u3002\u65b9\u6cd5\u7684\u8fd4\u56de\u503c\u662f\u4e00\u4e2aString\u7c7b\u578b\u7684\u5b57\u7b26\u4e32\uff0c\u8868\u793a\u8981\u8fd4\u56de\u7684HTTP\u54cd\u5e94\u4f53\u662f\u201dHello, World!\u201d\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u63a7\u5236\u5668\u662fSpring MVC\u7684\u6838\u5fc3\u7ec4\u4ef6\uff0c\u7528\u4e8e\u5904\u7406HTTP\u8bf7\u6c42\u5e76\u8fd4\u56deHTTP\u54cd\u5e94\u3002\u5728Spring Boot\u4e2d\uff0c\u63a7\u5236\u5668\u901a\u5e38\u4f7f\u7528@Controller\u6216@RestController\u6ce8\u89e3\u8fdb\u884c\u6807\u6ce8\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u6ce8\u89e3\u8fdb\u884c\u4f7f\u7528\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u89c6\u56fe(View)<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u89c6\u56fe(View)\u662f\u7528\u4e8e\u6e32\u67d3\u6a21\u578b\u6570\u636e\u5e76\u751f\u6210HTML\u54cd\u5e94\u7684\u7ec4\u4ef6\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u89c6\u56fe\u6280\u672f\uff0c\u5305\u62ecJSP\u3001Thymeleaf\u3001Freemarker\u3001Velocity\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u89c6\u56fe\u6280\u672f\u8fdb\u884c\u4f7f\u7528\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u4ecb\u7ecd\u4e00\u4e9b\u5e38\u7528\u7684Spring Boot\u89c6\u56fe\u6280\u672f\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>JSP\uff1a JSP\u662fJava Server Pages\u7684\u7f29\u5199\uff0c\u5b83\u662f\u4e00\u79cd\u5e38\u7528\u7684Java Web\u5e94\u7528\u7a0b\u5e8f\u89c6\u56fe\u6280\u672f\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter Web\u4f9d\u8d56\u6765\u4f7f\u7528JSP\u89c6\u56fe\u6280\u672f\u3002<\/li>\n\n\n\n<li>Thymeleaf\uff1a Thymeleaf\u662f\u4e00\u79cd\u73b0\u4ee3\u5316\u7684Java Web\u5e94\u7528\u7a0b\u5e8f\u89c6\u56fe\u6280\u672f\uff0c\u5b83\u662f\u4e00\u79cd\u6a21\u677f\u5f15\u64ce\uff0c\u53ef\u4ee5\u5c06\u6a21\u578b\u6570\u636e\u548c\u6a21\u677f\u6587\u4ef6\u7ed3\u5408\u751f\u6210HTML\u54cd\u5e94\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter Thymeleaf\u4f9d\u8d56\u6765\u4f7f\u7528Thymeleaf\u89c6\u56fe\u6280\u672f\u3002<\/li>\n\n\n\n<li>Freemarker\uff1a Freemarker\u662f\u4e00\u79cd\u57fa\u4e8e\u6a21\u677f\u7684Java Web\u5e94\u7528\u7a0b\u5e8f\u89c6\u56fe\u6280\u672f\uff0c\u5b83\u53ef\u4ee5\u5c06\u6a21\u578b\u6570\u636e\u548c\u6a21\u677f\u6587\u4ef6\u7ed3\u5408\u751f\u6210HTML\u54cd\u5e94\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter Freemarker\u4f9d\u8d56\u6765\u4f7f\u7528Freemarker\u89c6\u56fe\u6280\u672f\u3002<\/li>\n\n\n\n<li>Velocity\uff1a Velocity\u662f\u4e00\u79cd\u8f7b\u91cf\u7ea7\u7684Java Web\u5e94\u7528\u7a0b\u5e8f\u89c6\u56fe\u6280\u672f\uff0c\u5b83\u662f\u4e00\u79cd\u6a21\u677f\u5f15\u64ce\uff0c\u53ef\u4ee5\u5c06\u6a21\u578b\u6570\u636e\u548c\u6a21\u677f\u6587\u4ef6\u7ed3\u5408\u751f\u6210HTML\u54cd\u5e94\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter Velocity\u4f9d\u8d56\u6765\u4f7f\u7528Velocity\u89c6\u56fe\u6280\u672f\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4f7f\u7528Spring Boot\u7684\u89c6\u56fe\u6280\u672f\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u751f\u6210HTML\u54cd\u5e94\uff0c\u800c\u65e0\u9700\u624b\u52a8\u7f16\u5199HTML\u4ee3\u7801\u3002\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u8981\u5c06\u6a21\u578b\u6570\u636e\u6ce8\u5165\u89c6\u56fe\u6a21\u677f\u4e2d\uff0c\u5373\u53ef\u5feb\u901f\u751f\u6210HTML\u54cd\u5e94\u3002\u89c6\u56fe\u6280\u672f\u8fd8\u53ef\u4ee5\u63d0\u9ad8Web\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u7ef4\u62a4\u6027\uff0c\u4f7f\u4ee3\u7801\u66f4\u6613\u4e8e\u7ef4\u62a4\u548c\u6269\u5c55\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u4e2d\uff0c\u89c6\u56fe\u662f\u7528\u4e8e\u6e32\u67d3\u6a21\u578b\u6570\u636e\u5e76\u751f\u6210HTML\u54cd\u5e94\u7684\u7ec4\u4ef6\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u89c6\u56fe\u6280\u672f\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u89c6\u56fe\u6280\u672f\u8fdb\u884c\u4f7f\u7528\u3002\u89c6\u56fe\u6280\u672f\u53ef\u4ee5\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\u548cWeb\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u7ef4\u62a4\u6027\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u6570\u636e\u8bbf\u95ee(Data Access)<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u6570\u636e\u8bbf\u95ee(Data Access)\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u8fde\u63a5\u6570\u636e\u5e93\u5e76\u8fdb\u884c\u6570\u636e\u7684CRUD\u64cd\u4f5c\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u6570\u636e\u8bbf\u95ee\u6280\u672f\uff0c\u5305\u62ecJDBC\u3001JPA\u3001MyBatis\u7b49\u7b49\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u6570\u636e\u8bbf\u95ee\u6280\u672f\u8fdb\u884c\u4f7f\u7528\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u4ecb\u7ecd\u4e00\u4e9b\u5e38\u7528\u7684Spring Boot\u6570\u636e\u8bbf\u95ee\u6280\u672f\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>JDBC\uff1a JDBC\u662fJava\u6570\u636e\u5e93\u8fde\u63a5\u7684\u7f29\u5199\uff0c\u5b83\u662f\u4e00\u79cd\u6807\u51c6\u7684Java\u6570\u636e\u8bbf\u95ee\u6280\u672f\uff0c\u53ef\u4ee5\u8fde\u63a5\u5404\u79cd\u7c7b\u578b\u7684\u5173\u7cfb\u578b\u6570\u636e\u5e93\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter JDBC\u4f9d\u8d56\u6765\u4f7f\u7528JDBC\u6280\u672f\u3002<\/li>\n\n\n\n<li>JPA\uff1a JPA\u662fJava Persistence API\u7684\u7f29\u5199\uff0c\u5b83\u662f\u4e00\u79cdJava EE\u7684\u6807\u51c6API\uff0c\u7528\u4e8e\u5bf9\u8c61-\u5173\u7cfb\u6620\u5c04(ORM)\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter Data JPA\u4f9d\u8d56\u6765\u4f7f\u7528JPA\u6280\u672f\u3002<\/li>\n\n\n\n<li>MyBatis\uff1a MyBatis\u662f\u4e00\u79cd\u8f7b\u91cf\u7ea7\u7684Java\u6570\u636e\u8bbf\u95ee\u6846\u67b6\uff0c\u5b83\u63d0\u4f9b\u4e86\u5f3a\u5927\u7684SQL\u6620\u5c04\u529f\u80fd\uff0c\u53ef\u4ee5\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u5173\u7cfb\u578b\u6570\u636e\u5e93\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165Spring Boot Starter MyBatis\u4f9d\u8d56\u6765\u4f7f\u7528MyBatis\u6280\u672f\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4f7f\u7528Spring Boot\u7684\u6570\u636e\u8bbf\u95ee\u6280\u672f\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u8fde\u63a5\u6570\u636e\u5e93\u5e76\u8fdb\u884c\u6570\u636e\u7684CRUD\u64cd\u4f5c\uff0c\u800c\u65e0\u9700\u624b\u52a8\u7f16\u5199\u590d\u6742\u7684SQL\u8bed\u53e5\u3002\u6570\u636e\u8bbf\u95ee\u6280\u672f\u8fd8\u53ef\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u548c\u53ef\u7ef4\u62a4\u6027\uff0c\u4f7f\u5f00\u53d1\u4eba\u5458\u80fd\u591f\u66f4\u5feb\u5730\u5f00\u53d1\u548c\u90e8\u7f72\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u4e2d\uff0c\u6570\u636e\u8bbf\u95ee\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u8fde\u63a5\u6570\u636e\u5e93\u5e76\u8fdb\u884c\u6570\u636e\u7684CRUD\u64cd\u4f5c\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u6570\u636e\u8bbf\u95ee\u6280\u672f\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u6280\u672f\u8fdb\u884c\u4f7f\u7528\u3002\u6570\u636e\u8bbf\u95ee\u6280\u672f\u53ef\u4ee5\u63d0\u9ad8\u5f00\u53d1\u6548\u7387\u3001\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u548c\u53ef\u7ef4\u62a4\u6027\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u4e8b\u52a1(Transaction)<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u4e8b\u52a1(Transaction)\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u7ba1\u7406\u6570\u636e\u5e93\u64cd\u4f5c\u7684\u4e00\u7cfb\u5217\u64cd\u4f5c\uff0c\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027\u3002Spring Boot\u63d0\u4f9b\u4e86\u5bf9\u4e8b\u52a1\u7684\u652f\u6301\uff0c\u53ef\u4ee5\u901a\u8fc7\u58f0\u660e\u5f0f\u7684\u65b9\u5f0f\u6765\u7ba1\u7406\u4e8b\u52a1\u3002<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u4e8b\u52a1\u901a\u5e38\u4f7f\u7528@Transactional\u6ce8\u89e3\u8fdb\u884c\u6807\u6ce8\u3002@Transactional\u6ce8\u89e3\u8868\u793a\u8be5\u65b9\u6cd5\u662f\u4e00\u4e2a\u4e8b\u52a1\u65b9\u6cd5\uff0c\u4f1a\u5728\u65b9\u6cd5\u6267\u884c\u524d\u5f00\u542f\u4e00\u4e2a\u4e8b\u52a1\uff0c\u5728\u65b9\u6cd5\u6267\u884c\u540e\u6839\u636e\u65b9\u6cd5\u7684\u6267\u884c\u60c5\u51b5\u63d0\u4ea4\u6216\u56de\u6eda\u4e8b\u52a1\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u8bbe\u7f6e@Transactional\u6ce8\u89e3\u7684\u5404\u79cd\u5c5e\u6027\uff0c\u5982\u4e8b\u52a1\u7684\u9694\u79bb\u7ea7\u522b\u3001\u4e8b\u52a1\u7684\u8d85\u65f6\u65f6\u95f4\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u4f7f\u7528@Transactional\u6ce8\u89e3\u7684\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Service\npublic class UserService {\n    @Autowired\n    private UserRepository userRepository;\n    \n    @Transactional\n    public void updateUser(User user) {\n        userRepository.save(user);\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c@Transactional\u6ce8\u89e3\u8868\u793aupdateUser\u65b9\u6cd5\u662f\u4e00\u4e2a\u4e8b\u52a1\u65b9\u6cd5\uff0c\u4f1a\u5728\u65b9\u6cd5\u6267\u884c\u524d\u5f00\u542f\u4e00\u4e2a\u4e8b\u52a1\uff0c\u5728\u65b9\u6cd5\u6267\u884c\u540e\u6839\u636e\u65b9\u6cd5\u7684\u6267\u884c\u60c5\u51b5\u63d0\u4ea4\u6216\u56de\u6eda\u4e8b\u52a1\u3002\u65b9\u6cd5\u4e2d\u8c03\u7528\u4e86userRepository\u7684save\u65b9\u6cd5\uff0c\u7528\u4e8e\u66f4\u65b0\u7528\u6237\u4fe1\u606f\u3002<\/p>\n\n\n\n<p>\u4f7f\u7528Spring Boot\u7684\u4e8b\u52a1\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u7ba1\u7406\u6570\u636e\u5e93\u64cd\u4f5c\u7684\u4e00\u7cfb\u5217\u64cd\u4f5c\uff0c\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027\u3002\u4e8b\u52a1\u8fd8\u53ef\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u6027\u80fd\u548c\u53ef\u9760\u6027\uff0c\u4f7f\u5e94\u7528\u7a0b\u5e8f\u66f4\u52a0\u5065\u58ee\u548c\u53ef\u7ef4\u62a4\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u4e2d\uff0c\u4e8b\u52a1\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u7ba1\u7406\u6570\u636e\u5e93\u64cd\u4f5c\u7684\u4e00\u7cfb\u5217\u64cd\u4f5c\uff0c\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027\u3002Spring Boot\u63d0\u4f9b\u4e86\u5bf9\u4e8b\u52a1\u7684\u652f\u6301\uff0c\u53ef\u4ee5\u901a\u8fc7\u58f0\u660e\u5f0f\u7684\u65b9\u5f0f\u6765\u7ba1\u7406\u4e8b\u52a1\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u4f7f\u7528@Transactional\u6ce8\u89e3\u6765\u7ba1\u7406\u4e8b\u52a1\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u65e5\u5fd7(Logging)<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u65e5\u5fd7(Logging)\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u8bb0\u5f55\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u548c\u5f02\u5e38\u4fe1\u606f\u3002Spring Boot\u63d0\u4f9b\u4e86\u5185\u7f6e\u7684\u65e5\u5fd7\u6846\u67b6\uff0c\u53ef\u4ee5\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8fdb\u884c\u65e5\u5fd7\u8bb0\u5f55\u548c\u7ba1\u7406\u3002<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u4f7f\u7528\u65e5\u5fd7\u901a\u5e38\u9700\u8981\u5f15\u5165\u65e5\u5fd7\u6846\u67b6\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982Logback\u3001Log4j2\u3001Java Util Logging\u7b49\u7b49\u3002\u540c\u65f6\uff0cSpring Boot\u4e5f\u63d0\u4f9b\u4e86\u81ea\u52a8\u914d\u7f6e\u7684\u529f\u80fd\uff0c\u53ef\u4ee5\u81ea\u52a8\u914d\u7f6e\u65e5\u5fd7\u6846\u67b6\u7684\u76f8\u5173\u914d\u7f6e\u4fe1\u606f\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u4ecb\u7ecd\u4e00\u4e9b\u5e38\u7528\u7684Spring Boot\u65e5\u5fd7\u6846\u67b6\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Logback\uff1a Logback\u662f\u4e00\u79cd\u5feb\u901f\u3001\u7075\u6d3b\u7684\u65e5\u5fd7\u6846\u67b6\uff0c\u662fLog4j\u6846\u67b6\u7684\u540e\u7ee7\u8005\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165spring-boot-starter-logback\u4f9d\u8d56\u6765\u4f7f\u7528Logback\u6846\u67b6\u3002<\/li>\n\n\n\n<li>Log4j2\uff1a Log4j2\u662f\u4e00\u79cd\u9ad8\u6027\u80fd\u3001\u53ef\u6269\u5c55\u7684\u65e5\u5fd7\u6846\u67b6\uff0c\u662fLog4j\u6846\u67b6\u7684\u5347\u7ea7\u7248\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165spring-boot-starter-log4j2\u4f9d\u8d56\u6765\u4f7f\u7528Log4j2\u6846\u67b6\u3002<\/li>\n\n\n\n<li>Java Util Logging\uff1a Java Util Logging\u662fJava SE\u5e73\u53f0\u63d0\u4f9b\u7684\u4e00\u79cd\u6807\u51c6\u65e5\u5fd7\u6846\u67b6\uff0c\u53ef\u4ee5\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u76f4\u63a5\u4f7f\u7528\u3002\u5728Spring Boot\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u5f15\u5165spring-boot-starter-logging\u4f9d\u8d56\u6765\u4f7f\u7528Java Util Logging\u6846\u67b6\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4f7f\u7528Spring Boot\u7684\u65e5\u5fd7\u6846\u67b6\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u66f4\u597d\u5730\u4e86\u89e3\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u548c\u5f02\u5e38\u4fe1\u606f\uff0c\u4ece\u800c\u66f4\u5feb\u5730\u8fdb\u884c\u8c03\u8bd5\u548c\u4f18\u5316\u3002\u540c\u65f6\uff0c\u65e5\u5fd7\u6846\u67b6\u4e5f\u53ef\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u9760\u6027\u548c\u53ef\u7ef4\u62a4\u6027\uff0c\u4f7f\u5e94\u7528\u7a0b\u5e8f\u66f4\u52a0\u5065\u58ee\u548c\u53ef\u6269\u5c55\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u4e2d\uff0c\u65e5\u5fd7\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u8bb0\u5f55\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u72b6\u6001\u548c\u5f02\u5e38\u4fe1\u606f\u3002Spring Boot\u63d0\u4f9b\u4e86\u5185\u7f6e\u7684\u65e5\u5fd7\u6846\u67b6\uff0c\u53ef\u4ee5\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8fdb\u884c\u65e5\u5fd7\u8bb0\u5f55\u548c\u7ba1\u7406\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5408\u9002\u7684\u65e5\u5fd7\u6846\u67b6\u8fdb\u884c\u4f7f\u7528\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u5f02\u5e38\u5904\u7406(Exception Handling)<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u5f02\u5e38\u5904\u7406(Exception Handling)\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u6355\u83b7\u548c\u5904\u7406\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u5f02\u5e38\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u5f02\u5e38\u5904\u7406\u673a\u5236\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u51c6\u786e\u5730\u8bca\u65ad\u548c\u89e3\u51b3\u5f02\u5e38\u3002<\/p>\n\n\n\n<p>\u5728Spring Boot\u4e2d\uff0c\u5f02\u5e38\u5904\u7406\u901a\u5e38\u4f7f\u7528@ControllerAdvice\u6ce8\u89e3\u8fdb\u884c\u6807\u6ce8\u3002@ControllerAdvice\u6ce8\u89e3\u8868\u793a\u8be5\u7c7b\u662f\u4e00\u4e2a\u5168\u5c40\u5f02\u5e38\u5904\u7406\u5668\uff0c\u53ef\u4ee5\u6355\u83b7\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u5f02\u5e38\uff0c\u5e76\u6839\u636e\u5f02\u5e38\u7684\u7c7b\u578b\u8fdb\u884c\u76f8\u5e94\u7684\u5904\u7406\u3002\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u5728@ControllerAdvice\u6ce8\u89e3\u4e2d\u6307\u5b9a\u8981\u5904\u7406\u7684\u5f02\u5e38\u7c7b\u578b\u3001\u5904\u7406\u5f02\u5e38\u7684\u65b9\u5f0f\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u4f7f\u7528@ControllerAdvice\u6ce8\u89e3\u7684\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@ControllerAdvice\npublic class GlobalExceptionHandler {\n    @ExceptionHandler(Exception.class)\n    public String handleException(Exception e) {\n        \/\/ \u5f02\u5e38\u5904\u7406\u903b\u8f91\n        return \"error\";\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0c@ControllerAdvice\u6ce8\u89e3\u8868\u793aGlobalExceptionHandler\u7c7b\u662f\u4e00\u4e2a\u5168\u5c40\u5f02\u5e38\u5904\u7406\u5668\u3002@ExceptionHandler\u6ce8\u89e3\u8868\u793ahandleException\u65b9\u6cd5\u662f\u7528\u4e8e\u5904\u7406\u5f02\u5e38\u7684\u65b9\u6cd5\uff0c\u5176\u4e2dException.class\u8868\u793a\u8981\u5904\u7406\u7684\u5f02\u5e38\u7c7b\u578b\u662fException\uff0creturn\u8bed\u53e5\u8868\u793a\u5728\u5904\u7406\u5f02\u5e38\u540e\u8981\u8fd4\u56de\u7684\u89c6\u56fe\u540d\u79f0\u662f\u201derror\u201d\u3002<\/p>\n\n\n\n<p>\u4f7f\u7528Spring Boot\u7684\u5f02\u5e38\u5904\u7406\u673a\u5236\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u51c6\u786e\u5730\u8bca\u65ad\u548c\u89e3\u51b3\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u5f02\u5e38\uff0c\u4ece\u800c\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u9760\u6027\u548c\u53ef\u7ef4\u62a4\u6027\u3002\u5f02\u5e38\u5904\u7406\u8fd8\u53ef\u4ee5\u63d0\u9ad8\u7528\u6237\u4f53\u9a8c\uff0c\u4f7f\u7528\u6237\u5728\u9047\u5230\u5f02\u5e38\u65f6\u80fd\u591f\u5f97\u5230\u53cb\u597d\u7684\u63d0\u793a\u4fe1\u606f\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u4e2d\uff0c\u5f02\u5e38\u5904\u7406\u662f\u4e00\u79cd\u6838\u5fc3\u7684\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd\uff0c\u7528\u4e8e\u6355\u83b7\u548c\u5904\u7406\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u5f02\u5e38\u3002Spring Boot\u63d0\u4f9b\u4e86\u591a\u79cd\u5f02\u5e38\u5904\u7406\u673a\u5236\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u9700\u6c42\u8fdb\u884c\u9009\u62e9\u548c\u4f7f\u7528\u3002\u5f02\u5e38\u5904\u7406\u53ef\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u9760\u6027\u548c\u53ef\u7ef4\u62a4\u6027\uff0c\u540c\u65f6\u8fd8\u53ef\u4ee5\u63d0\u9ad8\u7528\u6237\u4f53\u9a8c\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e0eSpring Cloud\u7684\u96c6\u6210<\/p>\n\n\n\n<p>Spring Boot\u548cSpring Cloud\u662f\u4e24\u4e2a\u4e0d\u540c\u7684\u6846\u67b6\uff0c\u4f46\u662f\u5b83\u4eec\u7684\u76ee\u6807\u90fd\u662f\u63d0\u9ad8Java\u5e94\u7528\u7a0b\u5e8f\u7684\u5f00\u53d1\u6548\u7387\u548c\u53ef\u9760\u6027\u3002Spring Boot\u662f\u7528\u4e8e\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u6846\u67b6\uff0c\u800cSpring Cloud\u5219\u662f\u7528\u4e8e\u6784\u5efa\u5206\u5e03\u5f0f\u7cfb\u7edf\u7684\u6846\u67b6\u3002\u7531\u4e8eSpring Boot\u548cSpring Cloud\u7684\u5171\u540c\u7406\u5ff5\uff0c\u5b83\u4eec\u53ef\u4ee5\u5f88\u597d\u5730\u96c6\u6210\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e9bSpring Boot\u548cSpring Cloud\u96c6\u6210\u7684\u4e3b\u8981\u7ec4\u4ef6\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Eureka\uff1aEureka\u662fNetflix\u5f00\u6e90\u7684\u670d\u52a1\u6ce8\u518c\u548c\u53d1\u73b0\u7ec4\u4ef6\uff0c\u5b83\u63d0\u4f9b\u4e86\u4e00\u79cd\u7b80\u5355\u7684\u65b9\u5f0f\u6765\u7ba1\u7406\u548c\u67e5\u627e\u670d\u52a1\u3002\u5728Spring Cloud\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Cloud Netflix\u7684Eureka\u6a21\u5757\u6765\u4f7f\u7528Eureka\u670d\u52a1\u6ce8\u518c\u548c\u53d1\u73b0\u529f\u80fd\u3002<\/li>\n\n\n\n<li>Ribbon\uff1aRibbon\u662fNetflix\u5f00\u6e90\u7684\u8d1f\u8f7d\u5747\u8861\u7ec4\u4ef6\uff0c\u5b83\u53ef\u4ee5\u6839\u636e\u5404\u79cd\u89c4\u5219\u548c\u7b56\u7565\u81ea\u52a8\u5c06\u8bf7\u6c42\u5206\u914d\u5230\u591a\u4e2a\u670d\u52a1\u5668\u4e0a\u3002\u5728Spring Cloud\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Cloud Netflix\u7684Ribbon\u6a21\u5757\u6765\u4f7f\u7528Ribbon\u8d1f\u8f7d\u5747\u8861\u529f\u80fd\u3002<\/li>\n\n\n\n<li>Feign\uff1aFeign\u662fNetflix\u5f00\u6e90\u7684HTTP\u5ba2\u6237\u7aef\uff0c\u5b83\u7b80\u5316\u4e86HTTP\u5ba2\u6237\u7aef\u7684\u4f7f\u7528\u548c\u914d\u7f6e\uff0c\u652f\u6301\u670d\u52a1\u6ce8\u518c\u548c\u53d1\u73b0\u3002\u5728Spring Cloud\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Cloud Netflix\u7684Feign\u6a21\u5757\u6765\u4f7f\u7528Feign HTTP\u5ba2\u6237\u7aef\u529f\u80fd\u3002<\/li>\n\n\n\n<li>Hystrix\uff1aHystrix\u662fNetflix\u5f00\u6e90\u7684\u5bb9\u9519\u7ec4\u4ef6\uff0c\u5b83\u53ef\u4ee5\u5728\u670d\u52a1\u51fa\u73b0\u6545\u969c\u6216\u5f02\u5e38\u65f6\u63d0\u4f9b\u5bb9\u9519\u673a\u5236\u3002\u5728Spring Cloud\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Cloud Netflix\u7684Hystrix\u6a21\u5757\u6765\u4f7f\u7528Hystrix\u5bb9\u9519\u529f\u80fd\u3002<\/li>\n\n\n\n<li>Zuul\uff1aZuul\u662fNetflix\u5f00\u6e90\u7684\u7f51\u5173\u7ec4\u4ef6\uff0c\u5b83\u53ef\u4ee5\u63d0\u4f9b\u8def\u7531\u3001\u8d1f\u8f7d\u5747\u8861\u3001\u5b89\u5168\u548c\u76d1\u63a7\u7b49\u529f\u80fd\u3002\u5728Spring Cloud\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528Spring Cloud Netflix\u7684Zuul\u6a21\u5757\u6765\u4f7f\u7528Zuul\u7f51\u5173\u529f\u80fd\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u901a\u8fc7\u96c6\u6210Spring Boot\u548cSpring Cloud\uff0c\u53ef\u4ee5\u5b9e\u73b0\u5206\u5e03\u5f0f\u7cfb\u7edf\u7684\u5feb\u901f\u5f00\u53d1\u548c\u90e8\u7f72\u3002Spring Boot\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u80fd\u529b\uff0c\u800cSpring Cloud\u5219\u63d0\u4f9b\u4e86\u5206\u5e03\u5f0f\u7cfb\u7edf\u7684\u6784\u5efa\u80fd\u529b\u3002\u4e24\u8005\u7ed3\u5408\u4f7f\u7528\u53ef\u4ee5\u63d0\u9ad8Java\u5e94\u7528\u7a0b\u5e8f\u7684\u5f00\u53d1\u6548\u7387\u548c\u53ef\u9760\u6027\u3002<\/p>\n\n\n\n<p>\u603b\u4e4b\uff0c\u5728Spring Boot\u548cSpring Cloud\u96c6\u6210\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528\u4e00\u4e9b\u7ec4\u4ef6\u6765\u5b9e\u73b0\u670d\u52a1\u6ce8\u518c\u548c\u53d1\u73b0\u3001\u8d1f\u8f7d\u5747\u8861\u3001HTTP\u5ba2\u6237\u7aef\u3001\u5bb9\u9519\u673a\u5236\u548c\u7f51\u5173\u7b49\u529f\u80fd\u3002\u901a\u8fc7\u96c6\u6210Spring Boot\u548cSpring Cloud\uff0c\u53ef\u4ee5\u5b9e\u73b0\u5206\u5e03\u5f0f\u7cfb\u7edf\u7684\u5feb\u901f\u5f00\u53d1\u548c\u90e8\u7f72\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e0eSpring Security\u7684\u96c6\u6210<\/p>\n\n\n\n<p>Spring Security\u662f\u4e00\u4e2a\u5f00\u6e90\u6846\u67b6\uff0c\u7528\u4e8e\u5904\u7406\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\u3002\u5b83\u53ef\u4ee5\u4e0eSpring Boot\u96c6\u6210\uff0c\u4ee5\u63d0\u4f9b\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u4fdd\u62a4Web\u5e94\u7528\u7a0b\u5e8f\u3002Spring Boot\u548cSpring Security\u7684\u96c6\u6210\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u6dfb\u52a0\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\u529f\u80fd\uff0c\u4ee5\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u5b89\u5168\u6027\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u4e0eSpring Security\u96c6\u6210\u7684\u4e3b\u8981\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5f15\u5165Spring Security\u4f9d\u8d56\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165Spring Security\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982spring-boot-starter-security\u3002<\/li>\n\n\n\n<li>\u914d\u7f6eSpring Security\uff1a\u901a\u8fc7\u521b\u5efa\u4e00\u4e2aSecurityConfig\u7c7b\u6765\u914d\u7f6eSpring Security\u3002SecurityConfig\u7c7b\u53ef\u4ee5\u7ee7\u627fWebSecurityConfigurerAdapter\u7c7b\uff0c\u5e76\u8986\u76d6\u5176\u4e2d\u7684\u4e00\u4e9b\u65b9\u6cd5\uff0c\u5982configure(HttpSecurity http)\u65b9\u6cd5\u3002\u5728configure(HttpSecurity http)\u65b9\u6cd5\u4e2d\uff0c\u53ef\u4ee5\u914d\u7f6e\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\u89c4\u5219\u3002<\/li>\n\n\n\n<li>\u914d\u7f6e\u7528\u6237\u548c\u89d2\u8272\uff1a\u5728SecurityConfig\u7c7b\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528UserDetailsService\u63a5\u53e3\u6765\u914d\u7f6e\u7528\u6237\u548c\u89d2\u8272\u4fe1\u606f\u3002UserDetailsService\u63a5\u53e3\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u83b7\u53d6\u7528\u6237\u548c\u89d2\u8272\u4fe1\u606f\u3002<\/li>\n\n\n\n<li>\u542f\u7528Spring Security\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u542f\u7528Spring Security\uff0c\u53ef\u4ee5\u5728Application\u7c7b\u4e2d\u6dfb\u52a0@EnableWebSecurity\u6ce8\u89e3\u6765\u542f\u7528Spring Security\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684Spring Boot\u548cSpring Security\u96c6\u6210\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Configuration\n@EnableWebSecurity\npublic class SecurityConfig extends WebSecurityConfigurerAdapter {\n \n    @Autowired\n    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {\n        auth\n            .inMemoryAuthentication()\n                .withUser(\"user\").password(\"{noop}password\").roles(\"USER\");\n    }\n \n    @Override\n    protected void configure(HttpSecurity http) throws Exception {\n        http\n            .authorizeRequests()\n                .antMatchers(\"\/\", \"\/home\").permitAll()\n                .anyRequest().authenticated()\n                .and()\n            .formLogin()\n                .loginPage(\"\/login\")\n                .permitAll()\n                .and()\n            .logout()\n                .permitAll();\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0cSecurityConfig\u7c7b\u7ee7\u627f\u4e86WebSecurityConfigurerAdapter\u7c7b\uff0c\u5e76\u901a\u8fc7\u91cd\u5199\u5176\u4e2d\u7684configure\u65b9\u6cd5\u6765\u914d\u7f6e\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\u89c4\u5219\u3002\u5728configureGlobal\u65b9\u6cd5\u4e2d\uff0c\u901a\u8fc7inMemoryAuthentication\u65b9\u6cd5\u914d\u7f6e\u4e86\u4e00\u4e2a\u7528\u6237\u540d\u4e3auser\uff0c\u5bc6\u7801\u4e3apassword\uff0c\u89d2\u8272\u4e3aUSER\u7684\u7528\u6237\u3002\u5728configure\u65b9\u6cd5\u4e2d\uff0c\u4f7f\u7528authorizeRequests\u65b9\u6cd5\u914d\u7f6e\u4e86\u8bf7\u6c42\u7684\u8bbf\u95ee\u89c4\u5219\u3002\u5728\u8fd9\u4e2a\u793a\u4f8b\u4e2d\uff0c\u6839\u8def\u5f84\u548chome\u8def\u5f84\u662f\u5141\u8bb8\u6240\u6709\u4eba\u8bbf\u95ee\u7684\uff0c\u800c\u5176\u4ed6\u8def\u5f84\u9700\u8981\u8fdb\u884c\u8eab\u4efd\u9a8c\u8bc1\u3002\u5728formLogin\u65b9\u6cd5\u4e2d\u914d\u7f6e\u4e86\u767b\u5f55\u9875\u9762\u548c\u5141\u8bb8\u6240\u6709\u4eba\u8bbf\u95ee\u7684\u6743\u9650\uff0c\u800c\u5728logout\u65b9\u6cd5\u4e2d\u914d\u7f6e\u4e86\u6ce8\u9500\u529f\u80fd\u7684\u6743\u9650\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u96c6\u6210Spring Boot\u548cSpring Security\uff0c\u53ef\u4ee5\u4e3aWeb\u5e94\u7528\u7a0b\u5e8f\u6dfb\u52a0\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\u529f\u80fd\u3002Spring Security\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u5904\u7406\u8eab\u4efd\u9a8c\u8bc1\u548c\u6388\u6743\uff0c\u800cSpring Boot\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u80fd\u529b\u3002\u4e24\u8005\u7ed3\u5408\u4f7f\u7528\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u4fdd\u62a4Web\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e0eHibernate\u7684\u96c6\u6210<\/p>\n\n\n\n<p>Hibernate\u662f\u4e00\u4e2a\u5f00\u6e90\u7684ORM(Object-Relational Mapping)\u6846\u67b6\uff0c\u7528\u4e8e\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u5173\u7cfb\u6570\u636e\u5e93\u4e2d\u7684\u8868\u548c\u5217\u3002\u5b83\u53ef\u4ee5\u4e0eSpring Boot\u96c6\u6210\uff0c\u4ee5\u63d0\u4f9b\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u7ba1\u7406\u548c\u8bbf\u95ee\u6570\u636e\u5e93\u3002Spring Boot\u548cHibernate\u7684\u96c6\u6210\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u548cHibernate\u96c6\u6210\u7684\u4e3b\u8981\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5f15\u5165Hibernate\u4f9d\u8d56\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165Hibernate\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982spring-boot-starter-data-jpa\u3002<\/li>\n\n\n\n<li>\u914d\u7f6e\u6570\u636e\u6e90\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u914d\u7f6e\u6570\u636e\u6e90\uff0c\u4ee5\u4fbf\u4e0e\u6570\u636e\u5e93\u8fdb\u884c\u8fde\u63a5\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6e\u6570\u636e\u6e90\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u6570\u636e\u5e93URL\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u521b\u5efa\u5b9e\u4f53\u7c7b\uff1a\u521b\u5efa\u5b9e\u4f53\u7c7b\uff0c\u4ee5\u4fbf\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u6570\u636e\u5e93\u4e2d\u7684\u8868\u548c\u5217\u3002\u5728\u5b9e\u4f53\u7c7b\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528\u6ce8\u89e3\u6765\u914d\u7f6e\u8868\u548c\u5217\u7684\u540d\u79f0\u3001\u6570\u636e\u7c7b\u578b\u3001\u7ea6\u675f\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u521b\u5efa\u6570\u636e\u8bbf\u95ee\u5c42\uff1a\u521b\u5efa\u6570\u636e\u8bbf\u95ee\u5c42\uff0c\u4ee5\u4fbf\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002\u53ef\u4ee5\u4f7f\u7528Spring Data JPA\u6765\u8fdb\u884c\u6570\u636e\u8bbf\u95ee\u548c\u7ba1\u7406\u3002Spring Data JPA\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u8fdb\u884c\u5e38\u89c1\u7684\u6570\u636e\u5e93\u64cd\u4f5c\uff0c\u5982\u67e5\u8be2\u3001\u6dfb\u52a0\u3001\u4fee\u6539\u548c\u5220\u9664\u7b49\u7b49\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684Spring Boot\u548cHibernate\u96c6\u6210\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Entity\n@Table(name = \"users\")\npublic class User {\n \n    @Id\n    @GeneratedValue(strategy = GenerationType.IDENTITY)\n    private Long id;\n \n    @Column(name = \"username\")\n    private String username;\n \n    @Column(name = \"password\")\n    private String password;\n \n    \/\/ \u7701\u7565getter\u548csetter\u65b9\u6cd5\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0cUser\u7c7b\u4f7f\u7528@Entity\u6ce8\u89e3\u5c06\u5176\u58f0\u660e\u4e3a\u4e00\u4e2a\u5b9e\u4f53\u7c7b\uff0c\u4f7f\u7528@Table\u6ce8\u89e3\u6307\u5b9a\u4e86\u6570\u636e\u5e93\u4e2d\u5bf9\u5e94\u7684\u8868\u540d\u3002\u4f7f\u7528@Id\u6ce8\u89e3\u6307\u5b9a\u4e86\u5b9e\u4f53\u7c7b\u4e2d\u552f\u4e00\u6807\u8bc6\u8be5\u5bf9\u8c61\u7684\u5c5e\u6027\uff0c\u4f7f\u7528@GeneratedValue\u6ce8\u89e3\u6307\u5b9a\u4e86\u8be5\u5c5e\u6027\u7684\u751f\u6210\u7b56\u7565\u3002\u4f7f\u7528@Column\u6ce8\u89e3\u6307\u5b9a\u4e86\u5b9e\u4f53\u7c7b\u4e2d\u5bf9\u5e94\u7684\u5c5e\u6027\u5728\u6570\u636e\u5e93\u4e2d\u7684\u5217\u540d\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u96c6\u6210Spring Boot\u548cHibernate\uff0c\u53ef\u4ee5\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002Hibernate\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u5173\u7cfb\u6570\u636e\u5e93\u4e2d\u7684\u8868\u548c\u5217\uff0c\u800cSpring Boot\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u80fd\u529b\u3002\u4e24\u8005\u7ed3\u5408\u4f7f\u7528\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e0eMyBatis\u7684\u96c6\u6210<\/p>\n\n\n\n<p>MyBatis\u662f\u4e00\u4e2a\u5f00\u6e90\u7684ORM(Object-Relational Mapping)\u6846\u67b6\uff0c\u7528\u4e8e\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u5173\u7cfb\u6570\u636e\u5e93\u4e2d\u7684\u8868\u548c\u5217\u3002\u5b83\u53ef\u4ee5\u4e0eSpring Boot\u96c6\u6210\uff0c\u4ee5\u63d0\u4f9b\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u7ba1\u7406\u548c\u8bbf\u95ee\u6570\u636e\u5e93\u3002Spring Boot\u548cMyBatis\u7684\u96c6\u6210\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u548cMyBatis\u96c6\u6210\u7684\u4e3b\u8981\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5f15\u5165MyBatis\u4f9d\u8d56\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165MyBatis\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982mybatis-spring-boot-starter\u3002<\/li>\n\n\n\n<li>\u914d\u7f6e\u6570\u636e\u6e90\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u914d\u7f6e\u6570\u636e\u6e90\uff0c\u4ee5\u4fbf\u4e0e\u6570\u636e\u5e93\u8fdb\u884c\u8fde\u63a5\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6e\u6570\u636e\u6e90\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u6570\u636e\u5e93URL\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u521b\u5efaMapper\u63a5\u53e3\uff1a\u521b\u5efaMapper\u63a5\u53e3\uff0c\u7528\u4e8e\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002\u53ef\u4ee5\u4f7f\u7528@Mapper\u6ce8\u89e3\u5c06Mapper\u63a5\u53e3\u58f0\u660e\u4e3aMyBatis\u7684Mapper\u63a5\u53e3\u3002<\/li>\n\n\n\n<li>\u7f16\u5199SQL\u6620\u5c04\u6587\u4ef6\uff1a\u5728MyBatis\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528XML\u6587\u4ef6\u6216\u6ce8\u89e3\u6765\u7f16\u5199SQL\u6620\u5c04\u3002\u5728XML\u6587\u4ef6\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528&lt;select&gt;\u3001&lt;insert&gt;\u3001&lt;update&gt;\u3001&lt;delete&gt;\u7b49\u5143\u7d20\u6765\u7f16\u5199SQL\u8bed\u53e5\u3002<\/li>\n\n\n\n<li>\u914d\u7f6eSqlSessionFactory\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6eSqlSessionFactory\u6765\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6eSqlSessionFactory\u7684\u76f8\u5173\u4fe1\u606f\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684Spring Boot\u548cMyBatis\u96c6\u6210\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Mapper\npublic interface UserMapper {\n \n    @Select(\"SELECT * FROM users WHERE id = #{id}\")\n    User findById(@Param(\"id\") Long id);\n \n    @Insert(\"INSERT INTO users(username, password) VALUES(#{username}, #{password})\")\n    @Options(useGeneratedKeys = true, keyProperty = \"id\")\n    int insert(User user);\n \n    @Update(\"UPDATE users SET username = #{username}, password = #{password} WHERE id = #{id}\")\n    int update(User user);\n \n    @Delete(\"DELETE FROM users WHERE id = #{id}\")\n    int deleteById(@Param(\"id\") Long id);\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0cUserMapper\u63a5\u53e3\u4f7f\u7528@Mapper\u6ce8\u89e3\u5c06\u5176\u58f0\u660e\u4e3aMyBatis\u7684Mapper\u63a5\u53e3\uff0c\u4f7f\u7528@Select\u3001@Insert\u3001@Update\u3001@Delete\u7b49\u6ce8\u89e3\u6765\u5b9a\u4e49SQL\u8bed\u53e5\u3002\u5728@Insert\u6ce8\u89e3\u4e2d\uff0c\u4f7f\u7528@Options\u6ce8\u89e3\u6307\u5b9a\u4e86\u4e3b\u952e\u7684\u751f\u6210\u7b56\u7565\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u96c6\u6210Spring Boot\u548cMyBatis\uff0c\u53ef\u4ee5\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002MyBatis\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u5c06Java\u5bf9\u8c61\u6620\u5c04\u5230\u5173\u7cfb\u6570\u636e\u5e93\u4e2d\u7684\u8868\u548c\u5217\uff0c\u800cSpring Boot\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u80fd\u529b\u3002\u4e24\u8005\u7ed3\u5408\u4f7f\u7528\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u8bbf\u95ee\u548c\u7ba1\u7406\u6570\u636e\u5e93\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e0eRedis\u7684\u96c6\u6210<\/p>\n\n\n\n<p>Redis\u662f\u4e00\u4e2a\u5f00\u6e90\u7684\u5185\u5b58\u6570\u636e\u7ed3\u6784\u5b58\u50a8\u7cfb\u7edf\uff0c\u5b83\u53ef\u4ee5\u7528\u4f5c\u7f13\u5b58\u3001\u6570\u636e\u5e93\u548c\u6d88\u606f\u4e2d\u95f4\u4ef6\u3002Spring Boot\u53ef\u4ee5\u4e0eRedis\u96c6\u6210\uff0c\u4ee5\u63d0\u4f9b\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u4f7f\u7528Redis\u4f5c\u4e3a\u7f13\u5b58\u548c\u6570\u636e\u5b58\u50a8\u3002Spring Boot\u548cRedis\u7684\u96c6\u6210\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u4f7f\u7528Redis\u6765\u7ba1\u7406\u6570\u636e\u3002<\/p>\n\n\n\n<p>\u4e0b\u9762\u662fSpring Boot\u548cRedis\u96c6\u6210\u7684\u4e3b\u8981\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5f15\u5165Redis\u4f9d\u8d56\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165Redis\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982spring-boot-starter-data-redis\u3002<\/li>\n\n\n\n<li>\u914d\u7f6eRedis\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u914d\u7f6eRedis\uff0c\u4ee5\u4fbf\u8fde\u63a5\u5230Redis\u5b9e\u4f8b\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6eRedis\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u5982Redis\u4e3b\u673a\u540d\u3001\u7aef\u53e3\u53f7\u3001\u5bc6\u7801\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u4f7f\u7528RedisTemplate\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0c\u53ef\u4ee5\u4f7f\u7528RedisTemplate\u6765\u8bbf\u95eeRedis\u3002RedisTemplate\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u6267\u884c\u5e38\u89c1\u7684Redis\u64cd\u4f5c\uff0c\u5982\u5b58\u50a8\u3001\u83b7\u53d6\u3001\u5220\u9664\u7b49\u7b49\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684Spring Boot\u548cRedis\u96c6\u6210\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>@Service\npublic class UserService {\n \n    @Autowired\n    private RedisTemplate&lt;String, Object&gt; redisTemplate;\n \n    public User getUserById(Long id) {\n        String key = \"user_\" + id;\n        User user = (User) redisTemplate.opsForValue().get(key);\n        if (user == null) {\n            \/\/ \u4ece\u6570\u636e\u5e93\u4e2d\u83b7\u53d6\u7528\u6237\u4fe1\u606f\n            user = userRepository.findById(id);\n            \/\/ \u5c06\u7528\u6237\u4fe1\u606f\u5b58\u50a8\u5230Redis\u4e2d\n            redisTemplate.opsForValue().set(key, user);\n        }\n        return user;\n    }\n \n    public void deleteUserById(Long id) {\n        String key = \"user_\" + id;\n        \/\/ \u4eceRedis\u4e2d\u5220\u9664\u7528\u6237\u4fe1\u606f\n        redisTemplate.delete(key);\n        \/\/ \u4ece\u6570\u636e\u5e93\u4e2d\u5220\u9664\u7528\u6237\u4fe1\u606f\n        userRepository.deleteById(id);\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0cUserService\u7c7b\u4f7f\u7528@Autowired\u6ce8\u89e3\u5c06RedisTemplate\u6ce8\u5165\u5230\u7c7b\u4e2d\u3002\u5728getUserById\u65b9\u6cd5\u4e2d\uff0c\u9996\u5148\u5c1d\u8bd5\u4eceRedis\u4e2d\u83b7\u53d6\u7528\u6237\u4fe1\u606f\uff0c\u5982\u679cRedis\u4e2d\u4e0d\u5b58\u5728\u8be5\u7528\u6237\u4fe1\u606f\uff0c\u5219\u4ece\u6570\u636e\u5e93\u4e2d\u83b7\u53d6\u7528\u6237\u4fe1\u606f\uff0c\u5e76\u5c06\u7528\u6237\u4fe1\u606f\u5b58\u50a8\u5230Redis\u4e2d\u3002\u5728deleteUserById\u65b9\u6cd5\u4e2d\uff0c\u9996\u5148\u4eceRedis\u4e2d\u5220\u9664\u7528\u6237\u4fe1\u606f\uff0c\u7136\u540e\u518d\u4ece\u6570\u636e\u5e93\u4e2d\u5220\u9664\u7528\u6237\u4fe1\u606f\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u96c6\u6210Spring Boot\u548cRedis\uff0c\u53ef\u4ee5\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u4f7f\u7528Redis\u6765\u7ba1\u7406\u6570\u636e\u3002Redis\u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u7684\u65b9\u6cd5\u6765\u5b58\u50a8\u3001\u83b7\u53d6\u3001\u5220\u9664\u6570\u636e\uff0c\u800cSpring Boot\u63d0\u4f9b\u4e86\u5feb\u901f\u521b\u5efa\u72ec\u7acb\u7684Spring\u5e94\u7528\u7a0b\u5e8f\u7684\u80fd\u529b\u3002\u4e24\u8005\u7ed3\u5408\u4f7f\u7528\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u3001\u65b9\u4fbf\u5730\u4f7f\u7528Redis\u6765\u7ba1\u7406\u6570\u636e\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpring Boot\u4e2d\u5229\u7528MyBatis Plus\u8fdb\u884c\u81ea\u52a8\u4ee3\u7801\u751f\u6210<\/p>\n\n\n\n<p>MyBatis-Plus\u662f\u4e00\u4e2a\u57fa\u4e8eMyBatis\u7684\u8f7b\u91cf\u7ea7\u589e\u5f3a\u5de5\u5177\uff0c\u63d0\u4f9b\u4e86\u4e00\u7cfb\u5217\u5f3a\u5927\u7684\u529f\u80fd\uff0c\u5982\u901a\u7528Mapper\u3001\u5206\u9875\u63d2\u4ef6\u3001\u4ee3\u7801\u751f\u6210\u7b49\u7b49\u3002\u5176\u4e2d\uff0c\u4ee3\u7801\u751f\u6210\u662fMyBatis-Plus\u7684\u4e00\u4e2a\u91cd\u8981\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u751f\u6210\u4e0e\u6570\u636e\u5e93\u8868\u5bf9\u5e94\u7684Java\u5b9e\u4f53\u7c7b\u3001Mapper\u63a5\u53e3\u3001XML\u6620\u5c04\u6587\u4ef6\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>Spring Boot\u4e2d\u5229\u7528MyBatis Plus\u8fdb\u884c\u81ea\u52a8\u4ee3\u7801\u751f\u6210\u7684\u4e3b\u8981\u6b65\u9aa4\u5982\u4e0b\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u5f15\u5165MyBatis Plus\u4f9d\u8d56\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u5165MyBatis Plus\u7684\u76f8\u5173\u4f9d\u8d56\uff0c\u5982mybatis-plus-boot-starter\u3001mybatis-plus-generator\u3002<\/li>\n\n\n\n<li>\u914d\u7f6e\u6570\u636e\u6e90\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u914d\u7f6e\u6570\u636e\u6e90\uff0c\u4ee5\u4fbf\u4e0e\u6570\u636e\u5e93\u8fdb\u884c\u8fde\u63a5\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6e\u6570\u636e\u6e90\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u6570\u636e\u5e93URL\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u914d\u7f6e\u4ee3\u7801\u751f\u6210\u5668\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u914d\u7f6eMyBatis Plus\u7684\u4ee3\u7801\u751f\u6210\u5668\uff0c\u4ee5\u4fbf\u751f\u6210Java\u5b9e\u4f53\u7c7b\u3001Mapper\u63a5\u53e3\u3001XML\u6620\u5c04\u6587\u4ef6\u7b49\u7b49\u3002\u53ef\u4ee5\u4f7f\u7528application.properties\u6216application.yml\u6587\u4ef6\u6765\u914d\u7f6e\u4ee3\u7801\u751f\u6210\u5668\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u751f\u6210\u8def\u5f84\u3001\u751f\u6210\u5305\u540d\u3001\u8868\u540d\u7b49\u7b49\u3002<\/li>\n\n\n\n<li>\u8fd0\u884c\u4ee3\u7801\u751f\u6210\u5668\uff1a\u5728Spring Boot\u5e94\u7528\u7a0b\u5e8f\u4e2d\u8fd0\u884cMyBatis Plus\u7684\u4ee3\u7801\u751f\u6210\u5668\uff0c\u4ee5\u4fbf\u751f\u6210\u4ee3\u7801\u3002\u53ef\u4ee5\u901a\u8fc7\u547d\u4ee4\u884c\u6216\u5728IDE\u4e2d\u8fd0\u884c\u4ee3\u7801\u751f\u6210\u5668\u3002<\/li>\n<\/ol>\n\n\n\n<p>\u4e0b\u9762\u662f\u4e00\u4e2a\u7b80\u5355\u7684Spring Boot\u4e2d\u5229\u7528MyBatis Plus\u8fdb\u884c\u81ea\u52a8\u4ee3\u7801\u751f\u6210\u7684\u793a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">javaCopy code<code>public class CodeGenerator {\n \n    public static void main(String[] args) {\n        \/\/ \u6570\u636e\u6e90\u914d\u7f6e\n        DataSourceConfig dataSourceConfig = new DataSourceConfig();\n        dataSourceConfig.setDbType(DbType.MYSQL);\n        dataSourceConfig.setDriverName(\"com.mysql.cj.jdbc.Driver\");\n        dataSourceConfig.setUrl(\"jdbc:mysql:\/\/localhost:3306\/test?useUnicode=true&amp;characterEncoding=utf-8&amp;serverTimezone=GMT%2B8\");\n        dataSourceConfig.setUsername(\"root\");\n        dataSourceConfig.setPassword(\"root\");\n \n        \/\/ \u5168\u5c40\u914d\u7f6e\n        GlobalConfig globalConfig = new GlobalConfig();\n        globalConfig.setOutputDir(System.getProperty(\"user.dir\") + \"\/src\/main\/java\");\n        globalConfig.setAuthor(\"ChatGPT\");\n        globalConfig.setOpen(false);\n \n        \/\/ \u7b56\u7565\u914d\u7f6e\n        StrategyConfig strategyConfig = new StrategyConfig();\n        strategyConfig.setNaming(NamingStrategy.underline_to_camel);\n        strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);\n        strategyConfig.setEntityLombokModel(true);\n \n        \/\/ \u5305\u914d\u7f6e\n        PackageConfig packageConfig = new PackageConfig();\n        packageConfig.setParent(\"com.example.demo\");\n \n        \/\/ \u4ee3\u7801\u751f\u6210\u5668\n        AutoGenerator autoGenerator = new AutoGenerator();\n        autoGenerator.setDataSource(dataSourceConfig);\n        autoGenerator.setGlobalConfig(globalConfig);\n        autoGenerator.setStrategy(strategyConfig);\n        autoGenerator.setPackageInfo(packageConfig);\n        autoGenerator.execute();\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff0cCodeGenerator\u7c7b\u4f7f\u7528AutoGenerator\u7c7b\u6765\u751f\u6210Java\u5b9e\u4f53\u7c7b\u3001Mapper\u63a5\u53e3\u3001XML\u6620\u5c04\u6587\u4ef6\u7b49\u7b49\u3002\u5728\u4ee3\u7801\u4e2d\uff0c\u9996\u5148\u914d\u7f6e\u6570\u636e\u6e90\u3001\u5168\u5c40\u914d\u7f6e\u3001\u7b56\u7565\u914d\u7f6e\u548c\u5305\u914d\u7f6e\u7b49\u4fe1\u606f\uff0c\u7136\u540e\u4f7f\u7528AutoGenerator\u7c7b\u6765\u751f\u6210\u4ee3\u7801\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u5229\u7528MyBatis Plus\u8fdb\u884c\u81ea\u52a8\u4ee3\u7801\u751f\u6210\uff0c\u5f00<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpringboot\u7684\u6253\u5305\u4e0e\u90e8\u7f72<\/p>\n\n\n\n<p>Spring Boot\u5e94\u7528\u7a0b\u5e8f\u53ef\u4ee5\u6253\u5305\u6210\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\uff0c\u5e76\u53ef\u4ee5\u90e8\u7f72\u5230\u5404\u79cd\u4e0d\u540c\u7684\u73af\u5883\u4e2d\uff0c\u5982\u672c\u5730\u73af\u5883\u3001\u670d\u52a1\u5668\u73af\u5883\u7b49\u7b49\u3002\u4e0b\u9762\u4ecb\u7ecdSpring Boot\u5e94\u7528\u7a0b\u5e8f\u7684\u6253\u5305\u4e0e\u90e8\u7f72\u7684\u4e3b\u8981\u65b9\u6cd5\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u6253\u5305\u4e3a\u53ef\u6267\u884c\u7684JAR\u5305\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot\u5e94\u7528\u7a0b\u5e8f\u53ef\u4ee5\u901a\u8fc7Maven\u6216Gradle\u8fdb\u884c\u6253\u5305\u3002\u4f7f\u7528Maven\u6253\u5305\u65f6\uff0c\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\u751f\u6210\u53ef\u6267\u884c\u7684JAR\u5305\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">goCopy code<code>mvn clean package\n<\/code><\/pre>\n\n\n\n<p>\u6253\u5305\u540e\u7684JAR\u5305\u4f4d\u4e8e\/target\u76ee\u5f55\u4e0b\u3002<\/p>\n\n\n\n<p>\u4f7f\u7528Gradle\u6253\u5305\u65f6\uff0c\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\u751f\u6210\u53ef\u6267\u884c\u7684JAR\u5305\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Copy code<code>gradle clean build\n<\/code><\/pre>\n\n\n\n<p>\u6253\u5305\u540e\u7684JAR\u5305\u4f4d\u4e8e\/build\/libs\u76ee\u5f55\u4e0b\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>\u6253\u5305\u4e3aWAR\u5305\uff1a<\/li>\n<\/ol>\n\n\n\n<p>\u5982\u679c\u9700\u8981\u5c06Spring Boot\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230Web\u5bb9\u5668\u4e2d\uff0c\u53ef\u4ee5\u5c06\u5e94\u7528\u7a0b\u5e8f\u6253\u5305\u4e3aWAR\u5305\u3002\u4f7f\u7528Maven\u6253\u5305\u65f6\uff0c\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\u751f\u6210WAR\u5305\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">goCopy code<code>mvn clean package -DskipTests=true\n<\/code><\/pre>\n\n\n\n<p>\u6253\u5305\u540e\u7684WAR\u5305\u4f4d\u4e8e\/target\u76ee\u5f55\u4e0b\u3002<\/p>\n\n\n\n<p>\u4f7f\u7528Gradle\u6253\u5305\u65f6\uff0c\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\u751f\u6210WAR\u5305\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bashCopy code<code>gradle clean build -x test\n<\/code><\/pre>\n\n\n\n<p>\u6253\u5305\u540e\u7684WAR\u5305\u4f4d\u4e8e\/build\/libs\u76ee\u5f55\u4e0b\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>\u90e8\u7f72\u5230\u672c\u5730\u73af\u5883\uff1a<\/li>\n<\/ol>\n\n\n\n<p>\u53ef\u4ee5\u5c06Spring Boot\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230\u672c\u5730\u73af\u5883\u4e2d\uff0c\u4ee5\u4fbf\u8fdb\u884c\u6d4b\u8bd5\u548c\u8c03\u8bd5\u3002\u5c06\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\u62f7\u8d1d\u5230\u672c\u5730\u73af\u5883\u4e2d\uff0c\u7136\u540e\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\u542f\u52a8\u5e94\u7528\u7a0b\u5e8f\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">phpCopy code<code>java -jar &lt;jar-name&gt;.jar\n<\/code><\/pre>\n\n\n\n<p>\u5176\u4e2d\uff0c&lt;jar-name&gt;\u4e3a\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\u7684\u540d\u79f0\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>\u90e8\u7f72\u5230\u670d\u52a1\u5668\u73af\u5883\uff1a<\/li>\n<\/ol>\n\n\n\n<p>\u5c06Spring Boot\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230\u670d\u52a1\u5668\u73af\u5883\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u6b65\u9aa4\u5b8c\u6210\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5c06\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\u4e0a\u4f20\u5230\u670d\u52a1\u5668\u4e0a\u3002<\/li>\n\n\n\n<li>\u5728\u670d\u52a1\u5668\u4e0a\u5b89\u88c5Java\u8fd0\u884c\u73af\u5883\u3002<\/li>\n\n\n\n<li>\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\u542f\u52a8\u5e94\u7528\u7a0b\u5e8f\uff1aphpCopy code\u5176\u4e2d\uff0c&lt;jar-name&gt;\u4e3a\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\u7684\u540d\u79f0\u3002<code>java -jar &lt;jar-name&gt;.jar<\/code><\/li>\n\n\n\n<li>\u5c06\u5e94\u7528\u7a0b\u5e8f\u914d\u7f6e\u4e3a\u7cfb\u7edf\u670d\u52a1\uff0c\u4ee5\u4fbf\u5728\u670d\u52a1\u5668\u542f\u52a8\u65f6\u81ea\u52a8\u542f\u52a8\u5e94\u7528\u7a0b\u5e8f\u3002\u53ef\u4ee5\u4f7f\u7528systemd\u3001upstart\u6216\u8005\u5176\u4ed6\u7cfb\u7edf\u670d\u52a1\u5de5\u5177\u6765\u914d\u7f6e\u5e94\u7528\u7a0b\u5e8f\u4e3a\u7cfb\u7edf\u670d\u52a1\u3002<\/li>\n<\/ul>\n\n\n\n<p>\u901a\u8fc7\u6253\u5305\u548c\u90e8\u7f72\uff0c\u53ef\u4ee5\u5c06Spring Boot\u5e94\u7528\u7a0b\u5e8f\u90e8\u7f72\u5230\u5404\u79cd\u4e0d\u540c\u7684\u73af\u5883\u4e2d\uff0c\u4ee5\u6ee1\u8db3\u4e0d\u540c\u7684\u9700\u6c42\u3002\u6253\u5305\u4e3a\u53ef\u6267\u884c\u7684JAR\u5305\u6216WAR\u5305\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u90e8\u7f72\u5230\u672c\u5730\u6216\u670d\u52a1\u5668\u73af\u5883\u4e2d\u3002\u90e8\u7f72\u5230\u670d\u52a1\u5668\u73af\u5883\u65f6\uff0c\u53ef\u4ee5\u5c06\u5e94\u7528\u7a0b\u5e8f\u914d\u7f6e\u4e3a\u7cfb\u7edf\u670d\u52a1\uff0c\u4ee5\u4fbf\u5728\u670d\u52a1\u5668\u542f\u52a8\u65f6\u81ea\u52a8\u542f\u52a8\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u89e3\u91caSpringboot\u7684\u76d1\u63a7\u4e0e\u7ba1\u7406<\/p>\n\n\n\n<p>Spring Boot\u63d0\u4f9b\u4e86\u8bb8\u591a\u6709\u7528\u7684\u76d1\u63a7\u548c\u7ba1\u7406\u529f\u80fd\uff0c\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u66f4\u597d\u5730\u7ba1\u7406\u548c\u76d1\u63a7\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u60c5\u51b5\u3002\u4e0b\u9762\u4ecb\u7ecd\u51e0\u4e2a\u5e38\u7528\u7684\u76d1\u63a7\u548c\u7ba1\u7406\u529f\u80fd\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Actuator\u7aef\u70b9\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot\u63d0\u4f9b\u4e86\u8bb8\u591aActuator\u7aef\u70b9\uff0c\u53ef\u4ee5\u7528\u4e8e\u76d1\u63a7\u5e94\u7528\u7a0b\u5e8f\u7684\u5065\u5eb7\u72b6\u51b5\u3001\u6027\u80fd\u6307\u6807\u3001\u65e5\u5fd7\u4fe1\u606f\u7b49\u7b49\u3002\u5e38\u7528\u7684Actuator\u7aef\u70b9\u5305\u62ec\/health\u3001\/metrics\u3001\/loggers\u7b49\u7b49\u3002\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6e\u6587\u4ef6\u6216\u8005\u4ee3\u7801\u6765\u5f00\u542f\u6216\u7981\u7528Actuator\u7aef\u70b9\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Spring Boot Admin\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot Admin\u662f\u4e00\u4e2a\u53ef\u89c6\u5316\u7684\u7ba1\u7406\u5de5\u5177\uff0c\u53ef\u4ee5\u7528\u4e8e\u76d1\u63a7\u548c\u7ba1\u7406Spring Boot\u5e94\u7528\u7a0b\u5e8f\u3002\u5b83\u53ef\u4ee5\u5c55\u793a\u5e94\u7528\u7a0b\u5e8f\u7684\u5065\u5eb7\u72b6\u51b5\u3001\u6027\u80fd\u6307\u6807\u3001\u65e5\u5fd7\u4fe1\u606f\u7b49\u7b49\uff0c\u5e76\u63d0\u4f9b\u4e86\u4e00\u4e9b\u6709\u7528\u7684\u7ba1\u7406\u529f\u80fd\uff0c\u5982\u505c\u6b62\u5e94\u7528\u7a0b\u5e8f\u3001\u4fee\u6539\u65e5\u5fd7\u7ea7\u522b\u7b49\u7b49\u3002\u9700\u8981\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u6dfb\u52a0Spring Boot Admin\u7684\u4f9d\u8d56\uff0c\u5e76\u914d\u7f6e\u76f8\u5173\u4fe1\u606f\uff0c\u5982Spring Boot Admin\u7684URL\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u7b49\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>Micrometer\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Micrometer\u662f\u4e00\u4e2a\u5ea6\u91cf\u6307\u6807\u5e93\uff0c\u53ef\u4ee5\u7528\u4e8e\u76d1\u63a7\u548c\u8bb0\u5f55\u5e94\u7528\u7a0b\u5e8f\u7684\u5ea6\u91cf\u6307\u6807\u3002\u5b83\u53ef\u4ee5\u4e0e\u8bb8\u591a\u4e0d\u540c\u7684\u76d1\u63a7\u7cfb\u7edf\u96c6\u6210\uff0c\u5982Prometheus\u3001Grafana\u3001InfluxDB\u7b49\u7b49\u3002\u9700\u8981\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u6dfb\u52a0Micrometer\u7684\u4f9d\u8d56\uff0c\u5e76\u914d\u7f6e\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u5ea6\u91cf\u6307\u6807\u7684\u7c7b\u578b\u3001\u91c7\u96c6\u95f4\u9694\u7b49\u7b49\u3002<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>Spring Cloud Sleuth\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Spring Cloud Sleuth\u662f\u4e00\u4e2a\u5206\u5e03\u5f0f\u8ddf\u8e2a\u7cfb\u7edf\uff0c\u53ef\u4ee5\u7528\u4e8e\u76d1\u63a7\u548c\u8ddf\u8e2a\u5e94\u7528\u7a0b\u5e8f\u7684\u8bf7\u6c42\u6d41\u7a0b\u3002\u5b83\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5feb\u901f\u8bca\u65ad\u548c\u89e3\u51b3\u5206\u5e03\u5f0f\u5e94\u7528\u7a0b\u5e8f\u7684\u95ee\u9898\u3002\u9700\u8981\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u6dfb\u52a0Spring Cloud Sleuth\u7684\u4f9d\u8d56\uff0c\u5e76\u914d\u7f6e\u76f8\u5173\u4fe1\u606f\uff0c\u5982\u8ddf\u8e2aID\u7684\u751f\u6210\u65b9\u5f0f\u3001\u91c7\u6837\u7387\u7b49\u7b49\u3002<\/p>\n\n\n\n<p>\u901a\u8fc7\u4f7f\u7528\u8fd9\u4e9b\u76d1\u63a7\u548c\u7ba1\u7406\u529f\u80fd\uff0c\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u66f4\u597d\u5730\u76d1\u63a7\u548c\u7ba1\u7406\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u60c5\u51b5\uff0c\u5feb\u901f\u8bca\u65ad\u548c\u89e3\u51b3\u95ee\u9898\uff0c\u63d0\u9ad8\u5e94\u7528\u7a0b\u5e8f\u7684\u53ef\u9760\u6027\u548c\u7a33\u5b9a\u6027\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>\u8bf7\u8be6\u7ec6\u4ecb\u7ecdSpringboot\u7684\u65e5\u5fd7\u4e0e\u8c03\u8bd5<\/p>\n\n\n\n<p>Spring Boot provides many useful logging and debugging features to help developers better debug and troubleshoot applications. The following describes a few commonly used logging and debugging features.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Log Framework:<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot supports a variety of logging frameworks, such as Logback, Log4j2, java.util.logging, and so on. You can select the log framework through configuration files or code, and configure the log level, output format, and so on. It is generally recommended to choose Logback as a logging framework because of its good performance and flexible configuration.<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>Debug mode:<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot applications can start debug mode for debugging during development. You can add the following parameters to the startup script to start debug mode:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">rubyCopy code<code>-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=&lt;port&gt;\n<\/code><\/pre>\n\n\n\n<p>where &lt;port&gt; is the debug port number. You can connect to the debug port through the IDE for breakpoint debugging, variable viewing, and so on.<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>Spring Boot DevTools\uff1a<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot DevTools is a development kit that makes development and debugging easier for developers. It can implement hot deployment, automatic restart, LiveReload and other functions. You need to add Spring Boot DevTools dependencies to your application and configure related information, such as whether to enable hot deployment, whether to enable LiveReload, and so on.<\/p>\n\n\n\n<ol class=\"wp-block-list\" start=\"4\">\n<li>Log level:<\/li>\n<\/ol>\n\n\n\n<p>Spring Boot&#8217;s logging framework supports multiple logging levels, such as TRACE, DEBUG, INFO, WARN, ERROR, and so on. You can set the log level through configuration files or code. It is recommended to set the log level to DEBUG in the development environment to view detailed log information; Set the log level to INFO or WARN in production to reduce log output and improve performance and security.<\/p>\n\n\n\n<p>By using these logging and debugging capabilities, developers can better debug and troubleshoot applications, improve development efficiency and application reliability.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>What are the great Springboot-based systems on Github<\/p>\n\n\n\n<p>There are many excellent open source systems based on Spring Boot on Github, covering various fields, and here are some of the more well-known systems:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Spring PetClinic: A pet hospital management system based on Spring Boot that demonstrates how to use frameworks such as Spring Boot, Spring MVC, Spring Data JPA, and others to develop web applications.<\/li>\n\n\n\n<li>Spring Cloud: A microservices framework based on Spring Boot that provides multiple sub-projects, such as service registration and discovery, service configuration, load balancing, circuit breakers, and so on.<\/li>\n\n\n\n<li>JHipster: A full-stack development platform based on Spring Boot and Angular that provides tools and frameworks for rapidly building modern web applications.<\/li>\n\n\n\n<li>Spring Batch: A batch processing framework based on Spring Boot for processing large amounts of data and complex business logic.<\/li>\n\n\n\n<li>Spring Security: A Spring Boot-based security framework that provides authentication, authorization, encryption, and more to secure applications.<\/li>\n\n\n\n<li>Spring Integration: An integration framework based on Spring Boot that provides multiple integration patterns and protocols for data exchange and process management between different systems.<\/li>\n\n\n\n<li>Spring Cloud Data Flow: A Spring Boot-based data flow framework for managing and monitoring data streams and batch jobs.<\/li>\n\n\n\n<li>Activiti: A Spring Boot-based workflow engine for managing and executing complex business processes.<\/li>\n<\/ol>\n\n\n\n<p>These systems have a certain user group and community support, which can provide reference and reference for developers.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/edu.ujhb.org\/?p=891\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/chat.openai.com\/_next\/image?url=https%3A%2F%2Flh3.googleusercontent.com%2Fa%2FAGNmyxbwVdnTP0E2eBqDrujRQjV-wFP12Thr4vFgysVv5A%3Ds96-c&amp;w=64&amp;q=75\" alt=\"gun tei\"\/><\/figure>\n\n\n\n<p>What are the excellent tutorials and communities for Springboot on Github<\/p>\n\n\n\n<p>There are many excellent Spring Boot tutorials and communities on Github, some of the more well-known ones:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Spring Boot Official Documentation:&nbsp;<a href=\"https:\/\/docs.spring.io\/spring-boot\/docs\/current\/reference\/htmlsingle\/%EF%BC%8C%E6%98%AFSpring\">https:\/\/docs.spring.io\/spring-boot\/docs\/current\/reference\/htmlsingle\/ is the official Spring<\/a>&nbsp;Boot documentation, which contains detailed user guides, sample code, API documentation, and more.<\/li>\n\n\n\n<li>Spring Boot Sample Project:&nbsp;<a href=\"https:\/\/github.com\/spring-projects\/spring-boot\/tree\/main\/spring-boot-samples%EF%BC%8C%E5%8C%85%E5%90%AB%E4%BA%86%E5%A4%9A%E4%B8%AA%E4%BD%BF%E7%94%A8Spring\">https:\/\/github.com\/spring-projects\/spring-boot\/tree\/main\/spring-boot-samples, contains several sample projects using<\/a>&nbsp;Spring Boot to help developers quickly understand and master how to use Spring Boot.<\/li>\n\n\n\n<li>Spring Boot Chinese documentation:&nbsp;<a href=\"https:\/\/github.com\/spring-projects\/spring-boot\/tree\/main\/spring-boot-docs\/src\/main\/asciidoc%EF%BC%8C%E6%98%AFSpring\">https:\/\/github.com\/spring-projects\/spring-boot\/tree\/main\/spring-boot-docs\/src\/main\/asciidoc is a Chinese document for<\/a>&nbsp;Spring Boot, maintained by the Spring China community, containing a large number of Chinese translations and explanations.<\/li>\n\n\n\n<li>Spring Boot Chinese Community:&nbsp;<a href=\"https:\/\/springboot.io\/%EF%BC%8C%E6%98%AF%E4%B8%80%E4%B8%AA%E4%B8%93%E9%97%A8%E4%B8%BASpring\">https:\/\/springboot.io\/ is a Chinese community built specifically for Spring<\/a>&nbsp;Boot developers, with many useful tutorials, blogs, Q&amp;A, forums, and more to provide support and assistance to developers.<\/li>\n\n\n\n<li>Spring Boot Study Notes:&nbsp;<a href=\"https:\/\/github.com\/ityouknow\/spring-boot-examples%EF%BC%8C%E6%98%AF%E4%B8%80%E4%B8%AA%E4%BD%BF%E7%94%A8Spring\">https:\/\/github.com\/ityouknow\/spring-boot-examples, is a sample project built using<\/a>&nbsp;Spring Boot with multiple modules, such as Spring Boot Basics, Spring Boot Web, Spring Boot Data Access, Spring Boot Integration, etc. It can help developers gain insight and mastery of the various functions and features of Spring Boot.<\/li>\n\n\n\n<li>Spring Boot Tutorial: https:\/\/github.com\/tuonioooo\/SpringBoot-Learning,&nbsp;<a href=\"https:\/\/github.com\/tuonioooo\/SpringBoot-Learning%EF%BC%8C%E6%98%AF%E4%B8%80%E4%B8%AASpring\">is a Spring<\/a>&nbsp;Boot introductory tutorial, containing multiple chapters, from the aspects of setting up the environment, configuration files, web development, data access, caching, security, etc., suitable for beginners to get started.<\/li>\n\n\n\n<li>Spring Boot in Action:&nbsp;<a href=\"https:\/\/github.com\/xkcoding\/spring-boot-demo%EF%BC%8C%E6%98%AF%E4%B8%80%E4%B8%AA%E4%BD%BF%E7%94%A8Spring\">https:\/\/github.com\/xkcoding\/spring-boot-demo, is a sample project built using<\/a>&nbsp;Spring Boot, containing multiple modules, such as Spring Boot Basics, Spring Boot Web, Spring Boot Data Access, Spring Boot Integration, etc. Help developers deeply understand and master Spring Boot tips and best practices through practical methods.<\/li>\n<\/ol>\n\n\n\n<p>These tutorials and communities provide a wealth of learning resources and community support, making them a valuable reference for developers who want to learn and apply Spring Boot in depth.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I want to do a video &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_mi_skip_tracking":false,"footnotes":""},"categories":[23],"tags":[],"class_list":["post-900","post","type-post","status-publish","format-standard","hentry","category-material"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/900","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=900"}],"version-history":[{"count":1,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/900\/revisions"}],"predecessor-version":[{"id":901,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=\/wp\/v2\/posts\/900\/revisions\/901"}],"wp:attachment":[{"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=900"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=900"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/edu.ujhb.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=900"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}