{"id":1685,"date":"2025-03-20T14:16:21","date_gmt":"2025-03-20T06:16:21","guid":{"rendered":"https:\/\/www.tqazy.com\/?p=1685"},"modified":"2025-03-20T14:32:31","modified_gmt":"2025-03-20T06:32:31","slug":"springboot%e9%a1%b9%e7%9b%ae%e6%a8%a1%e6%9d%bf-%e5%a4%9a%e7%8e%af%e5%a2%83%e9%85%8d%e7%bd%ae%e6%97%a5%e5%bf%97%e8%be%93%e5%87%bawindows%e7%b3%bb%e7%bb%9f%e6%9e%84%e5%bb%ba%e6%89%93%e5%8c%85","status":"publish","type":"post","link":"https:\/\/www.tqazy.com\/?p=1685","title":{"rendered":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c]"},"content":{"rendered":"<blockquote>\n<p>\u672c\u7ae0\u5b8c\u6210\u7684\u6548\u679c\uff1a<\/p>\n<ol>\n<li>\u521b\u5efa\u4e00\u4e2a Spring Boot \u9879\u76ee<\/li>\n<li>\u591a\u73af\u5883\u914d\u7f6e\uff0c\u9009\u62e9\u73af\u5883\u6253\u5305<\/li>\n<li>\u4f7f\u7528logback\u8fdb\u884c\u65e5\u5fd7\u8f93\u51fa\uff0c\u6309\u65e5\u671f+\u5927\u5c0f\u8fdb\u884c\u6eda\u52a8\u538b\u7f29<\/li>\n<li>\u5728Windows\u7cfb\u7edf\u4f7f\u7528maven\u8fdb\u884c\u6784\u5efa\u6253\u5305\u8fd0\u884c<\/li>\n<\/ol>\n<\/blockquote>\n<div style=\"height:1.5em\"><\/div>\n<blockquote>\n<p>\u672c\u7ae0\u4f7f\u7528\u7684\u8fd0\u884c\u73af\u5883\uff1a<\/p>\n<ul>\n<li>Java\uff1aJDK1.8.0_441<\/li>\n<li>Maven\uff1a3.6.0<\/li>\n<li>Spring Boot: 2.6.13<\/li>\n<li>Logback\uff1a1.2.11\n<ul>\n<li>\u5df2\u88ab <code>spring-boot-starter-web<\/code> \u95f4\u63a5\u5f15\u5165<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/blockquote>\n<div style=\"height:1.5em\"><\/div>\n<p>\u63a5\u4e0b\u6765\u6211\u5c06\u4f7f\u7528idea\u8fdb\u884c\u521b\u5efa\u9879\u76ee\uff1a<\/p>\n<h1>\u4e00\u3001\u65b0\u5efa\u9879\u76ee<\/h1>\n<ol>\n<li>\u65b0\u5efa\u9879\u76ee\uff1b<\/li>\n<li>\u9009\u62e9\u751f\u6210\u5668\uff1a\u201cSpring Boot\u201d\uff1b<\/li>\n<li>\u70b9\u51fb\u3010\u670d\u52a1\u5668URL\u3011\u540e\u9762\u7684\u9f7f\u8f6e\uff0c\u628a\u751f\u6210\u9879\u76ee\u7684\u5730\u5740\u6362\u6210\u963f\u91cc\u4e91\uff0c\u56e0\u4e3aspring\u5b98\u65b9\u5df2\u7ecf\u4e0d\u652f\u6301Java8\u751f\u6210SpringBoot\u9879\u76ee\uff1b\n<ul>\n<li><code>https:\/\/start.aliyun.com<\/code><\/li>\n<\/ul>\n<\/li>\n<li>\u586b\u5199\u597d\u76f8\u5173\u4fe1\u606f\uff0c\u70b9\u51fb\u4e0b\u4e00\u6b65\uff1a\n<ul>\n<li>\u9879\u76ee\u540d\u79f0<\/li>\n<li>\u9879\u76ee\u4ee3\u7801\u4f4d\u7f6e\uff08\u9879\u76ee\u540d\u4e0d\u7528\u586b\u5199\uff09<\/li>\n<li>\u9009\u62e9Java\u8bed\u8a00<\/li>\n<li>\u9009\u62e9Maven\u7ba1\u7406\u4f9d\u8d56<\/li>\n<li>\u7ec4\uff1a\u4e00\u822c\u662f\u57df\u540d\u5012\u7f6e\uff08\u4e0d\u80fd\u6709\u7a7a\u683c\uff09<\/li>\n<li>\u5de5\u4ef6\uff1a\u9879\u76ee\u540d\uff08\u4e0d\u80fd\u6709\u7a7a\u683c\uff09<\/li>\n<li>\u8f6f\u4ef6\u5305\u540d\u79f0\uff1a\u4e00\u822c\u7531[\u7ec4]\u548c[\u5de5\u4ef6]\u81ea\u52a8\u751f\u6210<\/li>\n<li>JDK\uff1a\u672c\u5730JDK8\u5730\u5740<\/li>\n<li>Java\uff1a8\uff08\u6ca1\u67098\uff0c\u9700\u8981\u4fee\u6539\u4e0a\u4e00\u6b65\u7684\u670d\u52a1\u5668URL\uff09<\/li>\n<li>\u6253\u5305\uff1aJar<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/li>\n<\/ul>\n<\/li>\n<li>\u9009\u62e9\u4f9d\u8d56\uff0c\u70b9\u51fb\u521b\u5efa\uff1a\n<ul>\n<li>\u9009\u62e9Spring Boot\u7248\u672c\uff1a2.6.13\uff08\n<ul>\n<li>\u8fd9\u4e2a\u7248\u672c\u96c6\u6210logback1.2.11\uff0c\u8db3\u591f\u6211\u4eec\u4f7f\u7528<\/li>\n<\/ul>\n<\/li>\n<li>\u9009\u4e2d\uff1aDeveloper Tools =&gt; Lombok<\/li>\n<li>\u9009\u4e2d\uff1aWeb =&gt; Spring Web<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320020036881.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320020036881.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/li>\n<\/ul>\n<\/li>\n<li>\u9879\u76ee\u521b\u5efa\u597d\u4e4b\u540e\uff0c\u5220\u9664\u81ea\u52a8\u751f\u6210\u7684\u6216\u4e0d\u5fc5\u8981\u7684\u6587\u4ef6\uff0c\u8fd8\u539f\u4e00\u4e2a\u5e72\u51c0\u7684\u9879\u76ee\u7ed3\u6784\n<ul>\n<li>\u5220\u9664 src\\main\\java\\ *** \u4e0b\u7684\u6574\u4e2aweb\u76ee\u5f55<\/li>\n<li>\u5220\u9664 static\\index.html<\/li>\n<li>\u4fee\u6539 application.properties \u91cd\u547d\u540d\u4e3a application.yml\n<ul>\n<li>\u63a8\u8350\u4f7f\u7528yaml\u6587\u4ef6<\/li>\n<\/ul>\n<\/li>\n<li>\u4fee\u6539 logback.xml \u91cd\u547d\u540d\u4e3a logback-spring.xml\uff08\n<ul>\n<li>\u56e0\u4e3a\u540e\u9762\u4f1a\u5728\u8fd9\u4e2a\u6587\u4ef6\u4e2d\u4f7f\u7528spring\u76f8\u5173\u914d\u7f6e\uff0c\u91cd\u547d\u540d\u540e\u5c06\u652f\u6301spring\u76f8\u5173\u914d\u7f6e<\/li>\n<\/ul>\n<\/li>\n<li>\u5220\u9664 test\u76ee\u5f55\u4e0b\u7684\u6574\u4e2ajava\u76ee\u5f55\uff0c\u540e\u7eed\u9700\u8981\u518d\u65b0\u5efa<\/li>\n<li>\u5220\u9664 .gitignore\uff0c\u9700\u8981\u4f7f\u7528git\u65f6\u518d\u65b0\u589e<\/li>\n<li>\u5220\u9664 HELP.md\uff0c\u9700\u8981\u9879\u76ee\u5e2e\u52a9\u6587\u6863\u65f6\u518d\u65b0\u589e<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<div style=\"height:1.5em\"><\/div>\n<h1>\u4e8c\u3001pom.xml\u6587\u4ef6<\/h1>\n<p>\u65b0\u7684pom.xml\u6587\u4ef6\u5185\u5bb9\uff1a<\/p>\n<pre><code class=\"language-xml\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;\n&lt;project xmlns=&quot;http:\/\/maven.apache.org\/POM\/4.0.0&quot; xmlns:xsi=&quot;http:\/\/www.w3.org\/2001\/XMLSchema-instance&quot;\n         xsi:schemaLocation=&quot;http:\/\/maven.apache.org\/POM\/4.0.0 https:\/\/maven.apache.org\/xsd\/maven-4.0.0.xsd&quot;&gt;\n    &lt;modelVersion&gt;4.0.0&lt;\/modelVersion&gt;\n\n    &lt;!-- \u9879\u76ee\u57fa\u672c\u4fe1\u606f --&gt;\n    &lt;groupId&gt;com.tqazy&lt;\/groupId&gt;\n    &lt;artifactId&gt;demo&lt;\/artifactId&gt;\n    &lt;version&gt;v1.0&lt;\/version&gt;\n    &lt;name&gt;demo&lt;\/name&gt;\n    &lt;description&gt;demo&lt;\/description&gt;\n\n    &lt;!-- \u9879\u76ee\u5c5e\u6027\u914d\u7f6e --&gt;\n    &lt;properties&gt;\n        &lt;java.version&gt;1.8&lt;\/java.version&gt;\n        &lt;project.build.sourceEncoding&gt;UTF-8&lt;\/project.build.sourceEncoding&gt;\n        &lt;project.reporting.outputEncoding&gt;UTF-8&lt;\/project.reporting.outputEncoding&gt;\n        &lt;spring-boot.version&gt;2.6.13&lt;\/spring-boot.version&gt;\n        &lt;maven-compiler-plugin.version&gt;3.6.0&lt;\/maven-compiler-plugin.version&gt;\n    &lt;\/properties&gt;\n\n    &lt;!-- \u9879\u76ee\u4f9d\u8d56\u914d\u7f6e --&gt;\n    &lt;dependencies&gt;\n        &lt;!-- Spring Boot Web \u542f\u52a8\u5668 --&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n            &lt;artifactId&gt;spring-boot-starter-web&lt;\/artifactId&gt;\n            &lt;version&gt;${spring-boot.version}&lt;\/version&gt;\n        &lt;\/dependency&gt;\n\n        &lt;!-- Lombok \u4f9d\u8d56 --&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.projectlombok&lt;\/groupId&gt;\n            &lt;artifactId&gt;lombok&lt;\/artifactId&gt;\n            &lt;scope&gt;provided&lt;\/scope&gt;\n            &lt;optional&gt;true&lt;\/optional&gt;\n        &lt;\/dependency&gt;\n    &lt;\/dependencies&gt;\n\n    &lt;!-- \u4f9d\u8d56\u7ba1\u7406 --&gt;\n    &lt;dependencyManagement&gt;\n        &lt;dependencies&gt;\n            &lt;dependency&gt;\n                &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n                &lt;artifactId&gt;spring-boot-dependencies&lt;\/artifactId&gt;\n                &lt;version&gt;${spring-boot.version}&lt;\/version&gt;\n                &lt;type&gt;pom&lt;\/type&gt;\n                &lt;scope&gt;import&lt;\/scope&gt;\n            &lt;\/dependency&gt;\n        &lt;\/dependencies&gt;\n    &lt;\/dependencyManagement&gt;\n\n    &lt;!-- \u9879\u76ee\u6784\u5efa\u914d\u7f6e --&gt;\n    &lt;build&gt;\n        &lt;!-- \u8d44\u6e90\u914d\u7f6e --&gt;\n        &lt;resources&gt;\n            &lt;resource&gt;\n                &lt;directory&gt;src\/main\/resources&lt;\/directory&gt;\n                &lt;filtering&gt;true&lt;\/filtering&gt;\n            &lt;\/resource&gt;\n        &lt;\/resources&gt;\n\n        &lt;!-- \u63d2\u4ef6\u914d\u7f6e --&gt;\n        &lt;plugins&gt;\n            &lt;!-- Maven \u7f16\u8bd1\u5668\u63d2\u4ef6 --&gt;\n            &lt;plugin&gt;\n                &lt;groupId&gt;org.apache.maven.plugins&lt;\/groupId&gt;\n                &lt;artifactId&gt;maven-compiler-plugin&lt;\/artifactId&gt;\n                &lt;version&gt;${maven-compiler-plugin.version}&lt;\/version&gt;\n                &lt;configuration&gt;\n                    &lt;source&gt;${java.version}&lt;\/source&gt;\n                    &lt;target&gt;${java.version}&lt;\/target&gt;\n                    &lt;encoding&gt;UTF-8&lt;\/encoding&gt;\n                &lt;\/configuration&gt;\n            &lt;\/plugin&gt;\n\n            &lt;!-- Spring Boot Maven \u63d2\u4ef6 --&gt;\n            &lt;plugin&gt;\n                &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n                &lt;artifactId&gt;spring-boot-maven-plugin&lt;\/artifactId&gt;\n                &lt;version&gt;${spring-boot.version}&lt;\/version&gt;\n                &lt;configuration&gt;\n                    &lt;mainClass&gt;com.tqazy.demo.DemoApplication&lt;\/mainClass&gt;\n                &lt;\/configuration&gt;\n                &lt;executions&gt;\n                    &lt;execution&gt;\n                        &lt;id&gt;repackage&lt;\/id&gt;\n                        &lt;goals&gt;\n                            &lt;goal&gt;repackage&lt;\/goal&gt;\n                        &lt;\/goals&gt;\n                    &lt;\/execution&gt;\n                &lt;\/executions&gt;\n            &lt;\/plugin&gt;\n        &lt;\/plugins&gt;\n    &lt;\/build&gt;\n\n    &lt;!-- \u9879\u76ee\u73af\u5883\u914d\u7f6e --&gt;\n    &lt;profiles&gt;\n        &lt;!-- \u6d4b\u8bd5\u73af\u5883\u914d\u7f6e --&gt;\n        &lt;profile&gt;\n            &lt;id&gt;test&lt;\/id&gt;\n            &lt;properties&gt;\n                &lt;profiles.active&gt;test&lt;\/profiles.active&gt;\n            &lt;\/properties&gt;\n            &lt;activation&gt;\n                &lt;!-- \u9ed8\u8ba4\u73af\u5883 --&gt;\n                &lt;activeByDefault&gt;true&lt;\/activeByDefault&gt;\n            &lt;\/activation&gt;\n        &lt;\/profile&gt;\n\n        &lt;!-- \u751f\u4ea7\u73af\u5883\u914d\u7f6e --&gt;\n        &lt;profile&gt;\n            &lt;id&gt;prod&lt;\/id&gt;\n            &lt;properties&gt;\n                &lt;profiles.active&gt;prod&lt;\/profiles.active&gt;\n            &lt;\/properties&gt;\n        &lt;\/profile&gt;\n    &lt;\/profiles&gt;\n\n&lt;\/project&gt;\n<\/code><\/pre>\n<p>\u4ee3\u7801\u89e3\u6790\uff1a<\/p>\n<ul>\n<li><strong>\u9879\u76ee\u57fa\u672c\u4fe1\u606f\uff1a<\/strong> \u9700\u8981\u4fee\u6539\u6210\u4f60\u7684\u914d\u7f6e\uff1b<\/li>\n<li><strong>\u9879\u76ee\u5c5e\u6027\u914d\u7f6e\uff1a<\/strong> \u914d\u7f6e\u4e86\n<ul>\n<li>Java\u7248\u672c\uff1a1.8<\/li>\n<li>Maven \u8bfb\u53d6\u9879\u76ee\u6e90\u6587\u4ef6\u7684\u7f16\u7801\u683c\u5f0f\uff1aUTF-8<\/li>\n<li>Maven \u751f\u6210\u62a5\u544a\u65f6\u7684\u8f93\u51fa\u7f16\u7801\u683c\u5f0f\uff1aUTF-8<\/li>\n<li>Spring Boot \u7248\u672c\uff1a2.6.13<\/li>\n<li>Maven \u63d2\u4ef6\u7248\u672c\uff1a3.6.0<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u9879\u76ee\u4f9d\u8d56\u914d\u7f6e\uff1a<\/strong> \u914d\u7f6e\u4e86\uff1a\n<ul>\n<li><code>spring-boot-starter-web<\/code> \uff1a\u5df2\u63d0\u4f9bRestful API\u98ce\u683c\u7684\u7684\u4f9d\u8d56\uff0c\u540c\u65f6\u96c6\u6210\u4e86logback\u7684\u4f9d\u8d56<\/li>\n<li><code>lombok<\/code> \uff1a\u7b80\u5316\u7f16\u7801\uff0c\u8bbe\u7f6e<code>&lt;scope&gt;provided&lt;\/scope&gt;<\/code>\uff0c\u610f\u4e3a\u4ec5\u5728\u7f16\u8bd1\u9636\u6bb5\u751f\u6548<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u4f9d\u8d56\u7ba1\u7406\uff1a<\/strong>\n<ul>\n<li><code>spring-boot-dependencies<\/code> \uff1a\u786e\u4fdd\u4f9d\u8d56\u7248\u672c\u7684\u4e00\u81f4\u6027\u548c\u517c\u5bb9\u6027<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u9879\u76ee\u6784\u5efa\u914d\u7f6e\uff1a<\/strong>\n<ul>\n<li><strong>\u8d44\u6e90\u914d\u7f6e\uff1a<\/strong> \u6b64\u5904\u7684\u8d44\u6e90\u914d\u7f6e\uff0c\u662f\u4e3a\u4e86\u540e\u9762\u5728\u3010application.yml\u3011\u6587\u4ef6\u4e2d <code>@profiles.active@<\/code> \u914d\u7f6e\u5185\u5bb9\u80fd\u8bfb\u53d6\u5230\u3010pom.xml\u3011\u4e2d\u7684 <code>&lt;profiles&gt;<\/code> \u914d\u7f6e<\/li>\n<li><strong>\u63d2\u4ef6\u914d\u7f6e\uff1a<\/strong> \u4e3a\u4e86\u914d\u7f6e Maven\u63d2\u4ef6 \u548cSpring Boot Maven\u63d2\u4ef6\u7684\u7248\u672c\u548c\u76f8\u5173\u914d\u7f6e\n<ul>\n<li><code>mainClass<\/code> \uff1a\u914d\u7f6e\u8fd9\u4e2a\u9879\u76ee\u7684\u4e3b\u6587\u4ef6\u5730\u5740\uff0c\u5373\u88ab <code>@SpringBootApplication<\/code> \u4fee\u9970\u7684\u7a0b\u5e8f\u4e3b\u5165\u53e3<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u9879\u76ee\u73af\u5883\u914d\u7f6e\uff1a<\/strong> \u914d\u7f6e\u4e86\u4e24\u4e2a\u73af\u5883\uff1atest\u548cprod\uff0c\u5982\u679c\u6709\u9700\u8981\u53ef\u4ee5\u518d\u65b0\u589e\u4e00\u4e2adev\u3002\u6b64\u5904\u914d\u7f6e\u662f\u4e3a\u4e86\u65b9\u4fbf\u5728\u6784\u5efa\u9879\u76ee\u65f6\uff0c\u53ef\u4ee5\u901a\u8fc7\u6784\u5efa\u6307\u4ee4\u52a8\u6001\u9009\u62e9\u4e0d\u540c\u73af\u5883\u7684\u914d\u7f6e\u8fdb\u884c\u6253\u5305\u3002\u5177\u4f53\u5982\u4f55\u9009\u62e9\uff0c\u5728\u4e0b\u9762\u4f1a\u8bb2\u89e3\u3002<\/li>\n<\/ul>\n<div style=\"height:1.5em\"><\/div>\n<h1>\u4e09\u3001\u9879\u76ee\u914d\u7f6e\u6587\u4ef6<\/h1>\n<h2>3.1 application.yml\uff08\u4e3b\u914d\u7f6e\u6587\u4ef6\uff09<\/h2>\n<pre><code class=\"language-yml\">spring:\n  profiles:\n    active: @profiles.active@<\/code><\/pre>\n<p>\u4ee3\u7801\u89e3\u6790\uff1a<br \/>\n\u6b64\u5904\u53ea\u5bf9\u4e0d\u540c\u73af\u5883\u6587\u4ef6\u52a8\u6001\u8bfb\u53d6\u8fdb\u884c\u4e86\u914d\u7f6e\u3002<br \/>\n\u540e\u7eed\u5982\u679c\u6709\u5728\u4e0d\u540c\u73af\u5883\u4e0b\u4e5f\u9700\u8981\u76f8\u540c\u914d\u7f6e\u7684\u4fe1\u606f\u90fd\u53ef\u4ee5\u5728\u4e3b\u914d\u7f6e\u6587\u4ef6\u4e2d\u8fdb\u884c\u914d\u7f6e\u3002<\/p>\n<div style=\"height:1.5em\"><\/div>\n<h2>3.2 application-test.yml\uff08\u5206\u73af\u5883\u6587\u4ef6\uff09<\/h2>\n<pre><code class=\"language-yml\">server:\n  port: 8081\n\n# \u65e5\u5fd7\u914d\u7f6e\nlogging:\n  file:\n    path: D:\\code\\test\\logs\\test\n  level:\n    com.tqazy: debug\n    org.springframework: WARN\n    org.spring.springboot.dao: debug<\/code><\/pre>\n<p>\u4ee3\u7801\u89e3\u6790\uff1a<\/p>\n<ul>\n<li>\u914d\u7f6e\u9879\u76ee\u7aef\u53e3\uff1a8081<\/li>\n<li>\u914d\u7f6e\u65e5\u5fd7\u4fe1\u606f\uff1a\n<ul>\n<li>\u65e5\u5fd7\u8f93\u51fa\u5730\u5740<\/li>\n<li>\u4e0d\u540c\u5305\u4e0b\u8f93\u51fa\u7684\u65e5\u5fd7\u7b49\u7ea7\n<ul>\n<li>\u672c\u5730\u73af\u5883\u3001\u6d4b\u8bd5\u73af\u5883\u53ef\u4ee5\u6bd4\u8f83\u5bbd\u677e\uff1b<\/li>\n<li>\u5efa\u8bae\u751f\u4ea7\u73af\u5883\u914d\u7f6e\u7b49\u7ea7\u9ad8\u4e00\u4e9b\uff0c\u5c3d\u91cf\u4e0d\u4f7f\u7528debug\uff0c\u4e0d\u7136\u751f\u6210\u7684\u65e5\u5fd7\u91cf\u4f1a\u975e\u5e38\u5927\u4e14\u654f\u611f\u6570\u636e\u6253\u5370\u6210\u65e5\u5fd7\u4e0d\u5b89\u5168<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div style=\"height:1.5em\"><\/div>\n<h2>3.3 application-prod.yml\uff08\u5206\u73af\u5883\u6587\u4ef6\uff09<\/h2>\n<pre><code class=\"language-yml\">server:\n  port: 8082\n\n# \u65e5\u5fd7\u914d\u7f6e\nlogging:\n  file:\n    path: D:\\code\\test\\logs\\prod\n  level:\n    com.tqazy: info\n    org.springframework: WARN\n    org.spring.springboot.dao: info<\/code><\/pre>\n<p>\u4ee3\u7801\u89e3\u6790\uff1a<\/p>\n<ul>\n<li>\u914d\u7f6e\u9879\u76ee\u7aef\u53e3\uff1a8082<\/li>\n<li>\u914d\u7f6e\u65e5\u5fd7\u4fe1\u606f\uff1a\n<ul>\n<li>\u65e5\u5fd7\u8f93\u51fa\u5730\u5740<\/li>\n<li>\u4e0d\u540c\u5305\u4e0b\u8f93\u51fa\u7684\u65e5\u5fd7\u7b49\u7ea7<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div style=\"height:1.5em\"><\/div>\n<h2>3.4 logback-spring.xml\uff08\u65e5\u5fd7\u914d\u7f6e\u6587\u4ef6\uff09<\/h2>\n<pre><code class=\"language-xml\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;\n&lt;configuration&gt;\n\n    &lt;!-- \u4ece Spring Boot \u914d\u7f6e\u6587\u4ef6\u4e2d\u8bfb\u53d6\u65e5\u5fd7\u8def\u5f84 --&gt;\n    &lt;springProperty scope=&quot;context&quot; name=&quot;log.path&quot; source=&quot;logging.file.path&quot;\/&gt;\n    &lt;!-- \u89c4\u5b9a\u65e5\u5fd7\u683c\u5f0f\uff0c\n        \u683c\u5f0f\uff1a\u6708\u65e5 \u65f6\u5206\u79d2\u6beb\u79d2 [\u7ebf\u7a0b\u540d\u79f0] \u65e5\u5fd7\u7ea7\u522b \u8bb0\u5f55\u5668\u540d\u79f0\uff08\u7c7b\u540d\uff09 - [\u8c03\u7528\u65b9\u6cd5\u540d,\u6587\u4ef6\u4e2d\u884c\u53f7] - \u65e5\u5fd7\u6d88\u606f\u5185\u5bb9\n        \u793a\u4f8b\uff1a03-20 15:30:00.456 [http-nio-8080-exec-1] INFO  com.example.controller.UserController - [getUser,50] - User retrieved successfully\n    --&gt;\n    &lt;property name=&quot;log.pattern&quot; value=&quot;%d{MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{30} - [%method,%line] - %msg%n&quot;\/&gt;\n\n    &lt;!-- \u63a7\u5236\u53f0\u8f93\u51fa --&gt;\n    &lt;appender name=&quot;console&quot; class=&quot;ch.qos.logback.core.ConsoleAppender&quot;&gt;\n        &lt;encoder&gt;\n            &lt;charset&gt;UTF-8&lt;\/charset&gt;\n            &lt;pattern&gt;${log.pattern}&lt;\/pattern&gt;\n        &lt;\/encoder&gt;\n    &lt;\/appender&gt;\n\n    &lt;!-- \u7cfb\u7edf\u65e5\u5fd7\u8f93\u51fa --&gt;\n    &lt;appender name=&quot;file_info&quot; class=&quot;ch.qos.logback.core.rolling.RollingFileAppender&quot;&gt;\n        &lt;file&gt;${log.path}\/sys-info.log&lt;\/file&gt;\n        &lt;rollingPolicy class=&quot;ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy&quot;&gt;\n            &lt;!-- \u6309\u5929\u56de\u6eda daily --&gt;\n            &lt;fileNamePattern&gt;${log.path}\/sys-info.%d{yyyy-MM-dd}.%i.log.gz&lt;\/fileNamePattern&gt;\n            &lt;!-- \u65e5\u5fd7\u6700\u5927\u7684\u5386\u53f2 60\u5929 --&gt;\n            &lt;maxHistory&gt;60&lt;\/maxHistory&gt;\n            &lt;!--\u6bcf\u4e2a\u65e5\u5fd7\u6587\u4ef6\u6700\u5927100MB--&gt;\n            &lt;maxFileSize&gt;100MB&lt;\/maxFileSize&gt;\n            &lt;!-- \u603b\u65e5\u5fd7\u6587\u4ef6\u5927\u5c0f\u4e0a\u9650\uff08\u53ef\u9009\uff09 --&gt;\n            &lt;totalSizeCap&gt;1GB&lt;\/totalSizeCap&gt;\n        &lt;\/rollingPolicy&gt;\n        &lt;encoder&gt;\n            &lt;charset&gt;UTF-8&lt;\/charset&gt;\n            &lt;pattern&gt;${log.pattern}&lt;\/pattern&gt;\n        &lt;\/encoder&gt;\n        &lt;filter class=&quot;ch.qos.logback.classic.filter.LevelFilter&quot;&gt;\n            &lt;level&gt;INFO&lt;\/level&gt;\n            &lt;onMatch&gt;ACCEPT&lt;\/onMatch&gt;\n            &lt;onMismatch&gt;DENY&lt;\/onMismatch&gt;\n        &lt;\/filter&gt;\n    &lt;\/appender&gt;\n\n    &lt;appender name=&quot;file_error&quot; class=&quot;ch.qos.logback.core.rolling.RollingFileAppender&quot;&gt;\n        &lt;file&gt;${log.path}\/sys-error.log&lt;\/file&gt;\n        &lt;rollingPolicy class=&quot;ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy&quot;&gt;\n            &lt;!-- \u6309\u5929\u56de\u6eda daily --&gt;\n            &lt;fileNamePattern&gt;${log.path}\/sys-error.%d{yyyy-MM-dd}.%i.log.gz&lt;\/fileNamePattern&gt;\n            &lt;!-- \u65e5\u5fd7\u6700\u5927\u7684\u5386\u53f2 60\u5929 --&gt;\n            &lt;maxHistory&gt;60&lt;\/maxHistory&gt;\n            &lt;!--\u6bcf\u4e2a\u65e5\u5fd7\u6587\u4ef6\u6700\u5927100MB--&gt;\n            &lt;maxFileSize&gt;100MB&lt;\/maxFileSize&gt;\n            &lt;!-- \u603b\u65e5\u5fd7\u6587\u4ef6\u5927\u5c0f\u4e0a\u9650\uff08\u53ef\u9009\uff09 --&gt;\n            &lt;totalSizeCap&gt;1GB&lt;\/totalSizeCap&gt;\n        &lt;\/rollingPolicy&gt;\n        &lt;encoder&gt;\n            &lt;charset&gt;UTF-8&lt;\/charset&gt;\n            &lt;pattern&gt;${log.pattern}&lt;\/pattern&gt;\n        &lt;\/encoder&gt;\n        &lt;filter class=&quot;ch.qos.logback.classic.filter.LevelFilter&quot;&gt;\n            &lt;level&gt;ERROR&lt;\/level&gt;\n            &lt;onMatch&gt;ACCEPT&lt;\/onMatch&gt;\n            &lt;onMismatch&gt;DENY&lt;\/onMismatch&gt;\n        &lt;\/filter&gt;\n    &lt;\/appender&gt;\n\n    &lt;!-- \u7528\u6237\u8bbf\u95ee\u65e5\u5fd7\u8f93\u51fa  --&gt;\n    &lt;appender name=&quot;sys-user&quot; class=&quot;ch.qos.logback.core.rolling.RollingFileAppender&quot;&gt;\n        &lt;file&gt;${log.path}\/sys-user.log&lt;\/file&gt;\n        &lt;rollingPolicy class=&quot;ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy&quot;&gt;\n            &lt;!-- \u6309\u5929\u56de\u6eda daily --&gt;\n            &lt;fileNamePattern&gt;${log.path}\/sys-user.%d{yyyy-MM-dd}.%i.log.gz&lt;\/fileNamePattern&gt;\n            &lt;!-- \u65e5\u5fd7\u6700\u5927\u7684\u5386\u53f2 60\u5929 --&gt;\n            &lt;maxHistory&gt;60&lt;\/maxHistory&gt;\n            &lt;!--\u6bcf\u4e2a\u65e5\u5fd7\u6587\u4ef6\u6700\u5927100MB--&gt;\n            &lt;maxFileSize&gt;100MB&lt;\/maxFileSize&gt;\n            &lt;!-- \u603b\u65e5\u5fd7\u6587\u4ef6\u5927\u5c0f\u4e0a\u9650\uff08\u53ef\u9009\uff09 --&gt;\n            &lt;totalSizeCap&gt;1GB&lt;\/totalSizeCap&gt;\n        &lt;\/rollingPolicy&gt;\n        &lt;encoder&gt;\n            &lt;charset&gt;UTF-8&lt;\/charset&gt;\n            &lt;pattern&gt;${log.pattern}&lt;\/pattern&gt;\n        &lt;\/encoder&gt;\n    &lt;\/appender&gt;\n\n    &lt;!-- com.tqazy \u5305\u53ca\u5176\u5b50\u5305\u4e0b\u7684\u65e5\u5fd7\u8bb0\u5f55\u5668\u7684\u65e5\u5fd7\u7ea7\u522b\u4e3a INFO --&gt;\n    &lt;logger name=&quot;com.tqazy&quot; level=&quot;info&quot;\/&gt;\n\n    &lt;!-- \u5b9a\u4e49\u4e86\u5168\u5c40\u7684\u65e5\u5fd7\u7ea7\u522b\u548c\u9ed8\u8ba4\u7684\u65e5\u5fd7\u8f93\u51fa\u884c\u4e3a --&gt;\n    &lt;!-- \u8bbe\u5b9a\u7ea7\u522b\uff1ainfo\uff0c\u5904\u7406 INFO\u3001WARN \u548c ERROR \u7ea7\u522b --&gt;\n    &lt;root level=&quot;info&quot;&gt;\n        &lt;!-- \u7ecf\u8fc7\u6839\u65e5\u5fd7\u8bb0\u5f55\u5668\u8fc7\u6ee4\u540e\u7684\u65e5\u5fd7\u6d88\u606f\u80fd\u591f\u8f93\u51fa\u5230\u63a7\u5236\u53f0 --&gt;\n        &lt;appender-ref ref=&quot;console&quot;\/&gt;\n        &lt;!-- \u628a INFO \u7ea7\u522b\u7684\u65e5\u5fd7\u8f93\u51fa\u5230\u6587\u4ef6 sys-info.log \u4e2d --&gt;\n        &lt;appender-ref ref=&quot;file_info&quot;\/&gt;\n        &lt;!-- \u628a ERROR \u7ea7\u522b\u7684\u65e5\u5fd7\u8f93\u51fa\u5230\u6587\u4ef6 sys-info.log \u4e2d --&gt;\n        &lt;appender-ref ref=&quot;file_error&quot;\/&gt;\n        &lt;!-- \u628a\u7cfb\u7edf\u7528\u6237\u64cd\u4f5c\u65e5\u5fd7\u8f93\u51fa\u5230\u6587\u4ef6 sys-user.log \u4e2d --&gt;\n        &lt;appender-ref ref=&quot;sys-user&quot;\/&gt;\n    &lt;\/root&gt;\n&lt;\/configuration&gt;<\/code><\/pre>\n<p>\u4ee3\u7801\u89e3\u6790\uff1a<\/p>\n<ul>\n<li>\u4ece Spring Boot \u5206\u73af\u5883\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bfb\u53d6\u65e5\u5fd7\u8def\u5f84\uff0c\u5b9e\u73b0\u4e0d\u540c\u73af\u5883\u7684\u65e5\u5fd7\u6587\u4ef6\u8f93\u51fa\u5730\u5740\u4e0d\u540c\u3002\u6709\u6548\u5b9e\u73b0\u533a\u5206windows\u7cfb\u7edf\u548clinux\u7cfb\u7edf\u7684\u76ee\u5f55\u5730\u5740\u7ed3\u6784\u4e0d\u540c\u7684\u7279\u6027\u3002<\/li>\n<li>\u7edf\u4e00\u65e5\u5fd7\u683c\u5f0f<\/li>\n<li>\u65e5\u5fd7\u6eda\u52a8\u538b\u7f29\u7b56\u7565\uff1a\u6309\u65f6\u95f4+\u5927\u5c0f\u6df7\u5408\u6eda\u52a8<\/li>\n<li>\u591a\u7ef4\u5ea6\u65e5\u5fd7\u8f93\u51fa\uff1a\u63a7\u5236\u53f0\u3001\u7cfb\u7edf\u65e5\u5fd7\u62c6\u5206\uff08INFO\u3001ERROR\uff09\u3001\u7528\u6237\u64cd\u4f5c\u65e5\u5fd7<\/li>\n<li>\u65e5\u5fd7\u7ea7\u522b\u63a7\u5236<\/li>\n<li>\u914d\u7f6e\u65e5\u5fd7\u8f93\u51fa\u7f16\u7801\uff1aUTF-8<\/li>\n<\/ul>\n<div style=\"height:1.5em\"><\/div>\n<h1>\u56db\u3001\u7f16\u5199\u4e1a\u52a1\u4ee3\u7801<\/h1>\n<p>\u81f3\u6b64\uff0c\u9879\u76ee\u7684\u57fa\u672c\u914d\u7f6e\u5df2\u7ecf\u5b8c\u6210\uff0c\u63a5\u4e0b\u6765\u5f00\u59cb\u7f16\u5199\u7b80\u5355\u7684\u4e1a\u52a1\u4ee3\u7801\uff0c\u4f5c\u4e3a\u6f14\u793a\u3002<\/p>\n<h2>4.1 User.java<\/h2>\n<p>\u5728src\\main\\java\\com\\tqazy\\demo*\\web\\\u4e0b\u65b0\u5efadomain.pojo.User.java\u3002<br \/>\n\u6ce8\u610f\uff1aweb\u76ee\u5f55\u8981\u4e0e\u4e3b\u6587\u4ef6\u540c\u7ea7<\/p>\n<pre><code class=\"language-java\">import lombok.Data;\n\n@Data\npublic class User {\n\n    private String name;\n\n    private String address;\n\n}<\/code><\/pre>\n<p>\u4f7f\u7528Lombok\u4e4b\u540e\uff0c\u9879\u76ee\u4ee3\u7801\u4f1a\u53d8\u5f97\u5f88\u7b80\u6d01\u3002<\/p>\n<div style=\"height:1.5em\"><\/div>\n<h2>4.2 UserController.java<\/h2>\n<p>\u4e3a\u4e86\u6f14\u793a\u65b9\u4fbf\uff0c\u4e2d\u95f4\u7684\u903b\u8f91\u5c42\u548c\u6301\u4e45\u5c42\u6211\u5c31\u5ffd\u7565\u4e86\uff0c\u8fd9\u4e2a\u4e0d\u662f\u672c\u7ae0\u91cd\u70b9\u3002<\/p>\n<p>\u5728src\\main\\java\\com\\tqazy\\demo*\\web\\\u4e0b\u65b0\u5efacontroller.UserController.java\u3002<\/p>\n<pre><code class=\"language-java\">import com.tqazy.demo.demos.web.domain.pojo.User;\nimport org.slf4j.Logger;\nimport org.slf4j.LoggerFactory;\nimport org.springframework.web.bind.annotation.RequestMapping;\nimport org.springframework.web.bind.annotation.RequestParam;\nimport org.springframework.web.bind.annotation.ResponseBody;\nimport org.springframework.web.bind.annotation.RestController;\n\n@RestController\n@RequestMapping(&quot;\/user&quot;)\npublic class UserController {\n\n    \/\/ \u521b\u5efa\u4e00\u4e2a Logger \u5b9e\u4f8b\uff0c\u4f7f\u7528\u5f53\u524d\u7c7b\u7684\u7c7b\u540d\u4f5c\u4e3a\u65e5\u5fd7\u8bb0\u5f55\u5668\u7684\u540d\u79f0\n    private static final Logger logger = LoggerFactory.getLogger(UserController.class);\n\n    \/\/ http:\/\/127.0.0.1:8080\/hello?name=lisi\n    @RequestMapping(&quot;\/hello&quot;)\n    @ResponseBody\n    public String hello(@RequestParam(name = &quot;name&quot;, defaultValue = &quot;unknown user&quot;) String name) {\n        logger.info(&quot;hello {}&quot;, name);\n        return &quot;Hello &quot; + name;\n    }\n\n    \/\/ http:\/\/127.0.0.1:8080\/user\n    @RequestMapping(&quot;\/getUser&quot;)\n    @ResponseBody\n    public User getUser() {\n        User user = new User();\n        user.setName(&quot;\u9c81\u73ed\u4e03\u53f7&quot;);\n        user.setAddress(&quot;\u738b\u8005\u5ce1\u8c37&quot;);\n        System.out.println(user);\n        logger.error(user.toString());\n        return user;\n    }\n}<\/code><\/pre>\n<p>\u4e3a\u4e86\u6f14\u793a\uff0c\u6211\u5c06\u7b2c\u4e00\u4e2a\u65b9\u6cd5\u7684\u65e5\u5fd7\u4f7f\u7528INFO\u7ea7\u522b\u6253\u5370\uff0c\u5c06\u7b2c\u4e8c\u4e2a\u65b9\u6cd5\u7684\u65e5\u5fd7\u4f7f\u7528ERROR\u7ea7\u522b\u6253\u5370\u3002<\/p>\n<div style=\"height:1.5em\"><\/div>\n<h1>\u4e94\u3001\u4e0d\u540c\u73af\u5883\u8fd0\u884c<\/h1>\n<p>\u9879\u76ee\u4e2d\u6211\u4eec\u914d\u7f6e\u4e86\u6d4b\u8bd5\u73af\u5883\u548c\u751f\u4ea7\u73af\u5883\u7684\u6587\u4ef6\uff0c\u63a5\u4e0b\u6765\u6211\u4eec\u901a\u8fc7maven\u547d\u4ee4\uff0c\u52a8\u6001\u9009\u62e9\u4e0d\u540c\u73af\u5883\u6587\u4ef6\u8fdb\u884c\u6253\u5305\u8fd0\u884c\u3002<\/p>\n<p><strong>\u63d0\u524d\u58f0\u660e\uff1a<\/strong><\/p>\n<blockquote>\n<p>\u672c\u9879\u76ee\u5730\u5740\uff1aD:\\code\\test\\demo<br \/>\n\u751f\u6210\u7684jar\u5305\u540d\uff1ademo-v1.0.jar<br \/>\n\u672c\u9879\u76ee\u65e5\u5fd7\u8f93\u51fa\u5730\u5740\uff1aD:\\code\\test\\logs<br \/>\n\u4e0b\u9762\u7684\u547d\u4ee4\u4f60\u9700\u8981\u66f4\u6362\u6210\u4f60\u81ea\u5df1\u7684\u9879\u76ee\u5730\u5740<\/p>\n<\/blockquote>\n<div style=\"height:1.5em\"><\/div>\n<h2>5.1 \u76f8\u5173\u547d\u4ee4<\/h2>\n<p>\u5177\u4f53\u4f7f\u7528\u5728\u4e0b\u6587\u4e2d\u5b9e\u8df5<\/p>\n<pre><code class=\"language-shell\"># \u4f7f\u7528maven\u6e05\u9664\u5e76\u91cd\u65b0\u6253\u5305\u9879\u76ee\uff0c\u4f7f\u7528test\u73af\u5883\u6587\u4ef6\nmvn clean package -Ptest\n\n# \u4f7f\u7528maven\u6e05\u9664\u5e76\u91cd\u65b0\u6253\u5305\u9879\u76ee\uff0c\u4f7f\u7528prod\u73af\u5883\u6587\u4ef6\nmvn clean package -Pprod\n\n# \u4f7f\u7528java\u547d\u4ee4\u8fd0\u884cjar\u5305\uff0c\u4f46\u662f\u7a97\u53e3\u5173\u95ed\uff0c\u7a0b\u5e8f\u505c\u6b62\u8fd0\u884c\njava -jar D:\\code\\test\\demo\\target\\demo-v1.0.jar\n\n# \u4f7f\u7528javaw\u547d\u4ee4\u8fd0\u884cjar\u5305\uff0c\u7a0b\u5e8f\u540e\u53f0\u8fd0\u884c\njavaw -jar D:\\code\\test\\demo\\target\\demo-v1.0.jar\n\n# \u67e5\u8be2jar\u5305\u8fd0\u884c\u7684\u8fdb\u7a0bPID\njps -l | findstr demo-v1.0.jar\n\n# \u7ec8\u6b62jar\u5305\u8fd0\u884c\u7684\u8fdb\u7a0b\uff08\u5f3a\u5236\u7ec8\u6b62\uff09\ntaskkill \/f \/pid &#039;\u5b9e\u9645\u7684PID&#039;\n\n# \u7ec8\u6b62jar\u5305\u8fd0\u884c\u7684\u8fdb\u7a0b\uff08\u4f18\u96c5\u7ec8\u6b62\uff09\ntaskkill \/pid &#039;\u5b9e\u9645\u7684PID&#039;<\/code><\/pre>\n<div style=\"height:1.5em\"><\/div>\n<h2>5.2 \u6d4b\u8bd5\u73af\u5883\u8fd0\u884c<\/h2>\n<ol>\n<li>\u6309\u4e0b\u952e\u76d8\u7684[Win]\u952e\uff0c\u8f93\u5165\u201cWindows PowerShell\u201d\u5e76\u9009\u62e9<\/li>\n<li>\u5728\u547d\u4ee4\u63d0\u793a\u6846\u4e2d\u8f93\u5165\uff1a\n<pre><code class=\"language-shell\">cd D:\\code\\test\\demo\nmvn clean package -Ptest<\/code><\/pre>\n<p>\u770b\u89c1 <code>BUILD SUCCESS<\/code> \u5b57\u6837\uff0c\u8bf4\u660e\u6784\u5efa\u6210\u529f\u3002<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030320203.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030320203.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<\/li>\n<li>\u5148\u8fdb\u884cjava\u65b9\u5f0f\u8fd0\u884c\uff0c\u67e5\u770b\u662f\u5426\u62a5\u9519\uff1a\n<pre><code class=\"language-shell\">java -jar D:\\code\\test\\demo\\target\\demo-v1.0.jar<\/code><\/pre>\n<p>\u6211\u4eec\u770b\u5230\uff0c\u8fd0\u884c\u6210\u529f\uff0c\u7aef\u53e3\u663e\u793a8081\uff0c\u662f\u6d4b\u8bd5\u73af\u5883\u914d\u7f6e\u7684\u7aef\u53e3\u3002<br \/>\n\u4f46\u662f\u4f7f\u7528java\u8fd0\u884c\uff0c\u4e00\u65e6\u5173\u95ed\u5f53\u524d\u7a97\u53e3\uff0c\u90a3\u4e48\u7a0b\u5e8f\u5c06\u505c\u6b62\u8fd0\u884c\u3002<br \/>\n\u4e0b\u9762\u6211\u4eec\u5c06\u5728java\u8fd0\u884c\u4e0d\u62a5\u9519\u7684\u60c5\u51b5\u4e0b\u8fdb\u884c\u540e\u53f0\u8fd0\u884c\u3002<br \/>\n\u6b64\u65f6\u6211\u4eec\u5148\u6309\u4e0b <code>Ctrl + C<\/code> \u952e\u505c\u6b62\u8fd0\u884c\u3002<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030555689.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030555689.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<\/li>\n<li>\u6211\u4eec\u4f7f\u7528<code>javaw<\/code>\u547d\u4ee4\u53ef\u4ee5\u5b9e\u73b0\u540e\u53f0\u8fd0\u884c<br \/>\n\u5728\u547d\u4ee4\u7a97\u53e3\u4e2d\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c<code>javaw<\/code> \u662f\u4e0d\u4f1a\u4ea7\u751f\u7a97\u53e3\u8f93\u51fa\u7684\u3002<\/p>\n<pre><code class=\"language-shell\">javaw -jar D:\\code\\test\\demo\\target\\demo-v1.0.jar<\/code><\/pre>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030946299.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320030946299.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<\/li>\n<li>\u9a8c\u8bc1\u8fd0\u884c\u7ed3\u679c<br \/>\n\u6211\u4eec\u8be5\u5982\u4f55\u9a8c\u8bc1\u8fd0\u884c\u7ed3\u679c\u5462\uff1f<br \/>\n\u6253\u5f00\u6d4f\u89c8\u5668\uff0c\u6211\u4eec\u5c1d\u8bd5\u8bbf\u95ee\u7a0b\u5e8f\u4e2d\u7684\u63a5\u53e3\uff1a<\/p>\n<ul>\n<li><code>http:\/\/localhost:8081\/user\/getUser<\/code><\/li>\n<li><code>http:\/\/localhost:8081\/user\/hello?name=lisi<\/code><br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031741145.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031741145.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031747894.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031747894.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<div style=\"height:1.5em\"><\/div>\n<p>\u6b64\u65f6\u5df2\u751f\u6210\u65e5\u5fd7\uff1a<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031830490.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320031830490.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<p><strong>sys-error.log\u5185\u5bb9\uff1a<\/strong><\/p>\n<blockquote>\n<p>03-20 11:15:42.402 [http-nio-8081-exec-1] ERROR c.t.d.d.w.c.UserController &#8211; [getUser,39] &#8211; User(name=\u9c81\u73ed\u4e03\u53f7, address=\u738b\u8005\u5ce1\u8c37)<\/p>\n<\/blockquote>\n<p><strong>sys-info.log\u5185\u5bb9\uff1a<\/strong>\uff08\u5305\u542b\u542f\u52a8\u65e5\u5fd7\u548c\u63a5\u53e3\u8bbf\u95ee\u65e5\u5fd7\uff09<\/p>\n<blockquote>\n<p>03-20 11:15:36.016 [main] INFO  com.tqazy.demo.DemoApplication &#8211; [logStarting,55] &#8211; Starting DemoApplication using Java 1.8.0_441 on DESKTOP-GB483S6 with PID 11268 (D:\\code\\test\\demo\\target\\demo-v1.0.jar started by Admin in D:\\code\\test\\demo)<br \/>\n03-20 11:15:36.018 [main] INFO  com.tqazy.demo.DemoApplication &#8211; [logStartupProfileInfo,651] &#8211; The following 1 profile is active: &quot;test&quot;<br \/>\n03-20 11:15:36.660 [main] INFO  o.a.c.http11.Http11NioProtocol &#8211; [log,173] &#8211; Initializing ProtocolHandler [&quot;http-nio-8081&quot;]<br \/>\n03-20 11:15:36.661 [main] INFO  o.a.c.core.StandardService &#8211; [log,173] &#8211; Starting service [Tomcat]<br \/>\n03-20 11:15:36.665 [main] INFO  o.a.c.core.StandardEngine &#8211; [log,173] &#8211; Starting Servlet engine: [Apache Tomcat\/9.0.68]<br \/>\n03-20 11:15:36.752 [main] INFO  o.a.c.c.C.[.[localhost].[\/] &#8211; [log,173] &#8211; Initializing Spring embedded WebApplicationContext<br \/>\n03-20 11:15:36.937 [main] INFO  o.a.c.http11.Http11NioProtocol &#8211; [log,173] &#8211; Starting ProtocolHandler [&quot;http-nio-8081&quot;]<br \/>\n03-20 11:15:37.012 [main] INFO  com.tqazy.demo.DemoApplication &#8211; [logStarted,61] &#8211; Started DemoApplication in 1.284 seconds (JVM running for 1.548)<br \/>\n03-20 11:15:42.387 [http-nio-8081-exec-1] INFO  o.a.c.c.C.[.[localhost].[\/] &#8211; [log,173] &#8211; Initializing Spring DispatcherServlet &#8216;dispatcherServlet&#8217;<br \/>\n03-20 11:17:17.050 [http-nio-8081-exec-4] INFO  c.t.d.d.w.c.UserController &#8211; [hello,27] &#8211; hello lisi<\/p>\n<\/blockquote>\n<ol start=\"6\">\n<li>\u505c\u6b62\u670d\u52a1\uff1a\n<pre><code class=\"language-shell\">jps -l | findstr demo-v1.0.jar<\/code><\/pre>\n<p>\u67e5\u51faPID\uff1a<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320033555212.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320033555212.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><br \/>\n\u6267\u884c\u7ec8\u6b62\u8fdb\u7a0b\u64cd\u4f5c<\/p>\n<pre><code class=\"language-shell\">taskkill \/pid 11268<\/code><\/pre>\n<\/li>\n<\/ol>\n<div style=\"height:1.5em\"><\/div>\n<h2>5.3 \u751f\u4ea7\u73af\u5883\u8fd0\u884c<\/h2>\n<p>\u76f8\u5173\u6b65\u9aa4\u548c\u6d4b\u8bd5\u73af\u5883\u76f8\u540c\uff0c\u53ea\u662f\u6700\u5f00\u59cb\u7684\u6253\u5305\u547d\u4ee4\u6709\u6240\u533a\u522b\u3002<br \/>\n\u6ce8\u610f\uff1a\u5982\u679c\u4e0a\u9762\u5df2\u7ecf\u6210\u529f\u8fd0\u884c\u4e86\u4e00\u6b21jar\uff0c\u4e00\u5b9a\u8981\u505c\u6b62\u8fd0\u884c\u540e\u518d\u5c1d\u8bd5\u751f\u4ea7\u73af\u5883\u6784\u5efa\u8fd0\u884c\uff0c\u56e0\u4e3a\u6b63\u5728\u8fd0\u884c\u7684jar\u4e0d\u80fd\u88ab <code>clean<\/code> \u5220\u9664\u3002<\/p>\n<ol>\n<li>\n<p>\u5728\u547d\u4ee4\u63d0\u793a\u6846\u4e2d\u8f93\u5165\uff1a<\/p>\n<pre><code class=\"language-shell\">cd D:\\code\\test\\demo\nmvn clean package -Pprod<\/code><\/pre>\n<p>\u770b\u89c1 <code>BUILD SUCCESS<\/code> \u5b57\u6837\uff0c\u8bf4\u660e\u6784\u5efa\u6210\u529f\u3002<\/p>\n<\/li>\n<li>\n<p>\u5176\u4f59\u547d\u4ee4\u53ef\u770b\u6d4b\u8bd5\u73af\u5883\u547d\u4ee4<\/p>\n<\/li>\n<li>\n<p>\u9a8c\u8bc1\u8fd0\u884c\u7ed3\u679c<br \/>\n\u6211\u4eec\u8be5\u5982\u4f55\u9a8c\u8bc1\u8fd0\u884c\u7ed3\u679c\u5462\uff1f<br \/>\n\u6253\u5f00\u6d4f\u89c8\u5668\uff0c\u6211\u4eec\u5c1d\u8bd5\u8bbf\u95ee\u7a0b\u5e8f\u4e2d\u7684\u63a5\u53e3\uff1a<\/p>\n<ul>\n<li><code>http:\/\/localhost:8082\/user\/hello?name=zhangsan<\/code><\/li>\n<li><code>http:\/\/localhost:8082\/user\/getUser<\/code><br \/>\n\u6ce8\u610f\uff1a\u6d4b\u8bd5\u73af\u5883\u548c\u751f\u4ea7\u73af\u5883\u7684\u7aef\u53e3\u662f\u4e0d\u540c\u7684\u3002<br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034339446.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034339446.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><br \/>\n<div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034345144.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034345144.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p>\u6b64\u65f6\u5df2\u751f\u6210\u65e5\u5fd7\uff1a<\/p>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034640966.jpg'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320034640966.jpg\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<p>\u5177\u4f53\u65e5\u5fd7\u5185\u5bb9\u53c2\u8003 \u6d4b\u8bd5\u73af\u5883 \u65e5\u5fd7\u5185\u5bb9\uff0c\u9664\u4e86\u4f20\u53c2\u4e0d\u540c\uff0c\u5176\u4f59\u76f8\u540c\u3002<\/p>\n<ol start=\"6\">\n<li>\u505c\u6b62\u670d\u52a1\uff1a<br \/>\n\u53c2\u8003 \u6d4b\u8bd5\u73af\u5883 \u505c\u6b62\u670d\u52a1\u65b9\u5f0f\u3002<\/li>\n<\/ol>\n<div style=\"height:1.5em\"><\/div>\n<h2>5.4 \u4f18\u96c5\uff08\u811a\u672c\uff09\u7684\u65b9\u5f0f\u542f\u505c<\/h2>\n<p>\u75af\u72c2\u624b\u5199\u547d\u4ee4\uff0c\u8fd8\u8981\u624b\u52a8\u67e5\u627ePID\u592a\u8fc7\u9ebb\u70e6\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u811a\u672c\u4ee3\u4e3a\u6267\u884c\u3002<\/p>\n<p>\u5728\u684c\u9762\u65b0\u5efa\u4e24\u4e2a\u6587\u4ef6\u5e76\u91cd\u547d\u540d\uff08\u6587\u4ef6\u540d\u53ef\u4ee5\u81ea\u5df1\u6539\uff0c\u4f46\u662f\u540e\u7f00\u662f <code>.bat<\/code> \uff09\uff0c\u7136\u540e\u53f3\u51fb\u4f7f\u7528\u8bb0\u4e8b\u672c\u6253\u5f00\u3002<\/p>\n<ul>\n<li>build_and_run.bat<\/li>\n<li>stop_project.bat<\/li>\n<\/ul>\n<p>\u6ce8\u610f\uff1a\u5f53\u6587\u4ef6\u5185\u5bb9\u7f16\u8f91\u5b8c\u6210\u4e4b\u540e\uff0c\u4e0d\u8981\u76f4\u63a5\u4fdd\u5b58\u3002<br \/>\n\u9700\u8981\u70b9\u51fb\u5de6\u4e0a\u89d2 [\u6587\u4ef6] =&gt; [\u53e6\u5b58\u4e3a] =&gt; \u4fdd\u5b58\u7684\u5de6\u8fb9[\u7f16\u7801\uff0c\u9009\u62e9\uff1aANSI] =&gt; \u4fdd\u5b58\u3002<br \/>\n\u5426\u5219\u5728\u63a7\u5236\u53f0\u8f93\u51fa\uff0c\u4e2d\u6587\u4f1a\u4e71\u7801\u3002<\/p>\n<div style=\"height:1.5em\"><\/div>\n<h3>5.4.1 \u542f\u52a8\u811a\u672c<\/h3>\n<pre><code class=\"language-batch\">@echo off\nsetlocal enabledelayedexpansion\n\nrem \u8fdb\u5165\u9879\u76ee\u76ee\u5f55\necho \u6b63\u5728\u8fdb\u5165\u9879\u76ee\u76ee\u5f55\ncd \/d D:\\code\\test\\demo\n\nrem \u5b9a\u4e49\u8981\u67e5\u627e\u7684 JAR \u5305\u540d\u79f0\nset &quot;JAR_NAME=demo-v1.0.jar&quot;\n\nrem \u67e5\u627e\u8fdb\u7a0b ID\nfor \/f &quot;tokens=1&quot; %%i in (&#039;jps -l ^| findstr \/i &quot;%JAR_NAME%&quot;&#039;) do (\n    set &quot;PID=%%i&quot;\n)\n\nrem \u68c0\u67e5\u662f\u5426\u627e\u5230\u8fdb\u7a0b\nif defined PID (\n    echo \u9519\u8bef\uff1a%JAR_NAME% \u6b63\u5728\u8fd0\u884c\uff08PID: %PID%\uff09\uff0c\u8bf7\u5148\u505c\u6b62\u540e\u518d\u6784\u5efa\uff01\n    pause\n    exit \/b 1\n)\n\nrem \u6267\u884c Maven \u6253\u5305\u547d\u4ee4\necho \u6b63\u5728\u6267\u884c Maven \u6253\u5305\u547d\u4ee4\ncall mvn clean package -Ptest &gt;nul 2&gt;&amp;1\n\nrem \u68c0\u67e5 Maven \u6253\u5305\u662f\u5426\u6210\u529f\nif %errorlevel% neq 0 (\n    echo Maven \u6253\u5305\u5931\u8d25\uff0c\u8bf7\u68c0\u67e5\u9519\u8bef\u4fe1\u606f\n    pause\n    exit \/b 1\n)\necho Maven \u6253\u5305\u5b8c\u6210\n\nrem \u542f\u52a8 JAR \u5305\necho \u6b63\u5728\u542f\u52a8 JAR \u5305\nstart javaw -jar D:\\code\\test\\demo\\target\\demo-v1.0.jar\necho JAR \u5305\u542f\u52a8\u5b8c\u6210\n\necho \u811a\u672c\u6267\u884c\u5b8c\u6bd5\uff0c\u6309\u4efb\u610f\u952e\u8fd4\u56de...\npause &gt;nul<\/code><\/pre>\n<p>\u811a\u672c\u89e3\u6790\uff1a<\/p>\n<ul>\n<li>\u8fdb\u5165\u9879\u76ee\u5730\u5740<\/li>\n<li>\u68c0\u67e5jar\u8fd0\u884c\u60c5\u51b5\n<ul>\n<li>\u5982\u679cjar\u5728\u8fd0\u884c\uff0c\u8fd4\u56de\u9519\u8bef\u4fe1\u606f<\/li>\n<li>\u5982\u679cjar\u6ca1\u5728\u8fd0\u884c\uff0c\u7ee7\u7eed\u6267\u884c<\/li>\n<\/ul>\n<\/li>\n<li>\u4f7f\u7528maven\u5bf9\u9879\u76ee\u8fdb\u884c\u6784\u5efa<\/li>\n<li>\u4f7f\u7528javaw\u542f\u52a8jar\u5305<\/li>\n<\/ul>\n<p>\u66ff\u6362\u5185\u5bb9\uff08\u5c06\u811a\u672c\u4e2d\u7684\u4fe1\u606f\u6362\u6210\u4f60\u81ea\u5df1\u7684\uff09\uff1a<\/p>\n<ul>\n<li><code>D:\\code\\test\\demo<\/code> \uff1a\u9879\u76ee\u5730\u5740<\/li>\n<li><code>demo-v1.0.jar<\/code> \uff1ajar\u5305\u540d\u79f0<\/li>\n<li><code>-Ptest<\/code> \uff1a\u8fd0\u884c\u73af\u5883\uff0c\u6839\u636e\u4e0a\u9762pom\u4e2d\u914d\u7f6e\u7684<code>&lt;profile&gt;<\/code>\u7684id\uff0c\u6839\u636e\u9700\u8981\u6362\u6210\uff1a<code>-Pdev<\/code>\u3001<code>-Ptest<\/code>\u3001<code>-Pprod<\/code>\u3002<\/li>\n<li><code>D:\\code\\test\\demo\\target\\demo-v1.0.jar<\/code> \uff1ajar\u6240\u5728\u7684\u7edd\u5bf9\u8def\u5f84<\/li>\n<\/ul>\n<div style=\"height:1.5em\"><\/div>\n<h3>5.4.2 \u7ec8\u6b62\u811a\u672c<\/h3>\n<pre><code class=\"language-batch\">@echo off\nsetlocal enabledelayedexpansion\n\nrem \u5b9a\u4e49\u8981\u67e5\u627e\u7684 JAR \u5305\u540d\u79f0\nset &quot;JAR_NAME=demo-v1.0.jar&quot;\n\nrem \u67e5\u627e\u8fdb\u7a0b ID\nfor \/f &quot;tokens=1&quot; %%i in (&#039;jps -l ^| findstr \/i &quot;%JAR_NAME%&quot;&#039;) do (\n    set &quot;PID=%%i&quot;\n    echo \u627e\u5230\u8fdb\u7a0b PID: !PID!\n)\n\nrem \u68c0\u67e5\u662f\u5426\u627e\u5230\u8fdb\u7a0b\nif not defined PID (\n    echo \u672a\u627e\u5230 %JAR_NAME% \u7684\u8fd0\u884c\u8fdb\u7a0b\u3002\n    pause\n    exit \/b 0\n)\n\nrem \u5f3a\u5236\u7ec8\u6b62\u8fdb\u7a0b\necho \u6b63\u5728\u5f3a\u5236\u7ec8\u6b62\u8fdb\u7a0b %PID%...\ntaskkill \/f \/pid %PID%\n\nrem \u68c0\u67e5\u7ec8\u6b62\u64cd\u4f5c\u662f\u5426\u6210\u529f\nif %errorlevel% equ 0 (\n    echo \u8fdb\u7a0b %PID% \u5df2\u6210\u529f\u7ec8\u6b62\u3002\n) else (\n    echo \u7ec8\u6b62\u8fdb\u7a0b\u5931\u8d25\uff0c\u9519\u8bef\u4ee3\u7801\uff1a%errorlevel%\n)\n\npause\nendlocal<\/code><\/pre>\n<div style=\"height:1.5em\"><\/div>\n<h3>5.4.3 \u8fd0\u884c\u6548\u679c<\/h3>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061557768.png'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061557768.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061605760.png'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061605760.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061611787.png'><img class=\"lazyload lazyload-style-6\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320061611787.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" \/><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u521b\u5efa\u4e00\u4e2aSpringBoot\u9879\u76ee\u6a21\u677f\uff0c\u5305\u542b\uff1a\u591a\u73af\u5883\u914d\u7f6e\u3001logback\u65e5\u5fd7\u8f93\u51fa\u3001windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c\u505c\u6b62<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[102],"tags":[114],"class_list":["post-1685","post","type-post","status-publish","format-standard","hentry","category-spring_boot","tag-spring-boot"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.tqazy.com\/?p=1685\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2\" \/>\n<meta property=\"og:description\" content=\"\u521b\u5efa\u4e00\u4e2aSpringBoot\u9879\u76ee\u6a21\u677f\uff0c\u5305\u542b\uff1a\u591a\u73af\u5883\u914d\u7f6e\u3001logback\u65e5\u5fd7\u8f93\u51fa\u3001windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c\u505c\u6b62\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.tqazy.com\/?p=1685\" \/>\n<meta property=\"og:site_name\" content=\"\u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-20T06:16:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-20T06:32:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\" \/>\n<meta name=\"author\" content=\"\u9676\u5176\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u9676\u5176\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685\"},\"author\":{\"name\":\"\u9676\u5176\",\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e\"},\"headline\":\"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c]\",\"datePublished\":\"2025-03-20T06:16:21+00:00\",\"dateModified\":\"2025-03-20T06:32:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685\"},\"wordCount\":379,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e\"},\"image\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#primaryimage\"},\"thumbnailUrl\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\",\"keywords\":[\"Spring Boot\"],\"articleSection\":[\"Spring Boot\"],\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.tqazy.com\/?p=1685#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.tqazy.com\/?p=1685\",\"url\":\"https:\/\/www.tqazy.com\/?p=1685\",\"name\":\"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2\",\"isPartOf\":{\"@id\":\"https:\/\/www.tqazy.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#primaryimage\"},\"thumbnailUrl\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\",\"datePublished\":\"2025-03-20T06:16:21+00:00\",\"dateModified\":\"2025-03-20T06:32:31+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.tqazy.com\/?p=1685\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#primaryimage\",\"url\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\",\"contentUrl\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.tqazy.com\/?p=1685#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.tqazy.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c]\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.tqazy.com\/#website\",\"url\":\"https:\/\/www.tqazy.com\/\",\"name\":\"\u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2\",\"description\":\"\u5f53\u4e0b\uff0c\u5373\u662f\u672a\u6765\",\"publisher\":{\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e\"},\"alternateName\":\"TaoQi's Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.tqazy.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-Hans\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e\",\"name\":\"\u9676\u5176\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2024\/06\/20240604021741672.jpg\",\"contentUrl\":\"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2024\/06\/20240604021741672.jpg\",\"width\":940,\"height\":940,\"caption\":\"\u9676\u5176\"},\"logo\":{\"@id\":\"https:\/\/www.tqazy.com\/#\/schema\/person\/image\/\"},\"description\":\"\u4e00\u4e2a\u5f88\u61d2\u7684\u7a0b\u5e8f\u5458\",\"sameAs\":[\"https:\/\/www.tqazy.com\"],\"url\":\"https:\/\/www.tqazy.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.tqazy.com\/?p=1685","og_locale":"zh_CN","og_type":"article","og_title":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2","og_description":"\u521b\u5efa\u4e00\u4e2aSpringBoot\u9879\u76ee\u6a21\u677f\uff0c\u5305\u542b\uff1a\u591a\u73af\u5883\u914d\u7f6e\u3001logback\u65e5\u5fd7\u8f93\u51fa\u3001windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c\u505c\u6b62","og_url":"https:\/\/www.tqazy.com\/?p=1685","og_site_name":"\u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2","article_published_time":"2025-03-20T06:16:21+00:00","article_modified_time":"2025-03-20T06:32:31+00:00","og_image":[{"url":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg","type":"","width":"","height":""}],"author":"\u9676\u5176","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u9676\u5176","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"5 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.tqazy.com\/?p=1685#article","isPartOf":{"@id":"https:\/\/www.tqazy.com\/?p=1685"},"author":{"name":"\u9676\u5176","@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e"},"headline":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c]","datePublished":"2025-03-20T06:16:21+00:00","dateModified":"2025-03-20T06:32:31+00:00","mainEntityOfPage":{"@id":"https:\/\/www.tqazy.com\/?p=1685"},"wordCount":379,"commentCount":2,"publisher":{"@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e"},"image":{"@id":"https:\/\/www.tqazy.com\/?p=1685#primaryimage"},"thumbnailUrl":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg","keywords":["Spring Boot"],"articleSection":["Spring Boot"],"inLanguage":"zh-Hans","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.tqazy.com\/?p=1685#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.tqazy.com\/?p=1685","url":"https:\/\/www.tqazy.com\/?p=1685","name":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c] | \u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2","isPartOf":{"@id":"https:\/\/www.tqazy.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.tqazy.com\/?p=1685#primaryimage"},"image":{"@id":"https:\/\/www.tqazy.com\/?p=1685#primaryimage"},"thumbnailUrl":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg","datePublished":"2025-03-20T06:16:21+00:00","dateModified":"2025-03-20T06:32:31+00:00","breadcrumb":{"@id":"https:\/\/www.tqazy.com\/?p=1685#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.tqazy.com\/?p=1685"]}]},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.tqazy.com\/?p=1685#primaryimage","url":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg","contentUrl":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2025\/03\/20250320015406812.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.tqazy.com\/?p=1685#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.tqazy.com\/"},{"@type":"ListItem","position":2,"name":"SpringBoot\u9879\u76ee\u6a21\u677f [\u591a\u73af\u5883\u914d\u7f6e][\u65e5\u5fd7\u8f93\u51fa][windows\u7cfb\u7edf\u6784\u5efa\u6253\u5305\u8fd0\u884c]"}]},{"@type":"WebSite","@id":"https:\/\/www.tqazy.com\/#website","url":"https:\/\/www.tqazy.com\/","name":"\u9676\u5176\u7684\u4e2a\u4eba\u535a\u5ba2","description":"\u5f53\u4e0b\uff0c\u5373\u662f\u672a\u6765","publisher":{"@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e"},"alternateName":"TaoQi's Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.tqazy.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-Hans"},{"@type":["Person","Organization"],"@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/b2e89d56e70f15c261012417c5ef2c4e","name":"\u9676\u5176","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/image\/","url":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2024\/06\/20240604021741672.jpg","contentUrl":"https:\/\/oss.tqazy.com\/wordpress\/autoFile\/2024\/06\/20240604021741672.jpg","width":940,"height":940,"caption":"\u9676\u5176"},"logo":{"@id":"https:\/\/www.tqazy.com\/#\/schema\/person\/image\/"},"description":"\u4e00\u4e2a\u5f88\u61d2\u7684\u7a0b\u5e8f\u5458","sameAs":["https:\/\/www.tqazy.com"],"url":"https:\/\/www.tqazy.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/posts\/1685","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1685"}],"version-history":[{"count":18,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/posts\/1685\/revisions"}],"predecessor-version":[{"id":1718,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=\/wp\/v2\/posts\/1685\/revisions\/1718"}],"wp:attachment":[{"href":"https:\/\/www.tqazy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1685"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1685"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tqazy.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1685"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}