提交 7019a11c 编写于 作者: X xiongchun

更新文档中心和项目官网

上级 4275c1be
......@@ -3,16 +3,15 @@
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.2.0">
<title data-rh="true">找不到页面 | 盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pulanos.gitee.io/pangu-framework/404.html"><meta data-rh="true" name="docusaurus_locale" content="zh-Hans"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="zh-Hans"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" name="author" content="码农大熊"><meta data-rh="true" name="keywords" content="盘古开发框架 盘古通用权限系统 开源中后台业务脚手架 pangu-admin 分布式微服务架构 垂直单体分层架构 普蓝开源社区"><meta data-rh="true" name="baidu-site-verification" content="code-FsdXztrzOo"><meta data-rh="true" property="og:title" content="找不到页面 | 盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架"><link data-rh="true" rel="icon" href="/pangu-framework/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pulanos.gitee.io/pangu-framework/404.html"><link data-rh="true" rel="alternate" href="https://pulanos.gitee.io/pangu-framework/404.html" hreflang="zh-Hans"><link data-rh="true" rel="alternate" href="https://pulanos.gitee.io/pangu-framework/404.html" hreflang="x-default"><link rel="alternate" type="application/rss+xml" href="/pangu-framework/blog/rss.xml" title="盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架 RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/pangu-framework/blog/atom.xml" title="盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架 Atom Feed"><link rel="stylesheet" href="/pangu-framework/assets/css/styles.776ea2e7.css">
<link rel="preload" href="/pangu-framework/assets/js/runtime~main.32694686.js" as="script">
<link rel="preload" href="/pangu-framework/assets/js/main.3b4ee211.js" as="script">
<title data-rh="true">找不到页面 | 盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pangu.pulanit.com/pangu-framework/404.html"><meta data-rh="true" name="docusaurus_locale" content="zh-Hans"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="zh-Hans"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" name="author" content="码农大熊"><meta data-rh="true" name="keywords" content="盘古开发框架 盘古通用权限系统 盘古开源中后台业务脚手架 pangu-admin 分布式微服务架构 垂直单体分层架构 码农大熊"><meta data-rh="true" name="baidu-site-verification" content="code-FsdXztrzOo"><meta data-rh="true" property="og:title" content="找不到页面 | 盘古开发框架项目官网:一套轻量稳健的工业级 Web 接口服务应用和中后台业务系统开发框架"><link data-rh="true" rel="icon" href="/pangu-framework/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pangu.pulanit.com/pangu-framework/404.html"><link data-rh="true" rel="alternate" href="https://pangu.pulanit.com/pangu-framework/404.html" hreflang="zh-Hans"><link data-rh="true" rel="alternate" href="https://pangu.pulanit.com/pangu-framework/404.html" hreflang="x-default"><script src="https://hm.baidu.com/hm.js?abe6bd08ebb4621f70496f015defa76b" async></script><link rel="stylesheet" href="/pangu-framework/assets/css/styles.f1578d2e.css">
<link rel="preload" href="/pangu-framework/assets/js/runtime~main.0fa1c26d.js" as="script">
<link rel="preload" href="/pangu-framework/assets/js/main.8ea3976c.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="跳到主要内容"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">跳到主要内容</a></div><nav class="navbar navbar--fixed-top navbarHideable_m1mJ"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/pangu-framework/"><div class="navbar__logo"><img src="/pangu-framework/img/logo.svg" alt="盘古开发框架" class="themedImage_ToTc themedImage--light_HNdA"><img src="/pangu-framework/img/logo.svg" alt="盘古开发框架" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">盘古开发框架®</b></a><a class="navbar__item navbar__link" href="/pangu-framework/docs/intro">开发文档</a><a class="navbar__item navbar__link" href="/pangu-framework/faq/misc">常见问答</a><a class="navbar__item navbar__link" href="/pangu-framework/thanks">致敬</a><a class="navbar__item navbar__link" href="/pangu-framework/community">社区</a><a class="navbar__item navbar__link" href="/pangu-framework/online-demo">演示系统</a><a href="https://xiongchun.pulanit.com/blog/tags/%E7%9B%98%E5%8F%A4%E5%BC%80%E5%8F%91%E6%A1%86%E6%9E%B6" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">博客</a></div><div class="navbar__items navbar__items--right"><a href="https://gitee.com/pulanos/pangu-framework" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link header-gitee-link"></a><a href="https://github.com/xiongchun/pangu-framework" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link header-github-link"></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="切换浅色/暗黑模式(当前为浅色模式)" aria-label="切换浅色/暗黑模式(当前为浅色模式)" aria-live="polite"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="searchBox_ZlJk"><div class="navbar__search searchBarContainer_NW3z"><input placeholder="搜索" aria-label="Search" class="navbar__search-input"><div class="loadingRing_RJI3 searchBarLoadingRing_YnHq"><div></div><div></div><div></div><div></div></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><main class="container margin-vert--xl"><div class="row"><div class="col col--6 col--offset-3"><h1 class="hero__title">找不到页面</h1><p>我们找不到您要找的页面。</p><p>请联系原始链接来源网站的所有者,并告知他们链接已损坏。</p></div></div></main></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">文档</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/pangu-framework/docs/intro">用户指南</a></li><li class="footer__item"><a href="https://xiongchun.pulanit.com/blog/tags/%E7%9B%98%E5%8F%A4%E5%BC%80%E5%8F%91%E6%A1%86%E6%9E%B6" target="_blank" rel="noopener noreferrer" class="footer__link-item">博客专栏</a></li><li class="footer__item"><a class="footer__link-item" href="/pangu-framework/faq/misc">常见问答</a></li></ul></div><div class="col footer__col"><div class="footer__title">源码</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitee.com/pulanos/pangu-framework" target="_blank" rel="noopener noreferrer" class="footer__link-item">Gitee PanGu Framework<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://gitcode.net/pulanos/pangu-framework" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitCode PanGu Framework<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://github.com/xiongchun/pangu-framework" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub PanGu Framework<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">更多</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/pangu-framework/thanks">致敬</a></li><li class="footer__item"><a class="footer__link-item" href="/pangu-framework/online-demo">在线演示</a></li><li class="footer__item"><a href="https://www.apache.org/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Apache Software Foundation<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">PanGu Dev Framework is Open Source and freely available under the <a target="_blank" class="ghostwhite" href="https://www.apache.org/licenses/LICENSE-2.0">Apache v2 License.</a>
<br>Copyright © 2022 <a target="_blank" class="ghostwhite" href="https://www.pulanit.com">PuLan Open Source Community</a><br>滇ICP备 2022001611 号<br><img src="https://pangu.pulanit.com/img/dashi.gif"></div></div></div></footer></div>
<script src="/pangu-framework/assets/js/runtime~main.32694686.js"></script>
<script src="/pangu-framework/assets/js/main.3b4ee211.js"></script>
<br>Copyright © 2023 <a target="_blank" class="ghostwhite" href="https://www.pulanit.com">PuLan Open Source Community</a><br>滇ICP备 2022001611 号<br><img src="https://pangu.pulanit.com/img/dashi.gif"></div></div></div></footer></div>
<script src="/pangu-framework/assets/js/runtime~main.0fa1c26d.js"></script>
<script src="/pangu-framework/assets/js/main.8ea3976c.js"></script>
</body>
</html>
\ No newline at end of file
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[431],{2613:e=>{e.exports=JSON.parse('{"label":"\u90e8\u7f72\u8fd0\u7ef4","permalink":"/pangu-framework/docs/tags/\u90e8\u7f72\u8fd0\u7ef4","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"devops/\u90e8\u7f72\u76f8\u5173","title":"\u90e8\u7f72\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/pangu-framework/docs/deploy-guide/basic"},{"id":"devops/\u65e5\u5fd7\u76f8\u5173","title":"\u65e5\u5fd7\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/pangu-framework/docs/deploy-guide/log"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[9671],{3905:(e,t,a)=>{a.d(t,{Zo:()=>k,kt:()=>g});var r=a(7294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function p(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){n(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,r,n=function(e,t){if(null==e)return{};var a,r,n={},l=Object.keys(e);for(r=0;r<l.length;r++)a=l[r],t.indexOf(a)>=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)a=l[r],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var o=r.createContext({}),m=function(e){var t=r.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):p(p({},t),e)),a},k=function(e){var t=m(e.components);return r.createElement(o.Provider,{value:t},e.children)},u="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},N=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,o=e.parentName,k=i(e,["components","mdxType","originalType","parentName"]),u=m(a),N=n,g=u["".concat(o,".").concat(N)]||u[N]||s[N]||l;return a?r.createElement(g,p(p({ref:t},k),{},{components:a})):r.createElement(g,p({ref:t},k))}));function g(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,p=new Array(l);p[0]=N;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[u]="string"==typeof e?e:n,p[1]=i;for(var m=2;m<l;m++)p[m]=a[m];return r.createElement.apply(null,p)}return r.createElement.apply(null,a)}N.displayName="MDXCreateElement"},9881:(e,t,a)=>{a.r(t),a.d(t,{Highlight:()=>k,assets:()=>o,contentTitle:()=>p,default:()=>s,frontMatter:()=>l,metadata:()=>i,toc:()=>m});var r=a(7462),n=(a(7294),a(3905));const l={title:"\u7b80\u4ecb",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784"],sidebar_position:1,slug:"/intro"},p=void 0,i={unversionedId:"intro",id:"intro",title:"\u7b80\u4ecb",description:"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/docs/intro",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/intro.md",tags:[{label:"\u76d8\u53e4\u7b80\u4ecb",permalink:"/docs/tags/\u76d8\u53e4\u7b80\u4ecb"},{label:"\u76d8\u53e4\u67b6\u6784",permalink:"/docs/tags/\u76d8\u53e4\u67b6\u6784"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671812579,formattedLastUpdatedAt:"2022\u5e7412\u670823\u65e5",sidebarPosition:1,frontMatter:{title:"\u7b80\u4ecb",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784"],sidebar_position:1,slug:"/intro"},sidebar:"tutorialSidebar",next:{title:"\u5b89\u88c5",permalink:"/docs/install"}},o={},m=[{value:"\u8bbe\u8ba1\u539f\u5219",id:"\u8bbe\u8ba1\u539f\u5219",level:2},{value:"\u751f\u6001\u67b6\u6784\u56fe",id:"\u751f\u6001\u67b6\u6784\u56fe",level:2},{value:"\u7279\u6027\u4e00\u89c8",id:"\u7279\u6027\u4e00\u89c8",level:2},{value:"\u4e3b\u8981\u529f\u80fd",id:"\u4e3b\u8981\u529f\u80fd",level:2},{value:"\u7ec4\u4ef6\u4f9d\u8d56",id:"\u7ec4\u4ef6\u4f9d\u8d56",level:2},{value:"\u6a21\u5757\u5217\u8868",id:"\u6a21\u5757\u5217\u8868",level:2},{value:"FAQ",id:"faq",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],k=e=>{let{children:t,color:a}=e;return(0,n.kt)("span",{style:{backgroundColor:a,borderRadius:"3px",color:"#fff",padding:"0.1rem",margin:"0.2rem"}},t)},u={toc:m,Highlight:k};function s(e){let{components:t,...l}=e;return(0,n.kt)("wrapper",(0,r.Z)({},u,l,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("head",null,(0,n.kt)("title",null,"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb"),(0,n.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb"})),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"/"},(0,n.kt)("strong",{parentName:"a"},"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6"))," \u662f\u4e00\u5957\u8f7b\u91cf\u7a33\u5065\u7684\u5de5\u4e1a\u7ea7 Web \u63a5\u53e3\u670d\u52a1\u548c\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6\u3002\u539f\u751f\u652f\u6301\u5fae\u670d\u52a1\u5206\u5e03\u5f0f\u67b6\u6784\u7684\u540c\u65f6\u4e5f\u517c\u5bb9\u5355\u4f53\u5e94\u7528\u67b6\u6784\u6a21\u5f0f\u3002\u57fa\u4e8e\u5546\u4e1a\u53cb\u597d\u7684 ",(0,n.kt)("a",{parentName:"p",href:"https://www.apache.org/licenses/LICENSE-2.0"},"Apache-2.0"),"\u534f\u8bae",(0,n.kt)(k,{color:"#25c2a0",mdxType:"Highlight"},"\u514d\u8d39\u5f00\u6e90"),"\u53d1\u5e03\u3002\u6211\u4eec\u5e0c\u671b\u4e0d\u4ec5\u662f\u5f00\u6e90\u7684\u53d7\u76ca\u8005\u4e5f\u80fd\u6210\u4e3a\u5f00\u6e90\u8d21\u732e\u8005\uff0c\u4e0e\u5f00\u6e90\u793e\u533a\u4e00\u8d77",(0,n.kt)("strong",{parentName:"p"},"\u5171\u5efa\u5171\u4eab\u5f00\u6e90\u751f\u6001"),"\u3002"),(0,n.kt)("h2",{id:"\u8bbe\u8ba1\u539f\u5219"},"\u8bbe\u8ba1\u539f\u5219"),(0,n.kt)("p",null,"\u5728\u7c7b\u8bbe\u8ba1\u3001\u6a21\u5757\u7ed3\u6784\u5212\u5206\u3001\u6280\u672f\u7ec4\u4ef6\u9009\u578b\u3001\u6846\u67b6\u4f53\u7cfb\u67b6\u6784\u8bbe\u8ba1\u65f6\u4f1a\u4f18\u5148\u9075\u5faa\u7684\u4e00\u4e9b\u8bbe\u8ba1\u8303\u5f0f\u548c\u6307\u5bfc\u539f\u5219\u3002"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u6781\u7b80\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u5927\u9053\u81f3\u7b80\uff0c\u7b80\u5355\u4ee3\u8868\u597d\u7528\u3001\u7a33\u5b9a\u3001\u6613\u534f\u4f5c\u3002\u575a\u6301\u300cKeep it Simple & Stupid\u300d\u8bbe\u8ba1\u7406\u5ff5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u6700\u4f73\u5b9e\u8df5\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u901a\u8fc7\u5927\u91cf\u7684\u751f\u4ea7\u5b9e\u4f8b\u68c0\u9a8c\uff0c\u6c89\u6dc0\u590d\u7528\u6700\u4f73\u5b9e\u8df5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u65e0\u4e3a\u800c\u6cbb\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u4e0d\u6c42\u5927\u800c\u5168\uff0c\u8f7b\u91cf\u7075\u6d3b\u4fdd\u6301\u67b6\u6784\u7684\u7eaf\u6d01\u4e0e\u900f\u660e\uff0c\u575a\u6301\u300cLess is More\u300d\u8bbe\u8ba1\u7406\u5ff5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u670d\u52a1\u4f18\u5148\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u300c\u670d\u52a1\u300d\u662f\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7684\u4e00\u7b49\u516c\u6c11\uff0c\u65e8\u5728\u5fae\u670d\u52a1\u548c\u4e91\u539f\u751f\u8303\u5f0f\u57fa\u7840\u4e0a\u6784\u5efa\u300c\u4ee5\u670d\u52a1\u4e3a\u4e2d\u5fc3\u300d\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u4e00\u81f4\u6027\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u53cc\u67b6\u6784\u652f\u6301\uff0c\u65e2\u662f\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u7684\u5de5\u4e1a\u7ea7\u9996\u9009\uff0c\u540c\u65f6\u4e5f\u80fd\u517c\u5bb9\u7279\u5b9a\u9700\u6c42\u573a\u666f\u4e0b\u7684\u5355\u4f53\u5e94\u7528\u5f00\u53d1\u3002")),(0,n.kt)("h2",{id:"\u751f\u6001\u67b6\u6784\u56fe"},"\u751f\u6001\u67b6\u6784\u56fe"),(0,n.kt)("img",{width:"800",src:a(2840).Z,alt:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u751f\u6001\u67b6\u6784\u56fe"}),(0,n.kt)("h2",{id:"\u7279\u6027\u4e00\u89c8"},"\u7279\u6027\u4e00\u89c8"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u5f00\u7bb1\u5373\u7528\u3001\u8f7b\u91cf\u7075\u6d3b"),(0,n.kt)("br",{parentName:"p"}),"\n","\u5f00\u7bb1\u5373\u7528\u7684\u6280\u672f\u7ec4\u4ef6\u5e93\uff0c\u53ef\u968f\u610f\u7ec4\u5408\u3001\u81ea\u52a8\u88c5\u914d\u3002\u8f7b\u91cf\u7075\u6d3b\u7684 ",(0,n.kt)("a",{parentName:"p",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff0c\u53ef\u5b9e\u73b0\u5feb\u901f\u642d\u5efa\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\u7684\u80fd\u529b\u3002\u540c\u65f6\u652f\u6301\u5927\u5e76\u53d1\u6613\u6269\u5c55\u7684\u9ad8\u53ef\u7528\u5206\u5e03\u5f0f\u67b6\u6784\u4e5f\u80fd\u5feb\u901f\u7ec4\u88c5\u6210\u5782\u76f4\u5355\u4f53\u5206\u5c42\u67b6\u6784\u3002")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u6210\u719f\u67b6\u6784\u3001\u7a33\u5b9a\u53ef\u9760"),(0,n.kt)("br",{parentName:"p"}),"\n","\u76d8\u53e4\u6280\u672f\u6808\u878d\u5408\u4e91\u539f\u751f\u601d\u60f3\uff0c\u5728\u5fae\u670d\u52a1\u3001\u5bb9\u5668\u5316\u3001DevOps \u7b49\u65b9\u9762\u5b8c\u7f8e\u652f\u6301\u548c\u9002\u914d\u3002\u53ef\u5728\u4e91\u539f\u751f\u65f6\u4ee3\u6784\u5efa\u4ee5\u300c\u670d\u52a1\u300d\u4e3a\u4e2d\u5fc3\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\uff0c\u5e2e\u52a9\u7528\u6237\u5728\u4e91\u73af\u5883\u4e2d\u66f4\u597d\u7684\u6784\u5efa\u3001\u4ea4\u4ed8\u548c\u7ba1\u7406\u81ea\u5df1\u7684\u5fae\u670d\u52a1\u5e73\u53f0\u3002")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u5168\u6808\u767e\u642d\u9002\u914d\u5404\u7c7b\u4e1a\u52a1\u573a\u666f"),(0,n.kt)("br",{parentName:"p"}),"\n","\u805a\u7126\u9762\u5411\uff08\u79fb\u52a8\uff09\u4e92\u8054\u7f51\u7684\u7535\u5546\u3001\u91d1\u878d\u3001\u4e91\u7aef SAAS \u670d\u52a1\u7b49\u5927\u5e76\u53d1\u9ad8\u53ef\u7528\u53ef\u6269\u5c55\u7684\u4e1a\u52a1\u573a\u666f\u3002 \u540c\u65f6\u4e5f\u80fd\u6ee1\u8db3\u8bf8\u5982 ERP \u3001CRM \u7b49\u5404\u79cd\u4f01\u4e1a\u6570\u5b57\u5316\u548c\u5404\u7ea7\u7535\u5b50\u653f\u52a1\u7cfb\u7edf\u7684\u4e2d\u5c0f\u89c4\u6a21\u5e94\u7528\u9700\u6c42\u3002"))),(0,n.kt)("h2",{id:"\u4e3b\u8981\u529f\u80fd"},"\u4e3b\u8981\u529f\u80fd"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"\u81ea\u5b9a\u4e49\u7684 Spring Boot \u542f\u52a8\u5668\uff0c\u5b8c\u6210\u5404\u529f\u80fd\u7ec4\u4ef6\u7684\u81ea\u52a8\u88c5\u914d\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u81ea\u7814\u8f7b\u91cf Maven \u63d2\u4ef6\uff0c\u652f\u6301\u5404\u573a\u666f\u7684\u6a21\u7248\u4ee3\u7801\u751f\u6210\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u914d\u7f6e\u53c2\u6570\u5916\u90e8\u5316\u3001\u52a8\u6001\u5316\u548c\u4e2d\u5fc3\u5316\u7ba1\u7406\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u9762\u5411\u63a5\u53e3\u4ee3\u7406\u7684\u9ad8\u6027\u80fd RPC \u670d\u52a1\u8c03\u7528\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u670d\u52a1\u8c03\u7528\u667a\u80fd\u5bb9\u9519\u548c\u8d1f\u8f7d\u5747\u8861\u3001\u670d\u52a1\u9650\u6d41\u4e0e\u7194\u65ad\u3001\u53ef\u89c6\u5316\u7684\u670d\u52a1\u6cbb\u7406\u4e0e\u8fd0\u7ef4\u7b49\u3002\u6784\u5efa\u300c\u4ee5\u670d\u52a1\u4e3a\u4e2d\u5fc3\u300d\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\u670d\u52a1\u5e73\u53f0\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u5f3a\u5927\u7684\u6570\u636e\u8bbf\u95ee\u80fd\u529b\uff0c\u5185\u7f6e\u901a\u7528 CRUD \u63a5\u53e3\uff1b\u652f\u6301 Lambda \u8868\u8fbe\u5f0f\uff1b\u63d0\u4f9b\u903b\u8f91\u5220\u9664\u3001\u4e50\u89c2\u9501\u3001\u5206\u9875\u3001\u5b57\u6bb5\u503c\u586b\u5145\u7b49\u529f\u80fd\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u57fa\u4e8e\u5f02\u6b65\u975e\u963b\u585e\u6a21\u578b\u7684\u9ad8\u6027\u80fd HTTP \u7f51\u5173\u901a\u8fc7\u6cdb\u5316\u8c03\u7528\u540e\u7aef Dubbo \u670d\u52a1\u3002\u540c\u65f6\u7f51\u5173\u652f\u6301 HTTP \u5c42\u7684\u9274\u6743\u3001\u52a8\u6001\u9650\u6d41\u3001\u7194\u65ad\u3001\u9632\u706b\u5899\u3001\u7070\u5ea6\u53d1\u5e03\u7b49\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u9760\u8c31\u7684\u6700\u7ec8\u4e00\u81f4\u6027\u5206\u5e03\u5f0f\u4e8b\u52a1\u843d\u5730\u65b9\u6848\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6570\u636e\u6cbb\u7406\u76f8\u5173\u529f\u80fd\uff0c\u5982\uff1a\u8bfb\u5199\u5206\u79bb\u3001\u6570\u636e\u5206\u7247\u3001\u6570\u636e\u52a0\u5bc6\u7b49\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6d88\u606f\u961f\u5217\u5728\u5f02\u6b65\u901a\u4fe1\u3001\u670d\u52a1\u89e3\u8026\u3001\u6d88\u5cf0\u586b\u8c37\u3001\u7f13\u5b58\u540c\u6b65\u7b49\u5e94\u7528\u573a\u666f\u4e0b\u7684\u4f7f\u7528\u80fd\u529b\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u7684\u591a\u7ea7\u7f13\u5b58\u529f\u80fd(\u6ce8\u89e3\u5f0f\u548c\u7f16\u7a0b\u5f0f)\u3002Caffeine \u4f5c\u4e3a\u4e00\u7ea7\u672c\u5730\u7f13\u5b58\uff0cRedis \u4f5c\u4e3a\u4e8c\u7ea7\u96c6\u4e2d\u5f0f\u7f13\u5b58\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u53ef\u914d\u7f6e\u3001\u53ef\u76d1\u63a7\u7684\u5206\u5e03\u5f0f\u4efb\u52a1\u8c03\u5ea6\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u6ce8\u89e3\u58f0\u660e\u5f0f\u548c\u7f16\u7a0b\u5f0f\u5bf9\u4e1a\u52a1\u4ee3\u7801\u5728\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u52a0\u5e76\u53d1\u4e92\u65a5\u9501\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6210\u719f\u7684\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\uff08\u542b\u524d\u540e\u7aef\u548c ",(0,n.kt)("a",{parentName:"li",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff09\u3002",(0,n.kt)(k,{color:"#F56C6C",mdxType:"Highlight"},"HOT")),(0,n.kt)("li",{parentName:"ol"},"\u5e94\u7528\u65e5\u5fd7\u8f93\u51fa\u7ea7\u522b\u52a8\u6001\u5207\u6362\u3001\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ddf\u8e2a\u7b49...")),(0,n.kt)("h2",{id:"\u7ec4\u4ef6\u4f9d\u8d56"},"\u7ec4\u4ef6\u4f9d\u8d56"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u57fa\u7840\u6838\u5fc3\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Spring Boot \u203b Spring Framework"),(0,n.kt)("li",{parentName:"ul"},"MyBatis (MyBatis Plus)"),(0,n.kt)("li",{parentName:"ul"},"Apache Dubbo"),(0,n.kt)("li",{parentName:"ul"},"Aliware Nacos"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u6269\u5c55\u589e\u5f3a\u578b\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Apache ShardingSphere"),(0,n.kt)("li",{parentName:"ul"},"Aliware Seata"),(0,n.kt)("li",{parentName:"ul"},"Aliware Sentinel"),(0,n.kt)("li",{parentName:"ul"},"Layering Cache"),(0,n.kt)("li",{parentName:"ul"},"Lock4J"),(0,n.kt)("li",{parentName:"ul"},"TLog"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u8f85\u52a9\u5de5\u5177\u7c7b\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Lombok"),(0,n.kt)("li",{parentName:"ul"},"Apache Commons"),(0,n.kt)("li",{parentName:"ul"},"Google Guava"),(0,n.kt)("li",{parentName:"ul"},"Hutool"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u53ef\u9009\u7ec4\u4ef6")," "),(0,n.kt)("blockquote",{parentName:"li"},(0,n.kt)("p",{parentName:"blockquote"},"\u53ef\u9009\u7ec4\u4ef6\u6307\u7531\u6211\u4eec\u4f18\u9009\u7684\u505a\u8fc7\u9002\u914d\u6216\u63d0\u4f9b\u96c6\u6210\u65b9\u6848\uff0c\u4f46\u4e0d\u4f5c\u4e3a\u76d8\u53e4\u6846\u67b6\u7f3a\u7701\u6216\u6807\u914d\u7684\u7ec4\u4ef6\u3002")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Apache ShenYu"),(0,n.kt)("li",{parentName:"ul"},"XXL Job")))),(0,n.kt)("h2",{id:"\u6a21\u5757\u5217\u8868"},"\u6a21\u5757\u5217\u8868"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-parent"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u8d44\u6e90\u4f9d\u8d56\u58f0\u660e\u7ba1\u7406\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-common"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u516c\u5171\u57fa\u7840\u7c7b\u5e93"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u542f\u52a8\u3001\u4e2d\u5fc3\u5316\u914d\u7f6e\u7b49\u57fa\u7840\u80fd\u529b\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-dubbo-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4 Dubbo \u670d\u52a1\u5f00\u53d1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-jdbc-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6570\u636e\u5e93\u6301\u4e45\u5316\u64cd\u4f5c\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-cache-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u7f13\u5b58\u5f00\u53d1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-web-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4 Web \u5e94\u7528\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-rabbitmq-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6d88\u606f\u961f\u5217\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-seata-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u5206\u5e03\u5f0f\u4e8b\u52a1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-data-governance-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6570\u636e\u6cbb\u7406\uff08\u8bfb\u5199\u5206\u79bb\u3001\u6570\u636e\u5206\u7247\u7b49\uff09\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-generator-maven-plugin"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u4ee3\u7801\u751f\u6210\u5668Maven\u63d2\u4ef6"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-admin")," ",(0,n.kt)(k,{color:"#F56C6C",mdxType:"Highlight"},"HOT"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\uff08\u542b\u524d\u540e\u7aef\u548c ",(0,n.kt)("a",{parentName:"li",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff09"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-website"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u9879\u76ee\u5b98\u7f51\u548c\u6587\u6863"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-examples"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6846\u67b6\u6a21\u7248\u5316\u53c2\u8003\u8303\u4f8b\u96c6")),(0,n.kt)("h2",{id:"faq"},"FAQ"),(0,n.kt)("p",null,"\u4f60\u6700\u60f3\u4e86\u89e3\u7684\u5e38\u89c1\u95ee\u7b54\u53ef\u80fd\u90fd\u5728\u8fd9\u91cc\uff1a",(0,n.kt)("a",{parentName:"p",href:"/faq/misc"},"\ud83d\udd1c \u5e38\u89c1\u95ee\u7b54 FAQ"),"\u3002"),(0,n.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,n.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,n.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}s.isMDXComponent=!0},2840:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/34-pangu-framework-2719538d66a68bb25352ea0714279c3d.png"}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[9671],{3905:(e,t,a)=>{a.d(t,{Zo:()=>k,kt:()=>g});var r=a(7294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function p(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){n(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,r,n=function(e,t){if(null==e)return{};var a,r,n={},l=Object.keys(e);for(r=0;r<l.length;r++)a=l[r],t.indexOf(a)>=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)a=l[r],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var o=r.createContext({}),m=function(e){var t=r.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):p(p({},t),e)),a},k=function(e){var t=m(e.components);return r.createElement(o.Provider,{value:t},e.children)},u="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},N=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,o=e.parentName,k=i(e,["components","mdxType","originalType","parentName"]),u=m(a),N=n,g=u["".concat(o,".").concat(N)]||u[N]||s[N]||l;return a?r.createElement(g,p(p({ref:t},k),{},{components:a})):r.createElement(g,p({ref:t},k))}));function g(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,p=new Array(l);p[0]=N;var i={};for(var o in t)hasOwnProperty.call(t,o)&&(i[o]=t[o]);i.originalType=e,i[u]="string"==typeof e?e:n,p[1]=i;for(var m=2;m<l;m++)p[m]=a[m];return r.createElement.apply(null,p)}return r.createElement.apply(null,a)}N.displayName="MDXCreateElement"},9881:(e,t,a)=>{a.r(t),a.d(t,{Highlight:()=>k,assets:()=>o,contentTitle:()=>p,default:()=>s,frontMatter:()=>l,metadata:()=>i,toc:()=>m});var r=a(7462),n=(a(7294),a(3905));const l={title:"\u7b80\u4ecb",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784"],sidebar_position:1,slug:"/intro"},p=void 0,i={unversionedId:"intro",id:"intro",title:"\u7b80\u4ecb",description:"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/pangu-framework/docs/intro",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/intro.md",tags:[{label:"\u76d8\u53e4\u7b80\u4ecb",permalink:"/pangu-framework/docs/tags/\u76d8\u53e4\u7b80\u4ecb"},{label:"\u76d8\u53e4\u67b6\u6784",permalink:"/pangu-framework/docs/tags/\u76d8\u53e4\u67b6\u6784"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671812579,formattedLastUpdatedAt:"2022\u5e7412\u670823\u65e5",sidebarPosition:1,frontMatter:{title:"\u7b80\u4ecb",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784"],sidebar_position:1,slug:"/intro"},sidebar:"tutorialSidebar",next:{title:"\u5b89\u88c5",permalink:"/pangu-framework/docs/install"}},o={},m=[{value:"\u8bbe\u8ba1\u539f\u5219",id:"\u8bbe\u8ba1\u539f\u5219",level:2},{value:"\u751f\u6001\u67b6\u6784\u56fe",id:"\u751f\u6001\u67b6\u6784\u56fe",level:2},{value:"\u7279\u6027\u4e00\u89c8",id:"\u7279\u6027\u4e00\u89c8",level:2},{value:"\u4e3b\u8981\u529f\u80fd",id:"\u4e3b\u8981\u529f\u80fd",level:2},{value:"\u7ec4\u4ef6\u4f9d\u8d56",id:"\u7ec4\u4ef6\u4f9d\u8d56",level:2},{value:"\u6a21\u5757\u5217\u8868",id:"\u6a21\u5757\u5217\u8868",level:2},{value:"FAQ",id:"faq",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],k=e=>{let{children:t,color:a}=e;return(0,n.kt)("span",{style:{backgroundColor:a,borderRadius:"3px",color:"#fff",padding:"0.1rem",margin:"0.2rem"}},t)},u={toc:m,Highlight:k};function s(e){let{components:t,...l}=e;return(0,n.kt)("wrapper",(0,r.Z)({},u,l,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("head",null,(0,n.kt)("title",null,"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb"),(0,n.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb"})),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"/"},(0,n.kt)("strong",{parentName:"a"},"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6"))," \u662f\u4e00\u5957\u8f7b\u91cf\u7a33\u5065\u7684\u5de5\u4e1a\u7ea7 Web \u63a5\u53e3\u670d\u52a1\u548c\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6\u3002\u539f\u751f\u652f\u6301\u5fae\u670d\u52a1\u5206\u5e03\u5f0f\u67b6\u6784\u7684\u540c\u65f6\u4e5f\u517c\u5bb9\u5355\u4f53\u5e94\u7528\u67b6\u6784\u6a21\u5f0f\u3002\u57fa\u4e8e\u5546\u4e1a\u53cb\u597d\u7684 ",(0,n.kt)("a",{parentName:"p",href:"https://www.apache.org/licenses/LICENSE-2.0"},"Apache-2.0"),"\u534f\u8bae",(0,n.kt)(k,{color:"#25c2a0",mdxType:"Highlight"},"\u514d\u8d39\u5f00\u6e90"),"\u53d1\u5e03\u3002\u6211\u4eec\u5e0c\u671b\u4e0d\u4ec5\u662f\u5f00\u6e90\u7684\u53d7\u76ca\u8005\u4e5f\u80fd\u6210\u4e3a\u5f00\u6e90\u8d21\u732e\u8005\uff0c\u4e0e\u5f00\u6e90\u793e\u533a\u4e00\u8d77",(0,n.kt)("strong",{parentName:"p"},"\u5171\u5efa\u5171\u4eab\u5f00\u6e90\u751f\u6001"),"\u3002"),(0,n.kt)("h2",{id:"\u8bbe\u8ba1\u539f\u5219"},"\u8bbe\u8ba1\u539f\u5219"),(0,n.kt)("p",null,"\u5728\u7c7b\u8bbe\u8ba1\u3001\u6a21\u5757\u7ed3\u6784\u5212\u5206\u3001\u6280\u672f\u7ec4\u4ef6\u9009\u578b\u3001\u6846\u67b6\u4f53\u7cfb\u67b6\u6784\u8bbe\u8ba1\u65f6\u4f1a\u4f18\u5148\u9075\u5faa\u7684\u4e00\u4e9b\u8bbe\u8ba1\u8303\u5f0f\u548c\u6307\u5bfc\u539f\u5219\u3002"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u6781\u7b80\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u5927\u9053\u81f3\u7b80\uff0c\u7b80\u5355\u4ee3\u8868\u597d\u7528\u3001\u7a33\u5b9a\u3001\u6613\u534f\u4f5c\u3002\u575a\u6301\u300cKeep it Simple & Stupid\u300d\u8bbe\u8ba1\u7406\u5ff5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u6700\u4f73\u5b9e\u8df5\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u901a\u8fc7\u5927\u91cf\u7684\u751f\u4ea7\u5b9e\u4f8b\u68c0\u9a8c\uff0c\u6c89\u6dc0\u590d\u7528\u6700\u4f73\u5b9e\u8df5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u65e0\u4e3a\u800c\u6cbb\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u4e0d\u6c42\u5927\u800c\u5168\uff0c\u8f7b\u91cf\u7075\u6d3b\u4fdd\u6301\u67b6\u6784\u7684\u7eaf\u6d01\u4e0e\u900f\u660e\uff0c\u575a\u6301\u300cLess is More\u300d\u8bbe\u8ba1\u7406\u5ff5\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u670d\u52a1\u4f18\u5148\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u300c\u670d\u52a1\u300d\u662f\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7684\u4e00\u7b49\u516c\u6c11\uff0c\u65e8\u5728\u5fae\u670d\u52a1\u548c\u4e91\u539f\u751f\u8303\u5f0f\u57fa\u7840\u4e0a\u6784\u5efa\u300c\u4ee5\u670d\u52a1\u4e3a\u4e2d\u5fc3\u300d\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\u3002"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"\u4e00\u81f4\u6027\u539f\u5219"),(0,n.kt)("br",{parentName:"li"}),"\u53cc\u67b6\u6784\u652f\u6301\uff0c\u65e2\u662f\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u7684\u5de5\u4e1a\u7ea7\u9996\u9009\uff0c\u540c\u65f6\u4e5f\u80fd\u517c\u5bb9\u7279\u5b9a\u9700\u6c42\u573a\u666f\u4e0b\u7684\u5355\u4f53\u5e94\u7528\u5f00\u53d1\u3002")),(0,n.kt)("h2",{id:"\u751f\u6001\u67b6\u6784\u56fe"},"\u751f\u6001\u67b6\u6784\u56fe"),(0,n.kt)("img",{width:"800",src:a(2840).Z,alt:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u751f\u6001\u67b6\u6784\u56fe"}),(0,n.kt)("h2",{id:"\u7279\u6027\u4e00\u89c8"},"\u7279\u6027\u4e00\u89c8"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u5f00\u7bb1\u5373\u7528\u3001\u8f7b\u91cf\u7075\u6d3b"),(0,n.kt)("br",{parentName:"p"}),"\n","\u5f00\u7bb1\u5373\u7528\u7684\u6280\u672f\u7ec4\u4ef6\u5e93\uff0c\u53ef\u968f\u610f\u7ec4\u5408\u3001\u81ea\u52a8\u88c5\u914d\u3002\u8f7b\u91cf\u7075\u6d3b\u7684 ",(0,n.kt)("a",{parentName:"p",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff0c\u53ef\u5b9e\u73b0\u5feb\u901f\u642d\u5efa\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\u7684\u80fd\u529b\u3002\u540c\u65f6\u652f\u6301\u5927\u5e76\u53d1\u6613\u6269\u5c55\u7684\u9ad8\u53ef\u7528\u5206\u5e03\u5f0f\u67b6\u6784\u4e5f\u80fd\u5feb\u901f\u7ec4\u88c5\u6210\u5782\u76f4\u5355\u4f53\u5206\u5c42\u67b6\u6784\u3002")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u6210\u719f\u67b6\u6784\u3001\u7a33\u5b9a\u53ef\u9760"),(0,n.kt)("br",{parentName:"p"}),"\n","\u76d8\u53e4\u6280\u672f\u6808\u878d\u5408\u4e91\u539f\u751f\u601d\u60f3\uff0c\u5728\u5fae\u670d\u52a1\u3001\u5bb9\u5668\u5316\u3001DevOps \u7b49\u65b9\u9762\u5b8c\u7f8e\u652f\u6301\u548c\u9002\u914d\u3002\u53ef\u5728\u4e91\u539f\u751f\u65f6\u4ee3\u6784\u5efa\u4ee5\u300c\u670d\u52a1\u300d\u4e3a\u4e2d\u5fc3\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\uff0c\u5e2e\u52a9\u7528\u6237\u5728\u4e91\u73af\u5883\u4e2d\u66f4\u597d\u7684\u6784\u5efa\u3001\u4ea4\u4ed8\u548c\u7ba1\u7406\u81ea\u5df1\u7684\u5fae\u670d\u52a1\u5e73\u53f0\u3002")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u5168\u6808\u767e\u642d\u9002\u914d\u5404\u7c7b\u4e1a\u52a1\u573a\u666f"),(0,n.kt)("br",{parentName:"p"}),"\n","\u805a\u7126\u9762\u5411\uff08\u79fb\u52a8\uff09\u4e92\u8054\u7f51\u7684\u7535\u5546\u3001\u91d1\u878d\u3001\u4e91\u7aef SAAS \u670d\u52a1\u7b49\u5927\u5e76\u53d1\u9ad8\u53ef\u7528\u53ef\u6269\u5c55\u7684\u4e1a\u52a1\u573a\u666f\u3002 \u540c\u65f6\u4e5f\u80fd\u6ee1\u8db3\u8bf8\u5982 ERP \u3001CRM \u7b49\u5404\u79cd\u4f01\u4e1a\u6570\u5b57\u5316\u548c\u5404\u7ea7\u7535\u5b50\u653f\u52a1\u7cfb\u7edf\u7684\u4e2d\u5c0f\u89c4\u6a21\u5e94\u7528\u9700\u6c42\u3002"))),(0,n.kt)("h2",{id:"\u4e3b\u8981\u529f\u80fd"},"\u4e3b\u8981\u529f\u80fd"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"\u81ea\u5b9a\u4e49\u7684 Spring Boot \u542f\u52a8\u5668\uff0c\u5b8c\u6210\u5404\u529f\u80fd\u7ec4\u4ef6\u7684\u81ea\u52a8\u88c5\u914d\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u81ea\u7814\u8f7b\u91cf Maven \u63d2\u4ef6\uff0c\u652f\u6301\u5404\u573a\u666f\u7684\u6a21\u7248\u4ee3\u7801\u751f\u6210\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u914d\u7f6e\u53c2\u6570\u5916\u90e8\u5316\u3001\u52a8\u6001\u5316\u548c\u4e2d\u5fc3\u5316\u7ba1\u7406\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u9762\u5411\u63a5\u53e3\u4ee3\u7406\u7684\u9ad8\u6027\u80fd RPC \u670d\u52a1\u8c03\u7528\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u670d\u52a1\u8c03\u7528\u667a\u80fd\u5bb9\u9519\u548c\u8d1f\u8f7d\u5747\u8861\u3001\u670d\u52a1\u9650\u6d41\u4e0e\u7194\u65ad\u3001\u53ef\u89c6\u5316\u7684\u670d\u52a1\u6cbb\u7406\u4e0e\u8fd0\u7ef4\u7b49\u3002\u6784\u5efa\u300c\u4ee5\u670d\u52a1\u4e3a\u4e2d\u5fc3\u300d\u7684\u73b0\u4ee3\u5e94\u7528\u67b6\u6784\u670d\u52a1\u5e73\u53f0\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u5f3a\u5927\u7684\u6570\u636e\u8bbf\u95ee\u80fd\u529b\uff0c\u5185\u7f6e\u901a\u7528 CRUD \u63a5\u53e3\uff1b\u652f\u6301 Lambda \u8868\u8fbe\u5f0f\uff1b\u63d0\u4f9b\u903b\u8f91\u5220\u9664\u3001\u4e50\u89c2\u9501\u3001\u5206\u9875\u3001\u5b57\u6bb5\u503c\u586b\u5145\u7b49\u529f\u80fd\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u57fa\u4e8e\u5f02\u6b65\u975e\u963b\u585e\u6a21\u578b\u7684\u9ad8\u6027\u80fd HTTP \u7f51\u5173\u901a\u8fc7\u6cdb\u5316\u8c03\u7528\u540e\u7aef Dubbo \u670d\u52a1\u3002\u540c\u65f6\u7f51\u5173\u652f\u6301 HTTP \u5c42\u7684\u9274\u6743\u3001\u52a8\u6001\u9650\u6d41\u3001\u7194\u65ad\u3001\u9632\u706b\u5899\u3001\u7070\u5ea6\u53d1\u5e03\u7b49\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u9760\u8c31\u7684\u6700\u7ec8\u4e00\u81f4\u6027\u5206\u5e03\u5f0f\u4e8b\u52a1\u843d\u5730\u65b9\u6848\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6570\u636e\u6cbb\u7406\u76f8\u5173\u529f\u80fd\uff0c\u5982\uff1a\u8bfb\u5199\u5206\u79bb\u3001\u6570\u636e\u5206\u7247\u3001\u6570\u636e\u52a0\u5bc6\u7b49\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6d88\u606f\u961f\u5217\u5728\u5f02\u6b65\u901a\u4fe1\u3001\u670d\u52a1\u89e3\u8026\u3001\u6d88\u5cf0\u586b\u8c37\u3001\u7f13\u5b58\u540c\u6b65\u7b49\u5e94\u7528\u573a\u666f\u4e0b\u7684\u4f7f\u7528\u80fd\u529b\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u7684\u591a\u7ea7\u7f13\u5b58\u529f\u80fd(\u6ce8\u89e3\u5f0f\u548c\u7f16\u7a0b\u5f0f)\u3002Caffeine \u4f5c\u4e3a\u4e00\u7ea7\u672c\u5730\u7f13\u5b58\uff0cRedis \u4f5c\u4e3a\u4e8c\u7ea7\u96c6\u4e2d\u5f0f\u7f13\u5b58\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u53ef\u914d\u7f6e\u3001\u53ef\u76d1\u63a7\u7684\u5206\u5e03\u5f0f\u4efb\u52a1\u8c03\u5ea6\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u652f\u6301\u6ce8\u89e3\u58f0\u660e\u5f0f\u548c\u7f16\u7a0b\u5f0f\u5bf9\u4e1a\u52a1\u4ee3\u7801\u5728\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u52a0\u5e76\u53d1\u4e92\u65a5\u9501\u3002"),(0,n.kt)("li",{parentName:"ol"},"\u63d0\u4f9b\u6210\u719f\u7684\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\uff08\u542b\u524d\u540e\u7aef\u548c ",(0,n.kt)("a",{parentName:"li",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff09\u3002",(0,n.kt)(k,{color:"#F56C6C",mdxType:"Highlight"},"HOT")),(0,n.kt)("li",{parentName:"ol"},"\u5e94\u7528\u65e5\u5fd7\u8f93\u51fa\u7ea7\u522b\u52a8\u6001\u5207\u6362\u3001\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ddf\u8e2a\u7b49...")),(0,n.kt)("h2",{id:"\u7ec4\u4ef6\u4f9d\u8d56"},"\u7ec4\u4ef6\u4f9d\u8d56"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u57fa\u7840\u6838\u5fc3\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Spring Boot \u203b Spring Framework"),(0,n.kt)("li",{parentName:"ul"},"MyBatis (MyBatis Plus)"),(0,n.kt)("li",{parentName:"ul"},"Apache Dubbo"),(0,n.kt)("li",{parentName:"ul"},"Aliware Nacos"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u6269\u5c55\u589e\u5f3a\u578b\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Apache ShardingSphere"),(0,n.kt)("li",{parentName:"ul"},"Aliware Seata"),(0,n.kt)("li",{parentName:"ul"},"Aliware Sentinel"),(0,n.kt)("li",{parentName:"ul"},"Layering Cache"),(0,n.kt)("li",{parentName:"ul"},"Lock4J"),(0,n.kt)("li",{parentName:"ul"},"TLog"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u8f85\u52a9\u5de5\u5177\u7c7b\u7ec4\u4ef6")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Lombok"),(0,n.kt)("li",{parentName:"ul"},"Apache Commons"),(0,n.kt)("li",{parentName:"ul"},"Google Guava"),(0,n.kt)("li",{parentName:"ul"},"Hutool"))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"\u53ef\u9009\u7ec4\u4ef6")," "),(0,n.kt)("blockquote",{parentName:"li"},(0,n.kt)("p",{parentName:"blockquote"},"\u53ef\u9009\u7ec4\u4ef6\u6307\u7531\u6211\u4eec\u4f18\u9009\u7684\u505a\u8fc7\u9002\u914d\u6216\u63d0\u4f9b\u96c6\u6210\u65b9\u6848\uff0c\u4f46\u4e0d\u4f5c\u4e3a\u76d8\u53e4\u6846\u67b6\u7f3a\u7701\u6216\u6807\u914d\u7684\u7ec4\u4ef6\u3002")),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Apache ShenYu"),(0,n.kt)("li",{parentName:"ul"},"XXL Job")))),(0,n.kt)("h2",{id:"\u6a21\u5757\u5217\u8868"},"\u6a21\u5757\u5217\u8868"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-parent"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u8d44\u6e90\u4f9d\u8d56\u58f0\u660e\u7ba1\u7406\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-common"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u516c\u5171\u57fa\u7840\u7c7b\u5e93"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u542f\u52a8\u3001\u4e2d\u5fc3\u5316\u914d\u7f6e\u7b49\u57fa\u7840\u80fd\u529b\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-dubbo-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4 Dubbo \u670d\u52a1\u5f00\u53d1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-jdbc-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6570\u636e\u5e93\u6301\u4e45\u5316\u64cd\u4f5c\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-cache-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u7f13\u5b58\u5f00\u53d1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-web-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4 Web \u5e94\u7528\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-rabbitmq-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6d88\u606f\u961f\u5217\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-seata-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u5206\u5e03\u5f0f\u4e8b\u52a1\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-data-governance-spring-boot-starter"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6570\u636e\u6cbb\u7406\uff08\u8bfb\u5199\u5206\u79bb\u3001\u6570\u636e\u5206\u7247\u7b49\uff09\u81ea\u52a8\u88c5\u914d\u6a21\u5757"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-generator-maven-plugin"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u4ee3\u7801\u751f\u6210\u5668Maven\u63d2\u4ef6"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-admin")," ",(0,n.kt)(k,{color:"#F56C6C",mdxType:"Highlight"},"HOT"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf\u4e8c\u6b21\u5f00\u53d1\u811a\u624b\u67b6\uff08\u542b\u524d\u540e\u7aef\u548c ",(0,n.kt)("a",{parentName:"li",href:"/online-demo"},"\u6743\u9650\u7cfb\u7edf\u53c2\u8003\u5b9e\u73b0")," \uff09"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-website"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u9879\u76ee\u5b98\u7f51\u548c\u6587\u6863"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"pangu-examples"),(0,n.kt)("br",{parentName:"li"}),"\u76d8\u53e4\u6846\u67b6\u6a21\u7248\u5316\u53c2\u8003\u8303\u4f8b\u96c6")),(0,n.kt)("h2",{id:"faq"},"FAQ"),(0,n.kt)("p",null,"\u4f60\u6700\u60f3\u4e86\u89e3\u7684\u5e38\u89c1\u95ee\u7b54\u53ef\u80fd\u90fd\u5728\u8fd9\u91cc\uff1a",(0,n.kt)("a",{parentName:"p",href:"/faq/misc"},"\ud83d\udd1c \u5e38\u89c1\u95ee\u7b54 FAQ"),"\u3002"),(0,n.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,n.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,n.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}s.isMDXComponent=!0},2840:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/34-pangu-framework-2719538d66a68bb25352ea0714279c3d.png"}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1159],{3217:e=>{e.exports=JSON.parse('{"label":"\u670d\u52a1\u6ce8\u518c","permalink":"/pangu-framework/docs/tags/\u670d\u52a1\u6ce8\u518c","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","title":"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1 | \u670d\u52a1\u63d0\u4f9b\u8005 | \u670d\u52a1\u6d88\u8d39\u8005","permalink":"/pangu-framework/docs/quick-start/how-to-make-microservice-architecture-app"},{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/pangu-framework/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1898],{5261:e=>{e.exports=JSON.parse('{"label":"\u76d8\u53e4\u7b80\u4ecb","permalink":"/docs/tags/\u76d8\u53e4\u7b80\u4ecb","allTagsPath":"/docs/tags","count":9,"items":[{"id":"\u5b89\u88c5","title":"\u5b89\u88c5","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5b89\u88c5 | \u4f9d\u8d56\u7ba1\u7406\u6a21\u5757 | \u57fa\u7840\u6a21\u5757 | Dubbo\u6a21\u5757 | JDBC\u6a21\u5757 | \u5206\u5e03\u5f0f\u4e8b\u52a1\u7ba1\u7406\u6a21\u5757 | \u6570\u636e\u6cbb\u7406\u6a21\u5757 | \u7f13\u5b58\u6a21\u5757 | \u6d88\u606f\u961f\u5217\u6a21\u5757 | \u7f51\u5173\u6a21\u5757 | Web\u6a21\u5757 | \u4ee3\u7801\u751f\u6210\u63d2\u4ef6","permalink":"/docs/install"},{"id":"devops/\u90e8\u7f72\u76f8\u5173","title":"\u90e8\u7f72\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/docs/deploy-guide/basic"},{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/docs/code-generator"},{"id":"advanced-guide/\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","title":"\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u8303\u4f8b\u6a21\u7248\u5de5\u7a0b | \u83b7\u53d6\u8303\u4f8b\u4ee3\u7801","permalink":"/docs/examples-list"},{"id":"intro","title":"\u7b80\u4ecb","description":"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb","permalink":"/docs/intro"},{"id":"quick-start/\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","title":"\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5fae\u670d\u52a1\u5206\u5e03\u5f0f\u67b6\u6784 | \u5355\u4f53\u5206\u5c42\u67b6\u6784 | \u76d8\u53e4\u5f00\u53d1\u67b6\u6784\u9009\u578b\u5bf9\u6bd4","permalink":"/docs/quick-start/how-to-make-architecture"},{"id":"advanced-guide/\u914d\u7f6e\u4e2d\u5fc3","title":"\u914d\u7f6e\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | Nacos | \u914d\u7f6e\u52a8\u6001\u5316 | \u914d\u7f6e\u4e2d\u5fc3\u5316 | \u914d\u7f6e\u5916\u90e8\u5316","permalink":"/docs/advanced-guide/nacos-config-center"},{"id":"devops/\u65e5\u5fd7\u76f8\u5173","title":"\u65e5\u5fd7\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/docs/deploy-guide/log"},{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[384],{4009:e=>{e.exports=JSON.parse('{"label":"\u6570\u636e\u5206\u7247","permalink":"/docs/tags/\u6570\u636e\u5206\u7247","allTagsPath":"/docs/tags","count":2,"items":[{"id":"advanced-guide/\u6570\u636e\u6cbb\u7406\u4e4b\u8bfb\u5199\u5206\u79bb","title":"\u6570\u636e\u6cbb\u7406\u4e4b\u8bfb\u5199\u5206\u79bb","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u8bfb\u5199\u5206\u79bb | \u6570\u636e\u5206\u7247 | \u6570\u636e\u52a0\u5bc6 | \u6570\u636e\u6cbb\u7406 | ShardingSphere-JDBC","permalink":"/docs/advanced-guide/readwrite-splitting"},{"id":"advanced-guide/\u6570\u636e\u6cbb\u7406\u4e4b\u6570\u636e\u5206\u7247","title":"\u6570\u636e\u6cbb\u7406\u4e4b\u6570\u636e\u5206\u7247","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6cbb\u7406 | \u6570\u636e\u5206\u7247 | \u6c34\u5e73\u5206\u7247 | \u5782\u76f4\u5206\u7247 | SQL\u8def\u7531 | SQL\u6539\u5199","permalink":"/docs/advanced-guide/data-sharding"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[7918],{717:(e,t,a)=>{a.r(t),a.d(t,{default:()=>Ee});var n=a(7294),l=a(1944),r=a(902);const s=n.createContext(null);function o(e){let{children:t,content:a}=e;const l=function(e){return(0,n.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(a);return n.createElement(s.Provider,{value:l},t)}function c(){const e=(0,n.useContext)(s);if(null===e)throw new r.i6("DocProvider");return e}function i(){const{metadata:e,frontMatter:t,assets:a}=c();return n.createElement(l.d,{title:e.title,description:e.description,keywords:t.keywords,image:a.image??t.image})}var d=a(6010),m=a(7524),u=a(7462),b=a(5999),p=a(9960);function h(e){const{permalink:t,title:a,subLabel:l,isNext:r}=e;return n.createElement(p.Z,{className:(0,d.Z)("pagination-nav__link",r?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t},l&&n.createElement("div",{className:"pagination-nav__sublabel"},l),n.createElement("div",{className:"pagination-nav__label"},a))}function v(e){const{previous:t,next:a}=e;return n.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,b.I)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages navigation",description:"The ARIA label for the docs pagination"})},t&&n.createElement(h,(0,u.Z)({},t,{subLabel:n.createElement(b.Z,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc"},"Previous")})),a&&n.createElement(h,(0,u.Z)({},a,{subLabel:n.createElement(b.Z,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc"},"Next"),isNext:!0})))}function E(){const{metadata:e}=c();return n.createElement(v,{previous:e.previous,next:e.next})}var g=a(2263),f=a(143),_=a(5281),Z=a(373),N=a(4477);const k={unreleased:function(e){let{siteTitle:t,versionMetadata:a}=e;return n.createElement(b.Z,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:n.createElement("b",null,a.label)}},"This is unreleased documentation for {siteTitle} {versionLabel} version.")},unmaintained:function(e){let{siteTitle:t,versionMetadata:a}=e;return n.createElement(b.Z,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:n.createElement("b",null,a.label)}},"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.")}};function L(e){const t=k[e.versionMetadata.banner];return n.createElement(t,e)}function T(e){let{versionLabel:t,to:a,onClick:l}=e;return n.createElement(b.Z,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:n.createElement("b",null,n.createElement(p.Z,{to:a,onClick:l},n.createElement(b.Z,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label"},"latest version")))}},"For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).")}function U(e){let{className:t,versionMetadata:a}=e;const{siteConfig:{title:l}}=(0,g.Z)(),{pluginId:r}=(0,f.gA)({failfast:!0}),{savePreferredVersionName:s}=(0,Z.J)(r),{latestDocSuggestion:o,latestVersionSuggestion:c}=(0,f.Jo)(r),i=o??(m=c).docs.find((e=>e.id===m.mainDocId));var m;return n.createElement("div",{className:(0,d.Z)(t,_.k.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert"},n.createElement("div",null,n.createElement(L,{siteTitle:l,versionMetadata:a})),n.createElement("div",{className:"margin-top--md"},n.createElement(T,{versionLabel:c.label,to:i.path,onClick:()=>s(c.name)})))}function w(e){let{className:t}=e;const a=(0,N.E)();return a.banner?n.createElement(U,{className:t,versionMetadata:a}):null}function C(e){let{className:t}=e;const a=(0,N.E)();return a.badge?n.createElement("span",{className:(0,d.Z)(t,_.k.docs.docVersionBadge,"badge badge--secondary")},n.createElement(b.Z,{id:"theme.docs.versionBadge.label",values:{versionLabel:a.label}},"Version: {versionLabel}")):null}function x(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:a}=e;return n.createElement(b.Z,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:n.createElement("b",null,n.createElement("time",{dateTime:new Date(1e3*t).toISOString()},a))}}," on {date}")}function y(e){let{lastUpdatedBy:t}=e;return n.createElement(b.Z,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:n.createElement("b",null,t)}}," by {user}")}function A(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:a,lastUpdatedBy:l}=e;return n.createElement("span",{className:_.k.common.lastUpdated},n.createElement(b.Z,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t&&a?n.createElement(x,{lastUpdatedAt:t,formattedLastUpdatedAt:a}):"",byUser:l?n.createElement(y,{lastUpdatedBy:l}):""}},"Last updated{atDate}{byUser}"),!1)}const M="iconEdit_Z9Sw";function B(e){let{className:t,...a}=e;return n.createElement("svg",(0,u.Z)({fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,d.Z)(M,t),"aria-hidden":"true"},a),n.createElement("g",null,n.createElement("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})))}function I(e){let{editUrl:t}=e;return n.createElement("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:_.k.common.editThisPage},n.createElement(B,null),n.createElement(b.Z,{id:"theme.common.editThisPage",description:"The link label to edit the current page"},"Edit this page"))}var V=a(3008);const H="tags_jXut",P="tag_QGVx";function D(e){let{tags:t}=e;return n.createElement(n.Fragment,null,n.createElement("b",null,n.createElement(b.Z,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list"},"Tags:")),n.createElement("ul",{className:(0,d.Z)(H,"padding--none","margin-left--sm")},t.map((e=>{let{label:t,permalink:a}=e;return n.createElement("li",{key:a,className:P},n.createElement(V.Z,{label:t,permalink:a}))}))))}const S="lastUpdated_vwxv";function F(e){return n.createElement("div",{className:(0,d.Z)(_.k.docs.docFooterTagsRow,"row margin-bottom--sm")},n.createElement("div",{className:"col"},n.createElement(D,e)))}function O(e){let{editUrl:t,lastUpdatedAt:a,lastUpdatedBy:l,formattedLastUpdatedAt:r}=e;return n.createElement("div",{className:(0,d.Z)(_.k.docs.docFooterEditMetaRow,"row")},n.createElement("div",{className:"col"},t&&n.createElement(I,{editUrl:t})),n.createElement("div",{className:(0,d.Z)("col",S)},(a||l)&&n.createElement(A,{lastUpdatedAt:a,formattedLastUpdatedAt:r,lastUpdatedBy:l})))}function z(){const{metadata:e}=c(),{editUrl:t,lastUpdatedAt:a,formattedLastUpdatedAt:l,lastUpdatedBy:r,tags:s}=e,o=s.length>0,i=!!(t||a||r);return o||i?n.createElement("footer",{className:(0,d.Z)(_.k.docs.docFooter,"docusaurus-mt-lg")},o&&n.createElement(F,{tags:s}),i&&n.createElement(O,{editUrl:t,lastUpdatedAt:a,lastUpdatedBy:r,formattedLastUpdatedAt:l})):null}var R=a(6043),j=a(3743);const q="tocCollapsibleButton_TO0P",G="tocCollapsibleButtonExpanded_MG3E";function J(e){let{collapsed:t,...a}=e;return n.createElement("button",(0,u.Z)({type:"button"},a,{className:(0,d.Z)("clean-btn",q,!t&&G,a.className)}),n.createElement(b.Z,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component"},"On this page"))}const Q="tocCollapsible_ETCw",W="tocCollapsibleContent_vkbj",X="tocCollapsibleExpanded_sAul";function $(e){let{toc:t,className:a,minHeadingLevel:l,maxHeadingLevel:r}=e;const{collapsed:s,toggleCollapsed:o}=(0,R.u)({initialState:!0});return n.createElement("div",{className:(0,d.Z)(Q,!s&&X,a)},n.createElement(J,{collapsed:s,onClick:o}),n.createElement(R.z,{lazy:!0,className:W,collapsed:s},n.createElement(j.Z,{toc:t,minHeadingLevel:l,maxHeadingLevel:r})))}const K="tocMobile_ITEo";function Y(){const{toc:e,frontMatter:t}=c();return n.createElement($,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,d.Z)(_.k.docs.docTocMobile,K)})}var ee=a(9407);function te(){const{toc:e,frontMatter:t}=c();return n.createElement(ee.Z,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:_.k.docs.docTocDesktop})}var ae=a(2503),ne=a(7432);function le(e){let{children:t}=e;const a=function(){const{metadata:e,frontMatter:t,contentTitle:a}=c();return t.hide_title||void 0!==a?null:e.title}();return n.createElement("div",{className:(0,d.Z)(_.k.docs.docMarkdown,"markdown")},a&&n.createElement("header",null,n.createElement(ae.Z,{as:"h1"},a)),n.createElement(ne.Z,null,t))}var re=a(3438),se=a(8596),oe=a(4996);function ce(e){return n.createElement("svg",(0,u.Z)({viewBox:"0 0 24 24"},e),n.createElement("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"}))}const ie={breadcrumbsContainer:"breadcrumbsContainer_Z_bl",breadcrumbHomeIcon:"breadcrumbHomeIcon_OVgt"};function de(e){let{children:t,href:a,isLast:l}=e;const r="breadcrumbs__link";return l?n.createElement("span",{className:r,itemProp:"name"},t):a?n.createElement(p.Z,{className:r,href:a,itemProp:"item"},n.createElement("span",{itemProp:"name"},t)):n.createElement("span",{className:r},t)}function me(e){let{children:t,active:a,index:l,addMicrodata:r}=e;return n.createElement("li",(0,u.Z)({},r&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},{className:(0,d.Z)("breadcrumbs__item",{"breadcrumbs__item--active":a})}),t,n.createElement("meta",{itemProp:"position",content:String(l+1)}))}function ue(){const e=(0,oe.Z)("/");return n.createElement("li",{className:"breadcrumbs__item"},n.createElement(p.Z,{"aria-label":(0,b.I)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:(0,d.Z)("breadcrumbs__link",ie.breadcrumbsItemLink),href:e},n.createElement(ce,{className:ie.breadcrumbHomeIcon})))}function be(){const e=(0,re.s1)(),t=(0,se.Ns)();return e?n.createElement("nav",{className:(0,d.Z)(_.k.docs.docBreadcrumbs,ie.breadcrumbsContainer),"aria-label":(0,b.I)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"})},n.createElement("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList"},t&&n.createElement(ue,null),e.map(((t,a)=>{const l=a===e.length-1;return n.createElement(me,{key:a,active:l,index:a,addMicrodata:!!t.href},n.createElement(de,{href:t.href,isLast:l},t.label))})))):null}const pe="docItemContainer_Djhp",he="docItemCol_VOVn";function ve(e){let{children:t}=e;const a=function(){const{frontMatter:e,toc:t}=c(),a=(0,m.i)(),l=e.hide_table_of_contents,r=!l&&t.length>0;return{hidden:l,mobile:r?n.createElement(Y,null):void 0,desktop:!r||"desktop"!==a&&"ssr"!==a?void 0:n.createElement(te,null)}}();return n.createElement("div",{className:"row"},n.createElement("div",{className:(0,d.Z)("col",!a.hidden&&he)},n.createElement(w,null),n.createElement("div",{className:pe},n.createElement("article",null,n.createElement(be,null),n.createElement(C,null),a.mobile,n.createElement(le,null,t),n.createElement(z,null)),n.createElement(E,null))),a.desktop&&n.createElement("div",{className:"col col--3"},a.desktop))}function Ee(e){const t=`docs-doc-id-${e.content.metadata.unversionedId}`,a=e.content;return n.createElement(o,{content:e.content},n.createElement(l.FG,{className:t},n.createElement(i,null),n.createElement(ve,null,n.createElement(a,null))))}},3008:(e,t,a)=>{a.d(t,{Z:()=>i});var n=a(7294),l=a(6010),r=a(9960);const s="tag_zVej",o="tagRegular_sFm0",c="tagWithCount_h2kH";function i(e){let{permalink:t,label:a,count:i}=e;return n.createElement(r.Z,{href:t,className:(0,l.Z)(s,i?c:o)},a,i&&n.createElement("span",null,i))}},4477:(e,t,a)=>{a.d(t,{E:()=>o,q:()=>s});var n=a(7294),l=a(902);const r=n.createContext(null);function s(e){let{children:t,version:a}=e;return n.createElement(r.Provider,{value:a},t)}function o(){const e=(0,n.useContext)(r);if(null===e)throw new l.i6("DocsVersionProvider");return e}}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3616],{6742:e=>{e.exports=JSON.parse('{"label":"\u6ce8\u518c\u4e2d\u5fc3","permalink":"/docs/tags/\u6ce8\u518c\u4e2d\u5fc3","allTagsPath":"/docs/tags","count":1,"items":[{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[7200],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),u=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(p.Provider,{value:t},e.children)},d="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=u(n),m=a,g=d["".concat(p,".").concat(m)]||d[m]||s[m]||i;return n?r.createElement(g,l(l({ref:t},c),{},{components:n})):r.createElement(g,l({ref:t},c))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=m;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[d]="string"==typeof e?e:a,l[1]=o;for(var u=2;u<i;u++)l[u]=n[u];return r.createElement.apply(null,l)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},7818:(e,t,n)=>{n.r(t),n.d(t,{Highlight:()=>c,assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>i,metadata:()=>o,toc:()=>u});var r=n(7462),a=(n(7294),n(3905));const i={title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",tags:["\u76d8\u53e4 Admin"],sidebar_position:5,slug:"/pangu-admin/new-module"},l=void 0,o={unversionedId:"pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",id:"pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",description:"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6",source:"@site/docs/pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757.md",sourceDirName:"pangu-admin",slug:"/pangu-admin/new-module",permalink:"/pangu-framework/docs/pangu-admin/new-module",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757.md",tags:[{label:"\u76d8\u53e4 Admin",permalink:"/pangu-framework/docs/tags/\u76d8\u53e4-admin"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:5,frontMatter:{title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",tags:["\u76d8\u53e4 Admin"],sidebar_position:5,slug:"/pangu-admin/new-module"},sidebar:"tutorialSidebar",previous:{title:"\u76d8\u53e4 Admin \u5feb\u901f\u5f00\u59cb",permalink:"/pangu-framework/docs/pangu-admin/quick-start"},next:{title:"\u90e8\u7f72\u76f8\u5173",permalink:"/pangu-framework/docs/deploy-guide/basic"}},p={},u=[{value:"\u865a\u62df\u4e1a\u52a1",id:"\u865a\u62df\u4e1a\u52a1",level:2},{value:"\u7b2c\u4e00\u6b65 \u65b0\u5efa\u6a21\u5757\u5de5\u7a0b",id:"\u7b2c\u4e00\u6b65-\u65b0\u5efa\u6a21\u5757\u5de5\u7a0b",level:2},{value:"\u7b2c\u4e8c\u6b65 \u65b0\u5efa\u914d\u7f6e",id:"\u7b2c\u4e8c\u6b65-\u65b0\u5efa\u914d\u7f6e",level:2},{value:"\u7b2c\u4e09\u6b65 \u7f51\u5173\u96c6\u6210",id:"\u7b2c\u4e09\u6b65-\u7f51\u5173\u96c6\u6210",level:2},{value:"\u7b2c\u56db\u6b65 \u65b0\u5efa\u524d\u7aef\u6a21\u5757",id:"\u7b2c\u56db\u6b65-\u65b0\u5efa\u524d\u7aef\u6a21\u5757",level:2},{value:"\u7b2c\u4e94\u6b65 \u65b0\u5efa\u4e1a\u52a1\u83dc\u5355",id:"\u7b2c\u4e94\u6b65-\u65b0\u5efa\u4e1a\u52a1\u83dc\u5355",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],c=e=>{let{children:t,color:n}=e;return(0,a.kt)("span",{style:{backgroundColor:n,borderRadius:"3px",color:"#fff",padding:"0.1rem",margin:"0.2rem"}},t)},d={toc:u,Highlight:c};function s(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("head",null,(0,a.kt)("title",null,"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6"),(0,a.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6"})),(0,a.kt)("p",null,"\u672c\u6587\u5c06\u4ecb\u7ecd\u5982\u4f55\u57fa\u4e8e\u76d8\u53e4 Admin \u5b9e\u73b0\u4e00\u4e2a\u81ea\u5df1\u7684\u4e1a\u52a1\u529f\u80fd\u6a21\u5757\u3002"),(0,a.kt)("h2",{id:"\u865a\u62df\u4e1a\u52a1"},"\u865a\u62df\u4e1a\u52a1"),(0,a.kt)("p",null,"\u5047\u8bbe\u6211\u4eec\u8981\u5b9e\u73b0\u7684\u662f\u4e00\u4e2a\u67d0\u94f6\u884c\u4fe1\u7528\u5361\u7533\u8bf7\u5ba1\u6279\u540e\u53f0\u7cfb\u7edf\u3002\u5728\u6b64\uff0c\u6211\u4eec\u6f14\u793a\u5982\u4f55\u65b0\u589e\u4e00\u4e2a\u3010\u4fe1\u7528\u5361\u4eba\u5de5\u590d\u6838\u3011 \u83dc\u5355\uff0c\u5217\u51fa\u5404\u79cd\u6e20\u9053\u63d0\u4ea4\u5230\u540e\u53f0\u7684\u5361\u7533\u8bf7\u4fe1\u606f\u4f9b\u5ba1\u6838\u4eba\u5458\u5ba1\u6838\u786e\u8ba4\u3002"),(0,a.kt)("h2",{id:"\u7b2c\u4e00\u6b65-\u65b0\u5efa\u6a21\u5757\u5de5\u7a0b"},"\u7b2c\u4e00\u6b65 \u65b0\u5efa\u6a21\u5757\u5de5\u7a0b"),(0,a.kt)("p",null,"\u4ee5 pangu-admin-system \u4e3a\u539f\u578b\u6a21\u7248\uff0c\u65b0\u5efa\u4e1a\u52a1\u6a21\u5757\u5de5\u7a0b\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"\u250c\u2500\u2500 icbc-card-audit # ICBC \u67d0\u884c\u4fe1\u7528\u5361\u5ba1\u6279\u76f8\u5173\u4e1a\u52a1\n\u2502 \u251c\u2500\u2500 icbc-card-audit-api # \u4e1a\u52a1\u63a5\u53e3\n\u2502 \u251c\u2500\u2500 icbc-card-audit-app # \u4e1a\u52a1\u5b9e\u73b0 \n")),(0,a.kt)("h2",{id:"\u7b2c\u4e8c\u6b65-\u65b0\u5efa\u914d\u7f6e"},"\u7b2c\u4e8c\u6b65 \u65b0\u5efa\u914d\u7f6e"),(0,a.kt)("p",null,"\u5728 nacos \u914d\u7f6e\u4e2d\u5fc3\u521b\u5efa Data Id \u4e3a icbc-card-audit-app \u7684\u914d\u7f6e\u6570\u636e\u3002\u6ce8\u610f\uff1a\u6240\u5c5e\u547d\u540d\u7a7a\u95f4\u9700\u8981\u548c pangu-admin-* \u7684\u914d\u7f6e\u6570\u636e\u6240\u5c5e\u547d\u540d\u7a7a\u95f4\u4fdd\u6301\u4e00\u81f4\u3002"),(0,a.kt)("h2",{id:"\u7b2c\u4e09\u6b65-\u7f51\u5173\u96c6\u6210"},"\u7b2c\u4e09\u6b65 \u7f51\u5173\u96c6\u6210"),(0,a.kt)("p",null,"\u5728\u7f51\u5173\u6a21\u5757 pangu-admin-web \u7684 pom.xml \u4e2d\u6dfb\u52a0\u5bf9\u63a5\u53e3\u6a21\u5757 icbc-card-audit-api \u7684\u4f9d\u8d56\u3002\u5e76\u901a\u8fc7 RestController \u8c03\u7528\u76f8\u5173 api \u63a5\u53e3\u3002 "),(0,a.kt)("h2",{id:"\u7b2c\u56db\u6b65-\u65b0\u5efa\u524d\u7aef\u6a21\u5757"},"\u7b2c\u56db\u6b65 \u65b0\u5efa\u524d\u7aef\u6a21\u5757"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"\u250c\u2500\u2500 src # \u6e90\u4ee3\u7801\n\u2502 \u251c\u2500\u2500 api # \u5728\u8fd9\u91cc\u5b9a\u4e49\u76f8\u5173\u6a21\u5757 API \u8bf7\u6c42\n\u2502 \u251c\u2500\u2500 views # \u5728\u8fd9\u91cc\u65b0\u5efa\u76f8\u5173\u6a21\u5757\u524d\u7aef\u9875\u9762\n\u2502 \u251c\u2500\u2500 ... # etc\n")),(0,a.kt)("h2",{id:"\u7b2c\u4e94\u6b65-\u65b0\u5efa\u4e1a\u52a1\u83dc\u5355"},"\u7b2c\u4e94\u6b65 \u65b0\u5efa\u4e1a\u52a1\u83dc\u5355"),(0,a.kt)("p",null,"\u767b\u5f55\u6743\u9650\u7cfb\u7edf\uff0c\u901a\u8fc7\u3010\u8d44\u6e90\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u65b0\u589e\u4e1a\u52a1\u83dc\u5355\u3010\u4fe1\u7528\u5361\u4eba\u5de5\u590d\u6838\u3011\u3002\u5e76\u5c06\u5176\u6388\u6743\u7ed9\u76f8\u5173\u89d2\u8272\u548c\u4eba\u5458\u5373\u53ef\u3002"),(0,a.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,a.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,a.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}s.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[7200],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),u=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=u(e.components);return r.createElement(p.Provider,{value:t},e.children)},d="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=u(n),m=a,g=d["".concat(p,".").concat(m)]||d[m]||s[m]||i;return n?r.createElement(g,l(l({ref:t},c),{},{components:n})):r.createElement(g,l({ref:t},c))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=m;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[d]="string"==typeof e?e:a,l[1]=o;for(var u=2;u<i;u++)l[u]=n[u];return r.createElement.apply(null,l)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},7818:(e,t,n)=>{n.r(t),n.d(t,{Highlight:()=>c,assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>i,metadata:()=>o,toc:()=>u});var r=n(7462),a=(n(7294),n(3905));const i={title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",tags:["\u76d8\u53e4 Admin"],sidebar_position:5,slug:"/pangu-admin/new-module"},l=void 0,o={unversionedId:"pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",id:"pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",description:"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6",source:"@site/docs/pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757.md",sourceDirName:"pangu-admin",slug:"/pangu-admin/new-module",permalink:"/docs/pangu-admin/new-module",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757.md",tags:[{label:"\u76d8\u53e4 Admin",permalink:"/docs/tags/\u76d8\u53e4-admin"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:5,frontMatter:{title:"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757",tags:["\u76d8\u53e4 Admin"],sidebar_position:5,slug:"/pangu-admin/new-module"},sidebar:"tutorialSidebar",previous:{title:"\u76d8\u53e4 Admin \u5feb\u901f\u5f00\u59cb",permalink:"/docs/pangu-admin/quick-start"},next:{title:"\u90e8\u7f72\u76f8\u5173",permalink:"/docs/deploy-guide/basic"}},p={},u=[{value:"\u865a\u62df\u4e1a\u52a1",id:"\u865a\u62df\u4e1a\u52a1",level:2},{value:"\u7b2c\u4e00\u6b65 \u65b0\u5efa\u6a21\u5757\u5de5\u7a0b",id:"\u7b2c\u4e00\u6b65-\u65b0\u5efa\u6a21\u5757\u5de5\u7a0b",level:2},{value:"\u7b2c\u4e8c\u6b65 \u65b0\u5efa\u914d\u7f6e",id:"\u7b2c\u4e8c\u6b65-\u65b0\u5efa\u914d\u7f6e",level:2},{value:"\u7b2c\u4e09\u6b65 \u7f51\u5173\u96c6\u6210",id:"\u7b2c\u4e09\u6b65-\u7f51\u5173\u96c6\u6210",level:2},{value:"\u7b2c\u56db\u6b65 \u65b0\u5efa\u524d\u7aef\u6a21\u5757",id:"\u7b2c\u56db\u6b65-\u65b0\u5efa\u524d\u7aef\u6a21\u5757",level:2},{value:"\u7b2c\u4e94\u6b65 \u65b0\u5efa\u4e1a\u52a1\u83dc\u5355",id:"\u7b2c\u4e94\u6b65-\u65b0\u5efa\u4e1a\u52a1\u83dc\u5355",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],c=e=>{let{children:t,color:n}=e;return(0,a.kt)("span",{style:{backgroundColor:n,borderRadius:"3px",color:"#fff",padding:"0.1rem",margin:"0.2rem"}},t)},d={toc:u,Highlight:c};function s(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("head",null,(0,a.kt)("title",null,"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6"),(0,a.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6"})),(0,a.kt)("p",null,"\u672c\u6587\u5c06\u4ecb\u7ecd\u5982\u4f55\u57fa\u4e8e\u76d8\u53e4 Admin \u5b9e\u73b0\u4e00\u4e2a\u81ea\u5df1\u7684\u4e1a\u52a1\u529f\u80fd\u6a21\u5757\u3002"),(0,a.kt)("h2",{id:"\u865a\u62df\u4e1a\u52a1"},"\u865a\u62df\u4e1a\u52a1"),(0,a.kt)("p",null,"\u5047\u8bbe\u6211\u4eec\u8981\u5b9e\u73b0\u7684\u662f\u4e00\u4e2a\u67d0\u94f6\u884c\u4fe1\u7528\u5361\u7533\u8bf7\u5ba1\u6279\u540e\u53f0\u7cfb\u7edf\u3002\u5728\u6b64\uff0c\u6211\u4eec\u6f14\u793a\u5982\u4f55\u65b0\u589e\u4e00\u4e2a\u3010\u4fe1\u7528\u5361\u4eba\u5de5\u590d\u6838\u3011 \u83dc\u5355\uff0c\u5217\u51fa\u5404\u79cd\u6e20\u9053\u63d0\u4ea4\u5230\u540e\u53f0\u7684\u5361\u7533\u8bf7\u4fe1\u606f\u4f9b\u5ba1\u6838\u4eba\u5458\u5ba1\u6838\u786e\u8ba4\u3002"),(0,a.kt)("h2",{id:"\u7b2c\u4e00\u6b65-\u65b0\u5efa\u6a21\u5757\u5de5\u7a0b"},"\u7b2c\u4e00\u6b65 \u65b0\u5efa\u6a21\u5757\u5de5\u7a0b"),(0,a.kt)("p",null,"\u4ee5 pangu-admin-system \u4e3a\u539f\u578b\u6a21\u7248\uff0c\u65b0\u5efa\u4e1a\u52a1\u6a21\u5757\u5de5\u7a0b\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"\u250c\u2500\u2500 icbc-card-audit # ICBC \u67d0\u884c\u4fe1\u7528\u5361\u5ba1\u6279\u76f8\u5173\u4e1a\u52a1\n\u2502 \u251c\u2500\u2500 icbc-card-audit-api # \u4e1a\u52a1\u63a5\u53e3\n\u2502 \u251c\u2500\u2500 icbc-card-audit-app # \u4e1a\u52a1\u5b9e\u73b0 \n")),(0,a.kt)("h2",{id:"\u7b2c\u4e8c\u6b65-\u65b0\u5efa\u914d\u7f6e"},"\u7b2c\u4e8c\u6b65 \u65b0\u5efa\u914d\u7f6e"),(0,a.kt)("p",null,"\u5728 nacos \u914d\u7f6e\u4e2d\u5fc3\u521b\u5efa Data Id \u4e3a icbc-card-audit-app \u7684\u914d\u7f6e\u6570\u636e\u3002\u6ce8\u610f\uff1a\u6240\u5c5e\u547d\u540d\u7a7a\u95f4\u9700\u8981\u548c pangu-admin-* \u7684\u914d\u7f6e\u6570\u636e\u6240\u5c5e\u547d\u540d\u7a7a\u95f4\u4fdd\u6301\u4e00\u81f4\u3002"),(0,a.kt)("h2",{id:"\u7b2c\u4e09\u6b65-\u7f51\u5173\u96c6\u6210"},"\u7b2c\u4e09\u6b65 \u7f51\u5173\u96c6\u6210"),(0,a.kt)("p",null,"\u5728\u7f51\u5173\u6a21\u5757 pangu-admin-web \u7684 pom.xml \u4e2d\u6dfb\u52a0\u5bf9\u63a5\u53e3\u6a21\u5757 icbc-card-audit-api \u7684\u4f9d\u8d56\u3002\u5e76\u901a\u8fc7 RestController \u8c03\u7528\u76f8\u5173 api \u63a5\u53e3\u3002 "),(0,a.kt)("h2",{id:"\u7b2c\u56db\u6b65-\u65b0\u5efa\u524d\u7aef\u6a21\u5757"},"\u7b2c\u56db\u6b65 \u65b0\u5efa\u524d\u7aef\u6a21\u5757"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-yaml"},"\u250c\u2500\u2500 src # \u6e90\u4ee3\u7801\n\u2502 \u251c\u2500\u2500 api # \u5728\u8fd9\u91cc\u5b9a\u4e49\u76f8\u5173\u6a21\u5757 API \u8bf7\u6c42\n\u2502 \u251c\u2500\u2500 views # \u5728\u8fd9\u91cc\u65b0\u5efa\u76f8\u5173\u6a21\u5757\u524d\u7aef\u9875\u9762\n\u2502 \u251c\u2500\u2500 ... # etc\n")),(0,a.kt)("h2",{id:"\u7b2c\u4e94\u6b65-\u65b0\u5efa\u4e1a\u52a1\u83dc\u5355"},"\u7b2c\u4e94\u6b65 \u65b0\u5efa\u4e1a\u52a1\u83dc\u5355"),(0,a.kt)("p",null,"\u767b\u5f55\u6743\u9650\u7cfb\u7edf\uff0c\u901a\u8fc7\u3010\u8d44\u6e90\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u65b0\u589e\u4e1a\u52a1\u83dc\u5355\u3010\u4fe1\u7528\u5361\u4eba\u5de5\u590d\u6838\u3011\u3002\u5e76\u5c06\u5176\u6388\u6743\u7ed9\u76f8\u5173\u89d2\u8272\u548c\u4eba\u5458\u5373\u53ef\u3002"),(0,a.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,a.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,a.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}s.isMDXComponent=!0}}]);
\ No newline at end of file
此差异已折叠。
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3085],{4247:(e,t,a)=>{a.r(t),a.d(t,{default:()=>d});var l=a(7294),n=a(6010),c=a(1944),r=a(5281),m=a(3929),i=a(7432),s=a(9407);const o="mdxPageWrapper_j9I6";function d(e){const{content:t}=e,{metadata:{title:a,description:d,frontMatter:p}}=t,{wrapperClassName:u,hide_table_of_contents:g}=p;return l.createElement(c.FG,{className:(0,n.Z)(u??r.k.wrapper.mdxPages,r.k.page.mdxPage)},l.createElement(c.d,{title:a,description:d}),l.createElement(m.Z,null,l.createElement("main",{className:"container container--fluid margin-vert--lg"},l.createElement("div",{className:(0,n.Z)("row",o)},l.createElement("div",{className:(0,n.Z)("col",!g&&"col--8")},l.createElement("article",null,l.createElement(i.Z,null,l.createElement(t,null)))),!g&&t.toc.length>0&&l.createElement("div",{className:"col col--2"},l.createElement(s.Z,{toc:t.toc,minHeadingLevel:p.toc_min_heading_level,maxHeadingLevel:p.toc_max_heading_level}))))))}}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3442],{856:e=>{e.exports=JSON.parse('{"label":"Cache","permalink":"/docs/tags/cache","allTagsPath":"/docs/tags","count":1,"items":[{"id":"advanced-guide/\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","title":"\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58 | Laying Cache | \u7f13\u5b58\u51fb\u7a7f | \u7f13\u5b58\u96ea\u5d29","permalink":"/docs/advanced-guide/layering-cache"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[9215],{5519:a=>{a.exports=JSON.parse('{"label":"MyBatis-Plus","permalink":"/pangu-framework/docs/tags/my-batis-plus","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/pangu-framework/docs/code-generator"},{"id":"advanced-guide/\u6570\u636e\u6301\u4e45\u5316","title":"\u6570\u636e\u6301\u4e45\u5316","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6301\u4e45\u5316 | MyBatis Plus","permalink":"/pangu-framework/docs/advanced-guide/data-persistance"}]}')}}]);
\ No newline at end of file
此差异已折叠。
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3611],{8481:e=>{e.exports=JSON.parse('{"label":"Dubbo","permalink":"/pangu-framework/docs/tags/dubbo","allTagsPath":"/pangu-framework/docs/tags","count":1,"items":[{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/pangu-framework/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
此差异已折叠。
此差异已折叠。
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3700],{2060:e=>{e.exports=JSON.parse('{"label":"MyBatis-Plus","permalink":"/docs/tags/my-batis-plus","allTagsPath":"/docs/tags","count":2,"items":[{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/docs/code-generator"},{"id":"advanced-guide/\u6570\u636e\u6301\u4e45\u5316","title":"\u6570\u636e\u6301\u4e45\u5316","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6301\u4e45\u5316 | MyBatis Plus","permalink":"/docs/advanced-guide/data-persistance"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1204],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),s=c(a),m=r,k=s["".concat(p,".").concat(m)]||s[m]||d[m]||l;return a?n.createElement(k,o(o({ref:t},u),{},{components:a})):n.createElement(k,o({ref:t},u))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[s]="string"==typeof e?e:r,o[1]=i;for(var c=2;c<l;c++)o[c]=a[c];return n.createElement.apply(null,o)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},5162:(e,t,a)=>{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l="tabItem_Ymn6";function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l,o),hidden:a},t)}},5488:(e,t,a)=>{a.d(t,{Z:()=>m});var n=a(7462),r=a(7294),l=a(6010),o=a(2389),i=a(7392),p=a(7094),c=a(2466);const u="tabList__CuJ",s="tabItem_LNqP";function d(e){const{lazy:t,block:a,defaultValue:o,values:d,groupId:m,className:k}=e,g=r.Children.map(e.children,(e=>{if((0,r.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)})),b=d??g.map((e=>{let{props:{value:t,label:a,attributes:n}}=e;return{value:t,label:a,attributes:n}})),v=(0,i.l)(b,((e,t)=>e.value===t.value));if(v.length>0)throw new Error(`Docusaurus error: Duplicate values "${v.map((e=>e.value)).join(", ")}" found in <Tabs>. Every value needs to be unique.`);const f=null===o?o:o??g.find((e=>e.props.default))?.props.value??g[0].props.value;if(null!==f&&!b.some((e=>e.value===f)))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${f}" but none of its children has the corresponding value. Available values are: ${b.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:y,setTabGroupChoices:h}=(0,p.U)(),[N,T]=(0,r.useState)(f),x=[],{blockElementScrollPositionUntilNextRender:I}=(0,c.o5)();if(null!=m){const e=y[m];null!=e&&e!==N&&b.some((t=>t.value===e))&&T(e)}const j=e=>{const t=e.currentTarget,a=x.indexOf(t),n=b[a].value;n!==N&&(I(t),T(n),null!=m&&h(m,String(n)))},w=e=>{let t=null;switch(e.key){case"Enter":j(e);break;case"ArrowRight":{const a=x.indexOf(e.currentTarget)+1;t=x[a]??x[0];break}case"ArrowLeft":{const a=x.indexOf(e.currentTarget)-1;t=x[a]??x[x.length-1];break}}t?.focus()};return r.createElement("div",{className:(0,l.Z)("tabs-container",u)},r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},k)},b.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:N===t?0:-1,"aria-selected":N===t,key:t,ref:e=>x.push(e),onKeyDown:w,onClick:j},o,{className:(0,l.Z)("tabs__item",s,o?.className,{"tabs__item--active":N===t})}),a??t)}))),t?(0,r.cloneElement)(g.filter((e=>e.props.value===N))[0],{className:"margin-top--md"}):r.createElement("div",{className:"margin-top--md"},g.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==N})))))}function m(e){const t=(0,o.Z)();return r.createElement(d,(0,n.Z)({key:String(t)},e))}},3953:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>p,default:()=>m,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(5488),o=a(5162);const i={title:"\u5206\u5e03\u5f0f\u9501",tags:["\u5206\u5e03\u5f0f\u9501","\u6570\u636e\u6301\u4e45\u5316"],sidebar_position:15,slug:"/advanced-guide/distributed-lock"},p=void 0,c={unversionedId:"advanced-guide/\u5206\u5e03\u5f0f\u9501",id:"advanced-guide/\u5206\u5e03\u5f0f\u9501",title:"\u5206\u5e03\u5f0f\u9501",description:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j",source:"@site/docs/advanced-guide/\u5206\u5e03\u5f0f\u9501.md",sourceDirName:"advanced-guide",slug:"/advanced-guide/distributed-lock",permalink:"/docs/advanced-guide/distributed-lock",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/advanced-guide/\u5206\u5e03\u5f0f\u9501.md",tags:[{label:"\u5206\u5e03\u5f0f\u9501",permalink:"/docs/tags/\u5206\u5e03\u5f0f\u9501"},{label:"\u6570\u636e\u6301\u4e45\u5316",permalink:"/docs/tags/\u6570\u636e\u6301\u4e45\u5316"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:15,frontMatter:{title:"\u5206\u5e03\u5f0f\u9501",tags:["\u5206\u5e03\u5f0f\u9501","\u6570\u636e\u6301\u4e45\u5316"],sidebar_position:15,slug:"/advanced-guide/distributed-lock"},sidebar:"tutorialSidebar",previous:{title:"\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58",permalink:"/docs/advanced-guide/layering-cache"},next:{title:"\u5206\u5e03\u5f0f\u4e8b\u52a1",permalink:"/docs/advanced-guide/distributed-transaction"}},u={},s=[{value:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",level:2},{value:"\u672c\u5730\u914d\u7f6e",id:"\u672c\u5730\u914d\u7f6e",level:2},{value:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e",id:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e",level:2},{value:"@Lock4j",id:"lock4j",level:3},{value:"\u4ee3\u7801\u7247\u6bb5",id:"\u4ee3\u7801\u7247\u6bb5",level:3},{value:"\u57fa\u4e8e API \u7f16\u7a0b",id:"\u57fa\u4e8e-api-\u7f16\u7a0b",level:2},{value:"\u542f\u52a8\u5165\u53e3",id:"\u542f\u52a8\u5165\u53e3",level:2},{value:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],d={toc:s};function m(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("head",null,(0,r.kt)("title",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j"),(0,r.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j"})),(0,r.kt)("p",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u57fa\u4e8e ",(0,r.kt)("a",{parentName:"p",href:"https://gitee.com/baomidou/lock4j"},"Lock4j")," \u63d0\u4f9b\u5206\u5e03\u5f0f\u9501\u3002\u652f\u6301\u6ce8\u89e3\u58f0\u660e\u5f0f\u548c API \u7f16\u7a0b\u5f0f\u5bf9\u4e1a\u52a1\u4ee3\u7801\u5728\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u52a0\u5e76\u53d1\u9501\u3002"),(0,r.kt)("h2",{id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"},"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"parent",label:"\u76d8\u53e4 Parent",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<parent>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-parent</artifactId>\n <version>latest.version.xxx</version>\n <relativePath/>\n</parent>\n"))),(0,r.kt)(o.Z,{value:"dependency1",label:"\u57fa\u7840\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-spring-boot-starter</artifactId>\n</dependency>\n"))),(0,r.kt)(o.Z,{value:"dependency2",label:"\u7f13\u5b58\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-cache-spring-boot-starter</artifactId>\n</dependency>\n")))),(0,r.kt)("h2",{id:"\u672c\u5730\u914d\u7f6e"},"\u672c\u5730\u914d\u7f6e"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"\u4e3a\u4fbf\u4e8e\u7406\u89e3\uff0c\u672c\u6587\u57fa\u4e8e\u672c\u5730\u914d\u7f6e\u7684\u65b9\u5f0f\u7f16\u5199\u3002\u82e5\u6539\u4e3a\u6807\u51c6\u7684 Nacos \u914d\u7f6e\u4e2d\u5fc3\u6a21\u5f0f\uff0c\u8bf7\u53c2\u9605\uff1a",(0,r.kt)("a",{parentName:"p",href:"/docs/advanced-guide/nacos-config-center"},"\u914d\u7f6e\u4e2d\u5fc3")," \u7ae0\u8282\u3002")),(0,r.kt)(l.Z,{defaultValue:"application-dev",mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"application",label:"application.properties",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.profiles.active=${spring.profiles.active:dev}\n"))),(0,r.kt)(o.Z,{value:"application-dev",label:"application-dev.properties",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.application.name=pangu-examples-lock-redis-based\n\n# spring-redis\nspring.redis.host=localhost\nspring.redis.database=1\nspring.redis.port=6379\nspring.redis.password=\n\nlogging.level.root=INFO\nlogging.level.com.gitee.pulanos.pangu=INFO\n")))),(0,r.kt)("h2",{id:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e"},"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e"),(0,r.kt)("p",null,"\u76f4\u63a5\u5728\u9700\u8981\u7f13\u5b58\u7684\u65b9\u6cd5\u4e0a\u52a0\u4e0a ",(0,r.kt)("inlineCode",{parentName:"p"},"@Lock4j")," \u6ce8\u89e3\u3002"),(0,r.kt)("h3",{id:"lock4j"},"@Lock4j"),(0,r.kt)("p",null,"\u5206\u5e03\u5f0f\u9501\u6ce8\u89e3\u3002"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,r.kt)("th",{parentName:"tr",align:null},"\u9ed8\u8ba4\u503c"),(0,r.kt)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"name"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7a7a\u5b57\u7b26\u4e32"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7528\u4e8e\u591a\u4e2a\u65b9\u6cd5\u9501\u540c\u4e00\u628a\u9501 \u53ef\u4ee5\u7406\u89e3\u4e3a\u9501\u8d44\u6e90\u540d\u79f0\uff0c\u4e3a\u7a7a\u5219\u4f1a\u4f7f\u7528\uff1a\u5305\u540d + \u7c7b\u540d + \u65b9\u6cd5\u540d\u3002\uff08\u4e00\u822c\u4e3a\u7a7a\u5373\u53ef\uff09")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"keys"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7a7a\u5b57\u7b26\u4e32"),(0,r.kt)("td",{parentName:"tr",align:null},"\u652f\u6301 SPEL \u8868\u8fbe\u5f0f\uff0c\u9501\u7684 key = name + keys")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"acquireTimeout"),(0,r.kt)("td",{parentName:"tr",align:null},"3000"),(0,r.kt)("td",{parentName:"tr",align:null},"\u83b7\u53d6\u9501\u8d85\u65f6\u65f6\u95f4 \u5355\u4f4d\uff1a\u6beb\u79d2\u3002\u53ef\u4ee5\u7406\u89e3\u4e3a\u6392\u961f\u65f6\u5e38\uff0c\u8d85\u8fc7\u8fd9\u4e2a\u65f6\u5e38\u5c31\u9000\u51fa\u6392\u961f\uff0c\u629b\u51fa\u83b7\u53d6\u9501\u8d85\u65f6\u5f02\u5e38\u3002")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"expire"),(0,r.kt)("td",{parentName:"tr",align:null},"30000"),(0,r.kt)("td",{parentName:"tr",align:null},"\u8fc7\u671f\u65f6\u95f4 \u5355\u4f4d\uff1a\u6beb\u79d2\u3002\u4e3b\u8981\u662f\u9632\u6b62\u6b7b\u9501\uff0c\u5efa\u8bae\u4f30\u8ba1\u597d\u4f60\u9501\u65b9\u6cd5\u8fd0\u884c\u65f6\u5e38\uff0c\u6b63\u5e38\u6ca1\u6709\u590d\u6742\u4e1a\u52a1\u7684\u589e\u5220\u6539\u67e5\u6700\u591a\u51e0\u79d2\uff0c\u7559\u6709\u4e00\u5b9a\u5197\u4f59\uff0c10 \u79d2\u8db3\u591f\u3002\u9ed8\u8ba4 30 \u79d2\u662f\u4e3a\u4e86\u517c\u5bb9\u7edd\u5927\u90e8\u5206\u573a\u666f\u3002")))),(0,r.kt)("h3",{id:"\u4ee3\u7801\u7247\u6bb5"},"\u4ee3\u7801\u7247\u6bb5"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},'/**\n * \u9ed8\u8ba4\u83b7\u53d6\u9501\u8d85\u65f6 3 \u79d2\uff0c30 \u79d2\u9501\u8fc7\u671f\n */\n@Lock4j\npublic void doBiz() {\n log.info("\u6267\u884cdoBiz...");\n ThreadUtil.sleep(25*1000);\n}\n\n/**\n * \u914d\u7f6e\u83b7\u53d6\u9501\u8d85\u65f6\u65f6\u95f4\u548c\u9501\u8fc7\u671f\u65f6\u95f4 \u652f\u6301 SPEL\n * @param accountId\n */\n@Lock4j(keys = {"#accountId"}, expire = 20000, acquireTimeout = 10000)\npublic void doBiz2(Long accountId) {\n log.info("\u6267\u884cdoBiz2...");\n ThreadUtil.sleep(20*1000);\n}\n')),(0,r.kt)("h2",{id:"\u57fa\u4e8e-api-\u7f16\u7a0b"},"\u57fa\u4e8e API \u7f16\u7a0b"),(0,r.kt)("p",null,"\u6ce8\u5165 LockTemplate \u5bf9\u8c61\u5373\u53ef\u4f7f\u7528\u3002\u5982\u4e0b\u4ee3\u7801\u6240\u793a\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},'@Component\npublic class ApiLockService {\n\n @Autowired\n private LockTemplate lockTemplate;\n\n public void apiLock(String userId) {\n //... \u5404\u79cd\u4e0d\u9700\u8981\u4e0a\u9501\u7684\u64cd\u4f5c\n String lockKey = "lock4j:ApiLockService:apiLock:" + userId;\n final LockInfo lockInfo = lockTemplate.lock(lockKey);\n //\u7533\u8bf7\u9501\u5931\u8d25\n if (null == lockInfo) {\n throw new LockException("\u4e1a\u52a1\u5904\u7406\u4e2d\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5...");\n }\n //\u7533\u8bf7\u9501\u6210\u529f\n try {\n ThreadUtil.sleep(10000L);\n log.info("\u6267\u884c apiLock, \u5f53\u524d\u7ebf\u7a0b{}", Thread.currentThread().getName());\n } finally {\n lockTemplate.releaseLock(lockInfo);\n }\n }\n\n}\n')),(0,r.kt)("h2",{id:"\u542f\u52a8\u5165\u53e3"},"\u542f\u52a8\u5165\u53e3"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"@SpringBootApplication\npublic class LockPanguApplication {\n public static void main(String[] args) {\n PanGuApplicationBuilder.init(LockPanguApplication.class).run(args);\n }\n}\n")),(0,r.kt)("h2",{id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"},"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-examples/pangu-examples-lock-redis-based"},"pangu-examples-lock-redis-based"),"\uff1a\u5206\u5e03\u5f0f\u9501\u8303\u4f8b")),(0,r.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,r.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,r.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}m.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1204],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>k});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var p=n.createContext({}),c=function(e){var t=n.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=c(e.components);return n.createElement(p.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),s=c(a),m=r,k=s["".concat(p,".").concat(m)]||s[m]||d[m]||l;return a?n.createElement(k,o(o({ref:t},u),{},{components:a})):n.createElement(k,o({ref:t},u))}));function k(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[s]="string"==typeof e?e:r,o[1]=i;for(var c=2;c<l;c++)o[c]=a[c];return n.createElement.apply(null,o)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},5162:(e,t,a)=>{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l="tabItem_Ymn6";function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l,o),hidden:a},t)}},5488:(e,t,a)=>{a.d(t,{Z:()=>m});var n=a(7462),r=a(7294),l=a(6010),o=a(2389),i=a(7392),p=a(7094),c=a(2466);const u="tabList__CuJ",s="tabItem_LNqP";function d(e){const{lazy:t,block:a,defaultValue:o,values:d,groupId:m,className:k}=e,g=r.Children.map(e.children,(e=>{if((0,r.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)})),b=d??g.map((e=>{let{props:{value:t,label:a,attributes:n}}=e;return{value:t,label:a,attributes:n}})),v=(0,i.l)(b,((e,t)=>e.value===t.value));if(v.length>0)throw new Error(`Docusaurus error: Duplicate values "${v.map((e=>e.value)).join(", ")}" found in <Tabs>. Every value needs to be unique.`);const f=null===o?o:o??g.find((e=>e.props.default))?.props.value??g[0].props.value;if(null!==f&&!b.some((e=>e.value===f)))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${f}" but none of its children has the corresponding value. Available values are: ${b.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:y,setTabGroupChoices:h}=(0,p.U)(),[N,T]=(0,r.useState)(f),w=[],{blockElementScrollPositionUntilNextRender:x}=(0,c.o5)();if(null!=m){const e=y[m];null!=e&&e!==N&&b.some((t=>t.value===e))&&T(e)}const I=e=>{const t=e.currentTarget,a=w.indexOf(t),n=b[a].value;n!==N&&(x(t),T(n),null!=m&&h(m,String(n)))},j=e=>{let t=null;switch(e.key){case"Enter":I(e);break;case"ArrowRight":{const a=w.indexOf(e.currentTarget)+1;t=w[a]??w[0];break}case"ArrowLeft":{const a=w.indexOf(e.currentTarget)-1;t=w[a]??w[w.length-1];break}}t?.focus()};return r.createElement("div",{className:(0,l.Z)("tabs-container",u)},r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},k)},b.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:N===t?0:-1,"aria-selected":N===t,key:t,ref:e=>w.push(e),onKeyDown:j,onClick:I},o,{className:(0,l.Z)("tabs__item",s,o?.className,{"tabs__item--active":N===t})}),a??t)}))),t?(0,r.cloneElement)(g.filter((e=>e.props.value===N))[0],{className:"margin-top--md"}):r.createElement("div",{className:"margin-top--md"},g.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==N})))))}function m(e){const t=(0,o.Z)();return r.createElement(d,(0,n.Z)({key:String(t)},e))}},3953:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>u,contentTitle:()=>p,default:()=>m,frontMatter:()=>i,metadata:()=>c,toc:()=>s});var n=a(7462),r=(a(7294),a(3905)),l=a(5488),o=a(5162);const i={title:"\u5206\u5e03\u5f0f\u9501",tags:["\u5206\u5e03\u5f0f\u9501","\u6570\u636e\u6301\u4e45\u5316"],sidebar_position:15,slug:"/advanced-guide/distributed-lock"},p=void 0,c={unversionedId:"advanced-guide/\u5206\u5e03\u5f0f\u9501",id:"advanced-guide/\u5206\u5e03\u5f0f\u9501",title:"\u5206\u5e03\u5f0f\u9501",description:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j",source:"@site/docs/advanced-guide/\u5206\u5e03\u5f0f\u9501.md",sourceDirName:"advanced-guide",slug:"/advanced-guide/distributed-lock",permalink:"/pangu-framework/docs/advanced-guide/distributed-lock",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/advanced-guide/\u5206\u5e03\u5f0f\u9501.md",tags:[{label:"\u5206\u5e03\u5f0f\u9501",permalink:"/pangu-framework/docs/tags/\u5206\u5e03\u5f0f\u9501"},{label:"\u6570\u636e\u6301\u4e45\u5316",permalink:"/pangu-framework/docs/tags/\u6570\u636e\u6301\u4e45\u5316"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:15,frontMatter:{title:"\u5206\u5e03\u5f0f\u9501",tags:["\u5206\u5e03\u5f0f\u9501","\u6570\u636e\u6301\u4e45\u5316"],sidebar_position:15,slug:"/advanced-guide/distributed-lock"},sidebar:"tutorialSidebar",previous:{title:"\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58",permalink:"/pangu-framework/docs/advanced-guide/layering-cache"},next:{title:"\u5206\u5e03\u5f0f\u4e8b\u52a1",permalink:"/pangu-framework/docs/advanced-guide/distributed-transaction"}},u={},s=[{value:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",level:2},{value:"\u672c\u5730\u914d\u7f6e",id:"\u672c\u5730\u914d\u7f6e",level:2},{value:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e",id:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e",level:2},{value:"@Lock4j",id:"lock4j",level:3},{value:"\u4ee3\u7801\u7247\u6bb5",id:"\u4ee3\u7801\u7247\u6bb5",level:3},{value:"\u57fa\u4e8e API \u7f16\u7a0b",id:"\u57fa\u4e8e-api-\u7f16\u7a0b",level:2},{value:"\u542f\u52a8\u5165\u53e3",id:"\u542f\u52a8\u5165\u53e3",level:2},{value:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],d={toc:s};function m(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("head",null,(0,r.kt)("title",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j"),(0,r.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j"})),(0,r.kt)("p",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u57fa\u4e8e ",(0,r.kt)("a",{parentName:"p",href:"https://gitee.com/baomidou/lock4j"},"Lock4j")," \u63d0\u4f9b\u5206\u5e03\u5f0f\u9501\u3002\u652f\u6301\u6ce8\u89e3\u58f0\u660e\u5f0f\u548c API \u7f16\u7a0b\u5f0f\u5bf9\u4e1a\u52a1\u4ee3\u7801\u5728\u5206\u5e03\u5f0f\u73af\u5883\u4e0b\u52a0\u5e76\u53d1\u9501\u3002"),(0,r.kt)("h2",{id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"},"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"),(0,r.kt)(l.Z,{mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"parent",label:"\u76d8\u53e4 Parent",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<parent>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-parent</artifactId>\n <version>latest.version.xxx</version>\n <relativePath/>\n</parent>\n"))),(0,r.kt)(o.Z,{value:"dependency1",label:"\u57fa\u7840\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-spring-boot-starter</artifactId>\n</dependency>\n"))),(0,r.kt)(o.Z,{value:"dependency2",label:"\u7f13\u5b58\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-cache-spring-boot-starter</artifactId>\n</dependency>\n")))),(0,r.kt)("h2",{id:"\u672c\u5730\u914d\u7f6e"},"\u672c\u5730\u914d\u7f6e"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"\u4e3a\u4fbf\u4e8e\u7406\u89e3\uff0c\u672c\u6587\u57fa\u4e8e\u672c\u5730\u914d\u7f6e\u7684\u65b9\u5f0f\u7f16\u5199\u3002\u82e5\u6539\u4e3a\u6807\u51c6\u7684 Nacos \u914d\u7f6e\u4e2d\u5fc3\u6a21\u5f0f\uff0c\u8bf7\u53c2\u9605\uff1a",(0,r.kt)("a",{parentName:"p",href:"/docs/advanced-guide/nacos-config-center"},"\u914d\u7f6e\u4e2d\u5fc3")," \u7ae0\u8282\u3002")),(0,r.kt)(l.Z,{defaultValue:"application-dev",mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"application",label:"application.properties",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.profiles.active=${spring.profiles.active:dev}\n"))),(0,r.kt)(o.Z,{value:"application-dev",label:"application-dev.properties",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.application.name=pangu-examples-lock-redis-based\n\n# spring-redis\nspring.redis.host=localhost\nspring.redis.database=1\nspring.redis.port=6379\nspring.redis.password=\n\nlogging.level.root=INFO\nlogging.level.com.gitee.pulanos.pangu=INFO\n")))),(0,r.kt)("h2",{id:"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e"},"\u57fa\u4e8e\u6ce8\u89e3\u58f0\u660e"),(0,r.kt)("p",null,"\u76f4\u63a5\u5728\u9700\u8981\u7f13\u5b58\u7684\u65b9\u6cd5\u4e0a\u52a0\u4e0a ",(0,r.kt)("inlineCode",{parentName:"p"},"@Lock4j")," \u6ce8\u89e3\u3002"),(0,r.kt)("h3",{id:"lock4j"},"@Lock4j"),(0,r.kt)("p",null,"\u5206\u5e03\u5f0f\u9501\u6ce8\u89e3\u3002"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"\u540d\u79f0"),(0,r.kt)("th",{parentName:"tr",align:null},"\u9ed8\u8ba4\u503c"),(0,r.kt)("th",{parentName:"tr",align:null},"\u8bf4\u660e"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"name"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7a7a\u5b57\u7b26\u4e32"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7528\u4e8e\u591a\u4e2a\u65b9\u6cd5\u9501\u540c\u4e00\u628a\u9501 \u53ef\u4ee5\u7406\u89e3\u4e3a\u9501\u8d44\u6e90\u540d\u79f0\uff0c\u4e3a\u7a7a\u5219\u4f1a\u4f7f\u7528\uff1a\u5305\u540d + \u7c7b\u540d + \u65b9\u6cd5\u540d\u3002\uff08\u4e00\u822c\u4e3a\u7a7a\u5373\u53ef\uff09")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"keys"),(0,r.kt)("td",{parentName:"tr",align:null},"\u7a7a\u5b57\u7b26\u4e32"),(0,r.kt)("td",{parentName:"tr",align:null},"\u652f\u6301 SPEL \u8868\u8fbe\u5f0f\uff0c\u9501\u7684 key = name + keys")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"acquireTimeout"),(0,r.kt)("td",{parentName:"tr",align:null},"3000"),(0,r.kt)("td",{parentName:"tr",align:null},"\u83b7\u53d6\u9501\u8d85\u65f6\u65f6\u95f4 \u5355\u4f4d\uff1a\u6beb\u79d2\u3002\u53ef\u4ee5\u7406\u89e3\u4e3a\u6392\u961f\u65f6\u5e38\uff0c\u8d85\u8fc7\u8fd9\u4e2a\u65f6\u5e38\u5c31\u9000\u51fa\u6392\u961f\uff0c\u629b\u51fa\u83b7\u53d6\u9501\u8d85\u65f6\u5f02\u5e38\u3002")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"expire"),(0,r.kt)("td",{parentName:"tr",align:null},"30000"),(0,r.kt)("td",{parentName:"tr",align:null},"\u8fc7\u671f\u65f6\u95f4 \u5355\u4f4d\uff1a\u6beb\u79d2\u3002\u4e3b\u8981\u662f\u9632\u6b62\u6b7b\u9501\uff0c\u5efa\u8bae\u4f30\u8ba1\u597d\u4f60\u9501\u65b9\u6cd5\u8fd0\u884c\u65f6\u5e38\uff0c\u6b63\u5e38\u6ca1\u6709\u590d\u6742\u4e1a\u52a1\u7684\u589e\u5220\u6539\u67e5\u6700\u591a\u51e0\u79d2\uff0c\u7559\u6709\u4e00\u5b9a\u5197\u4f59\uff0c10 \u79d2\u8db3\u591f\u3002\u9ed8\u8ba4 30 \u79d2\u662f\u4e3a\u4e86\u517c\u5bb9\u7edd\u5927\u90e8\u5206\u573a\u666f\u3002")))),(0,r.kt)("h3",{id:"\u4ee3\u7801\u7247\u6bb5"},"\u4ee3\u7801\u7247\u6bb5"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},'/**\n * \u9ed8\u8ba4\u83b7\u53d6\u9501\u8d85\u65f6 3 \u79d2\uff0c30 \u79d2\u9501\u8fc7\u671f\n */\n@Lock4j\npublic void doBiz() {\n log.info("\u6267\u884cdoBiz...");\n ThreadUtil.sleep(25*1000);\n}\n\n/**\n * \u914d\u7f6e\u83b7\u53d6\u9501\u8d85\u65f6\u65f6\u95f4\u548c\u9501\u8fc7\u671f\u65f6\u95f4 \u652f\u6301 SPEL\n * @param accountId\n */\n@Lock4j(keys = {"#accountId"}, expire = 20000, acquireTimeout = 10000)\npublic void doBiz2(Long accountId) {\n log.info("\u6267\u884cdoBiz2...");\n ThreadUtil.sleep(20*1000);\n}\n')),(0,r.kt)("h2",{id:"\u57fa\u4e8e-api-\u7f16\u7a0b"},"\u57fa\u4e8e API \u7f16\u7a0b"),(0,r.kt)("p",null,"\u6ce8\u5165 LockTemplate \u5bf9\u8c61\u5373\u53ef\u4f7f\u7528\u3002\u5982\u4e0b\u4ee3\u7801\u6240\u793a\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},'@Component\npublic class ApiLockService {\n\n @Autowired\n private LockTemplate lockTemplate;\n\n public void apiLock(String userId) {\n //... \u5404\u79cd\u4e0d\u9700\u8981\u4e0a\u9501\u7684\u64cd\u4f5c\n String lockKey = "lock4j:ApiLockService:apiLock:" + userId;\n final LockInfo lockInfo = lockTemplate.lock(lockKey);\n //\u7533\u8bf7\u9501\u5931\u8d25\n if (null == lockInfo) {\n throw new LockException("\u4e1a\u52a1\u5904\u7406\u4e2d\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5...");\n }\n //\u7533\u8bf7\u9501\u6210\u529f\n try {\n ThreadUtil.sleep(10000L);\n log.info("\u6267\u884c apiLock, \u5f53\u524d\u7ebf\u7a0b{}", Thread.currentThread().getName());\n } finally {\n lockTemplate.releaseLock(lockInfo);\n }\n }\n\n}\n')),(0,r.kt)("h2",{id:"\u542f\u52a8\u5165\u53e3"},"\u542f\u52a8\u5165\u53e3"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"@SpringBootApplication\npublic class LockPanguApplication {\n public static void main(String[] args) {\n PanGuApplicationBuilder.init(LockPanguApplication.class).run(args);\n }\n}\n")),(0,r.kt)("h2",{id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"},"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-examples/pangu-examples-lock-redis-based"},"pangu-examples-lock-redis-based"),"\uff1a\u5206\u5e03\u5f0f\u9501\u8303\u4f8b")),(0,r.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,r.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,r.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}m.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3751],{9861:(e,t,a)=>{a.r(t),a.d(t,{default:()=>E});var l=a(7294),n=a(6010),r=a(5999);var c=a(1944),s=a(5281),m=a(3929),o=a(3008);const u="tag_Nnez";function i(e){let{letterEntry:t}=e;return l.createElement("article",null,l.createElement("h2",null,t.letter),l.createElement("ul",{className:"padding--none"},t.tags.map((e=>l.createElement("li",{key:e.permalink,className:u},l.createElement(o.Z,e))))),l.createElement("hr",null))}function g(e){let{tags:t}=e;const a=function(e){const t={};return Object.values(e).forEach((e=>{const a=function(e){return e[0].toUpperCase()}(e.label);t[a]??=[],t[a].push(e)})),Object.entries(t).sort(((e,t)=>{let[a]=e,[l]=t;return a.localeCompare(l)})).map((e=>{let[t,a]=e;return{letter:t,tags:a.sort(((e,t)=>e.label.localeCompare(t.label)))}}))}(t);return l.createElement("section",{className:"margin-vert--lg"},a.map((e=>l.createElement(i,{key:e.letter,letterEntry:e}))))}var p=a(197);function E(e){let{tags:t}=e;const a=(0,r.I)({id:"theme.tags.tagsPageTitle",message:"Tags",description:"The title of the tag list page"});return l.createElement(c.FG,{className:(0,n.Z)(s.k.wrapper.docsPages,s.k.page.docsTagsListPage)},l.createElement(c.d,{title:a}),l.createElement(p.Z,{tag:"doc_tags_list"}),l.createElement(m.Z,null,l.createElement("div",{className:"container margin-vert--lg"},l.createElement("div",{className:"row"},l.createElement("main",{className:"col col--8 col--offset-2"},l.createElement("h1",null,a),l.createElement(g,{tags:t}))))))}},3008:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),n=a(6010),r=a(9960);const c="tag_zVej",s="tagRegular_sFm0",m="tagWithCount_h2kH";function o(e){let{permalink:t,label:a,count:o}=e;return l.createElement(r.Z,{href:t,className:(0,n.Z)(c,o?m:s)},a,o&&l.createElement("span",null,o))}}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1916],{4279:a=>{a.exports=JSON.parse('{"label":"\u76d8\u53e4 Admin","permalink":"/pangu-framework/docs/tags/\u76d8\u53e4-admin","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"pangu-admin/\u76d8\u53e4 Admin \u5feb\u901f\u5f00\u59cb","title":"\u76d8\u53e4 Admin \u5feb\u901f\u5f00\u59cb","description":"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u5feb\u901f\u5f00\u59cb | SUCI(Vue3\u3001Element-Plus) | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6","permalink":"/pangu-framework/docs/pangu-admin/quick-start"},{"id":"pangu-admin/\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757","title":"\u65b0\u589e\u4e1a\u52a1\u529f\u80fd\u6a21\u5757","description":"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | \u65b0\u589e\u4e1a\u52a1\u6a21\u5757 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6","permalink":"/pangu-framework/docs/pangu-admin/new-module"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[9143],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>g});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var u=n.createContext({}),s=function(e){var t=n.useContext(u),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},p=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},c="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),c=s(a),m=r,g=c["".concat(u,".").concat(m)]||c[m]||d[m]||l;return a?n.createElement(g,o(o({ref:t},p),{},{components:a})):n.createElement(g,o({ref:t},p))}));function g(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=m;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[c]="string"==typeof e?e:r,o[1]=i;for(var s=2;s<l;s++)o[s]=a[s];return n.createElement.apply(null,o)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},5162:(e,t,a)=>{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l="tabItem_Ymn6";function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l,o),hidden:a},t)}},5488:(e,t,a)=>{a.d(t,{Z:()=>m});var n=a(7462),r=a(7294),l=a(6010),o=a(2389),i=a(7392),u=a(7094),s=a(2466);const p="tabList__CuJ",c="tabItem_LNqP";function d(e){const{lazy:t,block:a,defaultValue:o,values:d,groupId:m,className:g}=e,b=r.Children.map(e.children,(e=>{if((0,r.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)})),f=d??b.map((e=>{let{props:{value:t,label:a,attributes:n}}=e;return{value:t,label:a,attributes:n}})),k=(0,i.l)(f,((e,t)=>e.value===t.value));if(k.length>0)throw new Error(`Docusaurus error: Duplicate values "${k.map((e=>e.value)).join(", ")}" found in <Tabs>. Every value needs to be unique.`);const v=null===o?o:o??b.find((e=>e.props.default))?.props.value??b[0].props.value;if(null!==v&&!f.some((e=>e.value===v)))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${v}" but none of its children has the corresponding value. Available values are: ${f.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:y,setTabGroupChoices:h}=(0,u.U)(),[w,N]=(0,r.useState)(v),x=[],{blockElementScrollPositionUntilNextRender:O}=(0,s.o5)();if(null!=m){const e=y[m];null!=e&&e!==w&&f.some((t=>t.value===e))&&N(e)}const T=e=>{const t=e.currentTarget,a=x.indexOf(t),n=f[a].value;n!==w&&(O(t),N(n),null!=m&&h(m,String(n)))},E=e=>{let t=null;switch(e.key){case"Enter":T(e);break;case"ArrowRight":{const a=x.indexOf(e.currentTarget)+1;t=x[a]??x[0];break}case"ArrowLeft":{const a=x.indexOf(e.currentTarget)-1;t=x[a]??x[x.length-1];break}}t?.focus()};return r.createElement("div",{className:(0,l.Z)("tabs-container",p)},r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},g)},f.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:w===t?0:-1,"aria-selected":w===t,key:t,ref:e=>x.push(e),onKeyDown:E,onClick:T},o,{className:(0,l.Z)("tabs__item",c,o?.className,{"tabs__item--active":w===t})}),a??t)}))),t?(0,r.cloneElement)(b.filter((e=>e.props.value===w))[0],{className:"margin-top--md"}):r.createElement("div",{className:"margin-top--md"},b.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==w})))))}function m(e){const t=(0,o.Z)();return r.createElement(d,(0,n.Z)({key:String(t)},e))}},6361:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>u,default:()=>m,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var n=a(7462),r=(a(7294),a(3905)),l=a(5488),o=a(5162);const i={title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",tags:["\u5feb\u901f\u5f00\u59cb"],sidebar_position:15,slug:"/quick-start/how-to-make-monomer-architecture-app"},u=void 0,s={unversionedId:"quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",id:"quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",description:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",source:"@site/docs/quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528.md",sourceDirName:"quick-start",slug:"/quick-start/how-to-make-monomer-architecture-app",permalink:"/docs/quick-start/how-to-make-monomer-architecture-app",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528.md",tags:[{label:"\u5feb\u901f\u5f00\u59cb",permalink:"/docs/tags/\u5feb\u901f\u5f00\u59cb"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:15,frontMatter:{title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",tags:["\u5feb\u901f\u5f00\u59cb"],sidebar_position:15,slug:"/quick-start/how-to-make-monomer-architecture-app"},sidebar:"tutorialSidebar",previous:{title:"\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4",permalink:"/docs/quick-start/how-to-make-architecture"},next:{title:"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528",permalink:"/docs/quick-start/how-to-make-microservice-architecture-app"}},p={},c=[{value:"\u80cc\u666f",id:"\u80cc\u666f",level:2},{value:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",level:2},{value:"\u672c\u5730\u914d\u7f6e",id:"\u672c\u5730\u914d\u7f6e",level:2},{value:"\u542f\u52a8\u5165\u53e3",id:"\u542f\u52a8\u5165\u53e3",level:2},{value:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],d={toc:c};function m(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("head",null,(0,r.kt)("title",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528 "),(0,r.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528"})),(0,r.kt)("p",null,"\u672c\u6587\u4ecb\u7ecd\u5982\u4f55\u57fa\u4e8e\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u5f00\u53d1\u4e00\u4e2a\u5355\u4f53\u5206\u5c42\u67b6\u6784\u7684\u5e94\u7528\u3002\u6587\u4e2d\u6240\u8ff0\u4ec5\u4e3a\u642d\u5efa\u4e00\u4e2a\u5355\u4f53\u5e94\u7528\u7684\u57fa\u672c\u6846\u67b6\uff0c\u589e\u52a0",(0,r.kt)("strong",{parentName:"p"},"\u914d\u7f6e\u4e2d\u5fc3\u3001\u6570\u636e\u6301\u4e45\u5316\u3001\u7f13\u5b58\u7b49\u80fd\u529b"),"\u8bf7\u53c2\u8003",(0,r.kt)("strong",{parentName:"p"},"\u5f00\u53d1\u6307\u5357"),"\u7684\u76f8\u5173\u7ae0\u8282\u3002"),(0,r.kt)("h2",{id:"\u80cc\u666f"},"\u80cc\u666f"),(0,r.kt)("p",null,"\u8f6f\u4ef6\u67b6\u6784\u7684\u672c\u8d28\u662f\u4e00\u79cd\u5728\u7279\u5b9a\u8d44\u6e90\u80cc\u666f\u4e0b\u6298\u4e2d\u5e73\u8861\u540e\u8ffd\u6c42\u4e1a\u52a1\u589e\u957f\u7684\u4e00\u95e8\u827a\u672f\u3002\u867d\u7136\u76d8\u53e4\u6846\u67b6\u7684\u6807\u51c6\u59ff\u52bf\u662f\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u5f00\u53d1\uff0c\u4f46\u51b3\u5b9a\u6280\u672f\u5f00\u53d1\u67b6\u6784\u9009\u578b\u7684\u56e0\u7d20\u5f88\u591a\uff0c\u5355\u4f53\u5e94\u7528\u4f9d\u65e7\u6709\u5f88\u591a\u5e94\u7528\u573a\u666f\u3002\u56e0\u6b64\uff0c\u76d8\u53e4\u6846\u67b6\u4e0d\u4f1a\u628a\u7528\u6237\u7ed1\u5b9a\u5230\u4e00\u4e2a\u56fa\u5b9a\u7684\u5f00\u53d1\u8303\u5f0f\u548c\u67b6\u6784\u4e0a\uff0c\u800c\u662f\u652f\u6301\u968f\u610f\u7ec4\u5408\u3001\u81ea\u52a8\u88c5\u914d\u3001\u7075\u6d3b\u63d2\u62d4\u3002\u65e2\u80fd\u6784\u5efa\u5927\u5e76\u53d1\u9ad8\u53ef\u7528\u7684\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u4e5f\u80fd\u642d\u5efa\u5c0f\u5de7\u7684\u5782\u76f4\u5355\u4f53\u5206\u5c42\u67b6\u6784\u3002"),(0,r.kt)("h2",{id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"},"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"),(0,r.kt)(l.Z,{defaultValue:"dependency2",mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"parent",label:"\u76d8\u53e4 Parent",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<parent>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-parent</artifactId>\n <version>latest.version.xxx</version>\n <relativePath/>\n</parent>\n"))),(0,r.kt)(o.Z,{value:"dependency1",label:"\u57fa\u7840\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-spring-boot-starter</artifactId>\n</dependency>\n"))),(0,r.kt)(o.Z,{value:"dependency2",label:"Web\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-web-spring-boot-starter</artifactId>\n</dependency>\n")))),(0,r.kt)("admonition",{title:"\u8bf4\u660e",type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"\u8fd9\u91cc\u4ec5\u6f14\u793a\u4e86\u6700\u7b80\u6a21\u5757\u7ec4\u5408\u3002\u5982\u679c\u9700\u8981\u6570\u636e\u6301\u4e45\u5316\u3001\u6d88\u606f\u961f\u5217\u7b49\u529f\u80fd\uff0c\u8bf7\u6839\u636e\u5f00\u53d1\u6307\u5357\u76f8\u5173\u7ae0\u8282\u7ee7\u7eed\u5b89\u88c5\u76f8\u5173\u6a21\u5757\u4f9d\u8d56\u5373\u53ef\u3002")),(0,r.kt)("h2",{id:"\u672c\u5730\u914d\u7f6e"},"\u672c\u5730\u914d\u7f6e"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"\u4e3a\u4fbf\u4e8e\u7406\u89e3\uff0c\u672c\u6587\u57fa\u4e8e\u672c\u5730\u914d\u7f6e\u7684\u65b9\u5f0f\u7f16\u5199\u3002\u82e5\u6539\u4e3a\u6807\u51c6\u7684 Nacos \u914d\u7f6e\u4e2d\u5fc3\u6a21\u5f0f\uff0c\u8bf7\u53c2\u9605\uff1a",(0,r.kt)("a",{parentName:"p",href:"/docs/advanced-guide/nacos-config-center"},"\u914d\u7f6e\u4e2d\u5fc3")," \u7ae0\u8282\u3002")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.application.name=pangu-examples-empty-web\nspring.jackson.time-zone=GMT+8\n\nlogging.level.root=INFO\nlogging.level.com.gitee.pulanos.pangu=INFO\n")),(0,r.kt)("h2",{id:"\u542f\u52a8\u5165\u53e3"},"\u542f\u52a8\u5165\u53e3"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"@SpringBootApplication\npublic class EmptyWebPanguApplication {\n public static void main(String[] args) {\n PanGuApplicationBuilder.init(EmptyWebPanguApplication.class).run(args);\n }\n}\n")),(0,r.kt)("h2",{id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"},"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-examples/pangu-examples-empty-web"},"pangu-examples-empty-web"),"\uff1a\u5355\u4f53\u5206\u5c42Web\u5e94\u7528\u8303\u4f8b")),(0,r.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,r.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,r.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}m.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[9143],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>g});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function i(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var u=n.createContext({}),p=function(e){var t=n.useContext(u),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},s=function(e){var t=p(e.components);return n.createElement(u.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,u=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),c=p(a),d=r,g=c["".concat(u,".").concat(d)]||c[d]||m[d]||l;return a?n.createElement(g,o(o({ref:t},s),{},{components:a})):n.createElement(g,o({ref:t},s))}));function g(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,o=new Array(l);o[0]=d;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[c]="string"==typeof e?e:r,o[1]=i;for(var p=2;p<l;p++)o[p]=a[p];return n.createElement.apply(null,o)}return n.createElement.apply(null,a)}d.displayName="MDXCreateElement"},5162:(e,t,a)=>{a.d(t,{Z:()=>o});var n=a(7294),r=a(6010);const l="tabItem_Ymn6";function o(e){let{children:t,hidden:a,className:o}=e;return n.createElement("div",{role:"tabpanel",className:(0,r.Z)(l,o),hidden:a},t)}},5488:(e,t,a)=>{a.d(t,{Z:()=>d});var n=a(7462),r=a(7294),l=a(6010),o=a(2389),i=a(7392),u=a(7094),p=a(2466);const s="tabList__CuJ",c="tabItem_LNqP";function m(e){const{lazy:t,block:a,defaultValue:o,values:m,groupId:d,className:g}=e,b=r.Children.map(e.children,(e=>{if((0,r.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)})),f=m??b.map((e=>{let{props:{value:t,label:a,attributes:n}}=e;return{value:t,label:a,attributes:n}})),k=(0,i.l)(f,((e,t)=>e.value===t.value));if(k.length>0)throw new Error(`Docusaurus error: Duplicate values "${k.map((e=>e.value)).join(", ")}" found in <Tabs>. Every value needs to be unique.`);const v=null===o?o:o??b.find((e=>e.props.default))?.props.value??b[0].props.value;if(null!==v&&!f.some((e=>e.value===v)))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${v}" but none of its children has the corresponding value. Available values are: ${f.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:y,setTabGroupChoices:h}=(0,u.U)(),[w,N]=(0,r.useState)(v),x=[],{blockElementScrollPositionUntilNextRender:O}=(0,p.o5)();if(null!=d){const e=y[d];null!=e&&e!==w&&f.some((t=>t.value===e))&&N(e)}const T=e=>{const t=e.currentTarget,a=x.indexOf(t),n=f[a].value;n!==w&&(O(t),N(n),null!=d&&h(d,String(n)))},E=e=>{let t=null;switch(e.key){case"Enter":T(e);break;case"ArrowRight":{const a=x.indexOf(e.currentTarget)+1;t=x[a]??x[0];break}case"ArrowLeft":{const a=x.indexOf(e.currentTarget)-1;t=x[a]??x[x.length-1];break}}t?.focus()};return r.createElement("div",{className:(0,l.Z)("tabs-container",s)},r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},g)},f.map((e=>{let{value:t,label:a,attributes:o}=e;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:w===t?0:-1,"aria-selected":w===t,key:t,ref:e=>x.push(e),onKeyDown:E,onClick:T},o,{className:(0,l.Z)("tabs__item",c,o?.className,{"tabs__item--active":w===t})}),a??t)}))),t?(0,r.cloneElement)(b.filter((e=>e.props.value===w))[0],{className:"margin-top--md"}):r.createElement("div",{className:"margin-top--md"},b.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==w})))))}function d(e){const t=(0,o.Z)();return r.createElement(m,(0,n.Z)({key:String(t)},e))}},6361:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>u,default:()=>d,frontMatter:()=>i,metadata:()=>p,toc:()=>c});var n=a(7462),r=(a(7294),a(3905)),l=a(5488),o=a(5162);const i={title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",tags:["\u5feb\u901f\u5f00\u59cb"],sidebar_position:15,slug:"/quick-start/how-to-make-monomer-architecture-app"},u=void 0,p={unversionedId:"quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",id:"quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",description:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",source:"@site/docs/quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528.md",sourceDirName:"quick-start",slug:"/quick-start/how-to-make-monomer-architecture-app",permalink:"/pangu-framework/docs/quick-start/how-to-make-monomer-architecture-app",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528.md",tags:[{label:"\u5feb\u901f\u5f00\u59cb",permalink:"/pangu-framework/docs/tags/\u5feb\u901f\u5f00\u59cb"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:15,frontMatter:{title:"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528",tags:["\u5feb\u901f\u5f00\u59cb"],sidebar_position:15,slug:"/quick-start/how-to-make-monomer-architecture-app"},sidebar:"tutorialSidebar",previous:{title:"\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4",permalink:"/pangu-framework/docs/quick-start/how-to-make-architecture"},next:{title:"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528",permalink:"/pangu-framework/docs/quick-start/how-to-make-microservice-architecture-app"}},s={},c=[{value:"\u80cc\u666f",id:"\u80cc\u666f",level:2},{value:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757",level:2},{value:"\u672c\u5730\u914d\u7f6e",id:"\u672c\u5730\u914d\u7f6e",level:2},{value:"\u542f\u52a8\u5165\u53e3",id:"\u542f\u52a8\u5165\u53e3",level:2},{value:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],m={toc:c};function d(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("head",null,(0,r.kt)("title",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528 "),(0,r.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528"})),(0,r.kt)("p",null,"\u672c\u6587\u4ecb\u7ecd\u5982\u4f55\u57fa\u4e8e\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u5f00\u53d1\u4e00\u4e2a\u5355\u4f53\u5206\u5c42\u67b6\u6784\u7684\u5e94\u7528\u3002\u6587\u4e2d\u6240\u8ff0\u4ec5\u4e3a\u642d\u5efa\u4e00\u4e2a\u5355\u4f53\u5e94\u7528\u7684\u57fa\u672c\u6846\u67b6\uff0c\u589e\u52a0",(0,r.kt)("strong",{parentName:"p"},"\u914d\u7f6e\u4e2d\u5fc3\u3001\u6570\u636e\u6301\u4e45\u5316\u3001\u7f13\u5b58\u7b49\u80fd\u529b"),"\u8bf7\u53c2\u8003",(0,r.kt)("strong",{parentName:"p"},"\u5f00\u53d1\u6307\u5357"),"\u7684\u76f8\u5173\u7ae0\u8282\u3002"),(0,r.kt)("h2",{id:"\u80cc\u666f"},"\u80cc\u666f"),(0,r.kt)("p",null,"\u8f6f\u4ef6\u67b6\u6784\u7684\u672c\u8d28\u662f\u4e00\u79cd\u5728\u7279\u5b9a\u8d44\u6e90\u80cc\u666f\u4e0b\u6298\u4e2d\u5e73\u8861\u540e\u8ffd\u6c42\u4e1a\u52a1\u589e\u957f\u7684\u4e00\u95e8\u827a\u672f\u3002\u867d\u7136\u76d8\u53e4\u6846\u67b6\u7684\u6807\u51c6\u59ff\u52bf\u662f\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u5f00\u53d1\uff0c\u4f46\u51b3\u5b9a\u6280\u672f\u5f00\u53d1\u67b6\u6784\u9009\u578b\u7684\u56e0\u7d20\u5f88\u591a\uff0c\u5355\u4f53\u5e94\u7528\u4f9d\u65e7\u6709\u5f88\u591a\u5e94\u7528\u573a\u666f\u3002\u56e0\u6b64\uff0c\u76d8\u53e4\u6846\u67b6\u4e0d\u4f1a\u628a\u7528\u6237\u7ed1\u5b9a\u5230\u4e00\u4e2a\u56fa\u5b9a\u7684\u5f00\u53d1\u8303\u5f0f\u548c\u67b6\u6784\u4e0a\uff0c\u800c\u662f\u652f\u6301\u968f\u610f\u7ec4\u5408\u3001\u81ea\u52a8\u88c5\u914d\u3001\u7075\u6d3b\u63d2\u62d4\u3002\u65e2\u80fd\u6784\u5efa\u5927\u5e76\u53d1\u9ad8\u53ef\u7528\u7684\u5206\u5e03\u5f0f\u5fae\u670d\u52a1\u67b6\u6784\u4e5f\u80fd\u642d\u5efa\u5c0f\u5de7\u7684\u5782\u76f4\u5355\u4f53\u5206\u5c42\u67b6\u6784\u3002"),(0,r.kt)("h2",{id:"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"},"\u5b89\u88c5\u76f8\u5173\u76d8\u53e4\u6a21\u5757"),(0,r.kt)(l.Z,{defaultValue:"dependency2",mdxType:"Tabs"},(0,r.kt)(o.Z,{value:"parent",label:"\u76d8\u53e4 Parent",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<parent>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-parent</artifactId>\n <version>latest.version.xxx</version>\n <relativePath/>\n</parent>\n"))),(0,r.kt)(o.Z,{value:"dependency1",label:"\u57fa\u7840\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-spring-boot-starter</artifactId>\n</dependency>\n"))),(0,r.kt)(o.Z,{value:"dependency2",label:"Web\u6a21\u5757",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"<dependency>\n <groupId>com.gitee.pulanos.pangu</groupId>\n <artifactId>pangu-web-spring-boot-starter</artifactId>\n</dependency>\n")))),(0,r.kt)("admonition",{title:"\u8bf4\u660e",type:"caution"},(0,r.kt)("p",{parentName:"admonition"},"\u8fd9\u91cc\u4ec5\u6f14\u793a\u4e86\u6700\u7b80\u6a21\u5757\u7ec4\u5408\u3002\u5982\u679c\u9700\u8981\u6570\u636e\u6301\u4e45\u5316\u3001\u6d88\u606f\u961f\u5217\u7b49\u529f\u80fd\uff0c\u8bf7\u6839\u636e\u5f00\u53d1\u6307\u5357\u76f8\u5173\u7ae0\u8282\u7ee7\u7eed\u5b89\u88c5\u76f8\u5173\u6a21\u5757\u4f9d\u8d56\u5373\u53ef\u3002")),(0,r.kt)("h2",{id:"\u672c\u5730\u914d\u7f6e"},"\u672c\u5730\u914d\u7f6e"),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"\u4e3a\u4fbf\u4e8e\u7406\u89e3\uff0c\u672c\u6587\u57fa\u4e8e\u672c\u5730\u914d\u7f6e\u7684\u65b9\u5f0f\u7f16\u5199\u3002\u82e5\u6539\u4e3a\u6807\u51c6\u7684 Nacos \u914d\u7f6e\u4e2d\u5fc3\u6a21\u5f0f\uff0c\u8bf7\u53c2\u9605\uff1a",(0,r.kt)("a",{parentName:"p",href:"/docs/advanced-guide/nacos-config-center"},"\u914d\u7f6e\u4e2d\u5fc3")," \u7ae0\u8282\u3002")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"spring.application.name=pangu-examples-empty-web\nspring.jackson.time-zone=GMT+8\n\nlogging.level.root=INFO\nlogging.level.com.gitee.pulanos.pangu=INFO\n")),(0,r.kt)("h2",{id:"\u542f\u52a8\u5165\u53e3"},"\u542f\u52a8\u5165\u53e3"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-jsx"},"@SpringBootApplication\npublic class EmptyWebPanguApplication {\n public static void main(String[] args) {\n PanGuApplicationBuilder.init(EmptyWebPanguApplication.class).run(args);\n }\n}\n")),(0,r.kt)("h2",{id:"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"},"\u672c\u6587\u76f8\u5173\u8303\u4f8b\u6e90\u7801"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-examples/pangu-examples-empty-web"},"pangu-examples-empty-web"),"\uff1a\u5355\u4f53\u5206\u5c42Web\u5e94\u7528\u8303\u4f8b")),(0,r.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,r.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,r.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}d.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[5283],{8812:e=>{e.exports=JSON.parse('{"label":"\u914d\u7f6e\u4e2d\u5fc3","permalink":"/docs/tags/\u914d\u7f6e\u4e2d\u5fc3","allTagsPath":"/docs/tags","count":1,"items":[{"id":"advanced-guide/\u914d\u7f6e\u4e2d\u5fc3","title":"\u914d\u7f6e\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | Nacos | \u914d\u7f6e\u52a8\u6001\u5316 | \u914d\u7f6e\u4e2d\u5fc3\u5316 | \u914d\u7f6e\u5916\u90e8\u5316","permalink":"/docs/advanced-guide/nacos-config-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[2505],{7610:e=>{e.exports=JSON.parse('{"label":"\u6570\u636e\u6301\u4e45\u5316","permalink":"/docs/tags/\u6570\u636e\u6301\u4e45\u5316","allTagsPath":"/docs/tags","count":6,"items":[{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/docs/code-generator"},{"id":"advanced-guide/\u5206\u5e03\u5f0f\u4e8b\u52a1","title":"\u5206\u5e03\u5f0f\u4e8b\u52a1","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u4e8b\u52a1 | Seata | AT\u3001TCC\u3001SAGA \u548c XA","permalink":"/docs/advanced-guide/distributed-transaction"},{"id":"advanced-guide/\u5206\u5e03\u5f0f\u9501","title":"\u5206\u5e03\u5f0f\u9501","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u9501 | Lock4j","permalink":"/docs/advanced-guide/distributed-lock"},{"id":"advanced-guide/\u6570\u636e\u6301\u4e45\u5316","title":"\u6570\u636e\u6301\u4e45\u5316","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6301\u4e45\u5316 | MyBatis Plus","permalink":"/docs/advanced-guide/data-persistance"},{"id":"advanced-guide/\u6570\u636e\u6cbb\u7406\u4e4b\u8bfb\u5199\u5206\u79bb","title":"\u6570\u636e\u6cbb\u7406\u4e4b\u8bfb\u5199\u5206\u79bb","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u8bfb\u5199\u5206\u79bb | \u6570\u636e\u5206\u7247 | \u6570\u636e\u52a0\u5bc6 | \u6570\u636e\u6cbb\u7406 | ShardingSphere-JDBC","permalink":"/docs/advanced-guide/readwrite-splitting"},{"id":"advanced-guide/\u6570\u636e\u6cbb\u7406\u4e4b\u6570\u636e\u5206\u7247","title":"\u6570\u636e\u6cbb\u7406\u4e4b\u6570\u636e\u5206\u7247","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6cbb\u7406 | \u6570\u636e\u5206\u7247 | \u6c34\u5e73\u5206\u7247 | \u5782\u76f4\u5206\u7247 | SQL\u8def\u7531 | SQL\u6539\u5199","permalink":"/docs/advanced-guide/data-sharding"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[4215],{6060:e=>{e.exports=JSON.parse('{"label":"\u76d8\u53e4\u67b6\u6784","permalink":"/docs/tags/\u76d8\u53e4\u67b6\u6784","allTagsPath":"/docs/tags","count":9,"items":[{"id":"\u5b89\u88c5","title":"\u5b89\u88c5","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5b89\u88c5 | \u4f9d\u8d56\u7ba1\u7406\u6a21\u5757 | \u57fa\u7840\u6a21\u5757 | Dubbo\u6a21\u5757 | JDBC\u6a21\u5757 | \u5206\u5e03\u5f0f\u4e8b\u52a1\u7ba1\u7406\u6a21\u5757 | \u6570\u636e\u6cbb\u7406\u6a21\u5757 | \u7f13\u5b58\u6a21\u5757 | \u6d88\u606f\u961f\u5217\u6a21\u5757 | \u7f51\u5173\u6a21\u5757 | Web\u6a21\u5757 | \u4ee3\u7801\u751f\u6210\u63d2\u4ef6","permalink":"/docs/install"},{"id":"devops/\u90e8\u7f72\u76f8\u5173","title":"\u90e8\u7f72\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/docs/deploy-guide/basic"},{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/docs/code-generator"},{"id":"advanced-guide/\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","title":"\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u8303\u4f8b\u6a21\u7248\u5de5\u7a0b | \u83b7\u53d6\u8303\u4f8b\u4ee3\u7801","permalink":"/docs/examples-list"},{"id":"intro","title":"\u7b80\u4ecb","description":"\u76d8\u53e4\u6846\u67b6\u6587\u6863 | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u7b80\u4ecb","permalink":"/docs/intro"},{"id":"quick-start/\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","title":"\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5fae\u670d\u52a1\u5206\u5e03\u5f0f\u67b6\u6784 | \u5355\u4f53\u5206\u5c42\u67b6\u6784 | \u76d8\u53e4\u5f00\u53d1\u67b6\u6784\u9009\u578b\u5bf9\u6bd4","permalink":"/docs/quick-start/how-to-make-architecture"},{"id":"advanced-guide/\u914d\u7f6e\u4e2d\u5fc3","title":"\u914d\u7f6e\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | Nacos | \u914d\u7f6e\u52a8\u6001\u5316 | \u914d\u7f6e\u4e2d\u5fc3\u5316 | \u914d\u7f6e\u5916\u90e8\u5316","permalink":"/docs/advanced-guide/nacos-config-center"},{"id":"devops/\u65e5\u5fd7\u76f8\u5173","title":"\u65e5\u5fd7\u76f8\u5173","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357","permalink":"/docs/deploy-guide/log"},{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[4203],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),c=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},u=function(e){var t=c(e.components);return r.createElement(p.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,p=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),s=c(n),m=a,g=s["".concat(p,".").concat(m)]||s[m]||d[m]||o;return n?r.createElement(g,l(l({ref:t},u),{},{components:n})):r.createElement(g,l({ref:t},u))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,l=new Array(o);l[0]=m;var i={};for(var p in t)hasOwnProperty.call(t,p)&&(i[p]=t[p]);i.originalType=e,i[s]="string"==typeof e?e:a,l[1]=i;for(var c=2;c<o;c++)l[c]=n[c];return r.createElement.apply(null,l)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},4891:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>l,default:()=>s,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const o={title:"\u65e5\u5fd7\u76f8\u5173",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784","\u90e8\u7f72\u8fd0\u7ef4"],sidebar_position:15,slug:"/deploy-guide/log"},l=void 0,i={unversionedId:"devops/\u65e5\u5fd7\u76f8\u5173",id:"devops/\u65e5\u5fd7\u76f8\u5173",title:"\u65e5\u5fd7\u76f8\u5173",description:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357",source:"@site/docs/devops/\u65e5\u5fd7\u76f8\u5173.md",sourceDirName:"devops",slug:"/deploy-guide/log",permalink:"/docs/deploy-guide/log",draft:!1,editUrl:"https://gitee.com/pulanos/pangu-framework/tree/master/pangu-website/docs/devops/\u65e5\u5fd7\u76f8\u5173.md",tags:[{label:"\u76d8\u53e4\u7b80\u4ecb",permalink:"/docs/tags/\u76d8\u53e4\u7b80\u4ecb"},{label:"\u76d8\u53e4\u67b6\u6784",permalink:"/docs/tags/\u76d8\u53e4\u67b6\u6784"},{label:"\u90e8\u7f72\u8fd0\u7ef4",permalink:"/docs/tags/\u90e8\u7f72\u8fd0\u7ef4"}],version:"current",lastUpdatedBy:"xiongchun",lastUpdatedAt:1671025715,formattedLastUpdatedAt:"2022\u5e7412\u670814\u65e5",sidebarPosition:15,frontMatter:{title:"\u65e5\u5fd7\u76f8\u5173",tags:["\u76d8\u53e4\u7b80\u4ecb","\u76d8\u53e4\u67b6\u6784","\u90e8\u7f72\u8fd0\u7ef4"],sidebar_position:15,slug:"/deploy-guide/log"},sidebar:"tutorialSidebar",previous:{title:"\u90e8\u7f72\u76f8\u5173",permalink:"/docs/deploy-guide/basic"}},p={},c=[{value:"\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a",id:"\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a",level:2},{value:"\u5982\u4f55\u4f7f\u7528",id:"\u5982\u4f55\u4f7f\u7528",level:3},{value:"\u5b9e\u9645\u65e5\u5fd7\u8f93\u51fa\u6548\u679c",id:"\u5b9e\u9645\u65e5\u5fd7\u8f93\u51fa\u6548\u679c",level:3},{value:"\u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362",id:"\u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362",level:2},{value:"\u4e0b\u4e00\u6b65",id:"\u4e0b\u4e00\u6b65",level:2}],u={toc:c};function s(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("head",null,(0,a.kt)("title",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357"),(0,a.kt)("meta",{name:"keywords",content:"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a | \u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362 | \u90e8\u7f72\u8fd0\u7ef4\u6307\u5357"})),(0,a.kt)("p",null,"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6\u4f7f\u7528 Spring Boot \u7684 logback \u4f5c\u4e3a\u7f3a\u7701\u7684\u65e5\u5fd7\u6846\u67b6\u5b9e\u73b0\u3002\u4f46\u6211\u4eec\u5bf9\u65e5\u5fd7\u505a\u4e86\u5982\u4e0b\u4e00\u4e9b\u589e\u5f3a\u529f\u80fd\u3002"),(0,a.kt)("h2",{id:"\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a"},"\u5206\u5e03\u5f0f\u65e5\u5fd7\u8ffd\u8e2a"),(0,a.kt)("p",null,"\u57fa\u4e8e\u5fae\u670d\u52a1\u67b6\u6784\u7684\u5e94\u7528\uff0c\u56e0\u4e3a\u4e1a\u52a1\u94fe\u8def\u8d2f\u7a7f\u7740\u5f88\u591a\u5fae\u670d\u52a1\u8282\u70b9\uff0c\u5bfc\u81f4\u5b9a\u4f4d\u67d0\u4e2a\u8bf7\u6c42\u7684\u65e5\u5fd7\u4ee5\u53ca\u4e0a\u4e0b\u6e38\u4e1a\u52a1\u7684\u65e5\u5fd7\u4f1a\u53d8\u5f97\u975e\u5e38\u56f0\u96be\u3002\u4e3a\u4e86\u89e3\u51b3\u8fd9\u4e00\u75db\u70b9\uff0c\n\u4e1a\u754c\u4e5f\u6709\u8bf8\u591a\u6210\u719f\u65b9\u6848\u3002\u5982 SkyWalking\uff0cPinpoint \u7b49\uff0c\u4f46\u5176\u8fd0\u7ef4\u6210\u672c\u548c\u6570\u636e\u5b58\u50a8\u6210\u672c\u5747\u4e0d\u53ef\u5c0f\u89d1\u3002\u5982\u679c\u6709\u76f8\u5e94\u7684\u8d44\u6e90\u53bb\u505a\u90a3\u5b83\u4eec\u81ea\u7136\u662f\u4e0d\u4e8c\u4e4b\u9009\u3002\n\u4f46\u5982\u679c\u4f60\u8d44\u6e90\u6709\u9650\uff0c\u90a3\u4e48\u8fd9\u91cc\u7ed9\u51fa\u4e00\u4e2a\u975e\u5e38\u8f7b\u91cf\u7684\u901a\u8fc7\u96c6\u6210 ",(0,a.kt)("a",{parentName:"p",href:"https://gitee.com/dromara/TLog"},"TLog")," \u6765\u89e3\u51b3\u65e5\u5fd7\u8ffd\u8e2a\u95ee\u9898\u7684\u65b9\u6848\u3002 "),(0,a.kt)("admonition",{title:"\u4ec0\u4e48\u662f TLog ?",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"TLog\u63d0\u4f9b\u4e86\u4e00\u79cd\u6700\u7b80\u5355\u7684\u65b9\u5f0f\u6765\u89e3\u51b3\u65e5\u5fd7\u8ffd\u8e2a\u95ee\u9898\uff0c\u5b83\u4e0d\u6536\u96c6\u65e5\u5fd7\uff0c\u4e5f\u4e0d\u9700\u8981\u53e6\u5916\u7684\u5b58\u50a8\u7a7a\u95f4\uff0c\u5b83\u53ea\u662f\u81ea\u52a8\u7684\u5bf9\u4f60\u7684\u65e5\u5fd7\u8fdb\u884c\u6253\u6807\u7b7e\uff0c\u81ea\u52a8\u751f\u6210TraceId\u8d2f\u7a7f\u4f60\u5fae\u670d\u52a1\u7684\u4e00\u6574\u6761\u94fe\u8def\u3002\u5e76\u4e14\u63d0\u4f9b\u4e0a\u4e0b\u6e38\u8282\u70b9\u4fe1\u606f\u3002")),(0,a.kt)("h3",{id:"\u5982\u4f55\u4f7f\u7528"},"\u5982\u4f55\u4f7f\u7528"),(0,a.kt)("p",null,"TLog \u5df2\u7ecf\u4f5c\u4e3a\u4e00\u4e2a\u6807\u51c6\u7f3a\u7701\u7ec4\u4ef6\u96c6\u6210\u8fdb\u4e86 ",(0,a.kt)("inlineCode",{parentName:"p"},"pangu-spring-boot-starter")," \u76d8\u53e4\u57fa\u7840\u6a21\u5757\u3002\u4f7f\u7528\u7684\u65f6\u5019\u53ea\u9700\u8981\u518d\u542f\u52a8\u7c7b\u4e2d\u52a0\u5165\u5982\u4e0b\u9759\u6001\u4ee3\u7801\u5757\u5c31\u53ef\u4ee5\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"static {\n AspectLogEnhance.enhance();\n}\n")),(0,a.kt)("h3",{id:"\u5b9e\u9645\u65e5\u5fd7\u8f93\u51fa\u6548\u679c"},"\u5b9e\u9645\u65e5\u5fd7\u8f93\u51fa\u6548\u679c"),(0,a.kt)("p",null,"\u6211\u4eec\u5728\u4e00\u4e2a Dubbo \u670d\u52a1\u6d88\u8d39\u8005\u548c\u4e00\u4e2a Dubbo \u670d\u52a1\u751f\u4ea7\u8005\u5e94\u7528\u4e2d\u5206\u522b\u505a\u5982\u4e0a\u914d\u7f6e\u540e\uff0c\u5c31\u53ef\u4ee5\u5728\u6bcf\u4e2a\u8c03\u7528\u94fe\u7684\u65e5\u5fd7\u91cc\u770b\u5230 TLog \u81ea\u5b9a\u5d4c\u5165\u7684 TraceId \u6807\u7b7e\u503c ",(0,a.kt)("inlineCode",{parentName:"p"},"10812814178142336"),"\u3002\u5982\u4e0b\u6240\u793a\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"\u6d88\u8d39\u7aef\uff1a\n2022-06-23 14:40:50 INFO 47050 - [nio-8080-exec-1] c.x.DemoController : < 0 >< 10812814178142336 > call case1...\n\u751f\u4ea7\u7aef\uff1a\n2022-06-23 14:40:50 INFO 46395 - [:20881-thread-4] c.x.UserServiceImpl : < 0.1 >< 10812814178142336 > \u53c2\u6570userIn\uff1aUserInDto(name=null, userType=1)\n")),(0,a.kt)("p",null,"\u5982\u679c\u662f HTTP \u8c03\u7528\uff0c\u5219 TraceId \u6807\u7b7e\u503c ",(0,a.kt)("inlineCode",{parentName:"p"},"10812814178142336")," \u4f1a\u5199\u5165\u5230 HTTP \u8bf7\u6c42\u7684\u54cd\u5e94\u6807\u9898\u4e2d\u3002\u5982\u4e0b\u6240\u793a\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"tlogTraceId: 10812814178142336\n")),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},"\u4ee5\u4e0a DEMO \u6848\u4f8b\u4ee3\u7801\u53ef\u5728\u5982\u4e0b\u8303\u4f8b\u4e2d\u627e\u5230\u3002"),(0,a.kt)("ul",{parentName:"blockquote"},(0,a.kt)("li",{parentName:"ul"},"pangu-examples-dubbo-service"),(0,a.kt)("li",{parentName:"ul"},"pangu-examples-webapi-dubbo-service-based"))),(0,a.kt)("h2",{id:"\u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362"},"\u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362"),(0,a.kt)("p",null,"\u4e3a\u4e86\u589e\u5f3a\u65e5\u5fd7\u8f93\u51fa\u7684\u53ef\u89c2\u6d4b\u6027\uff0c\u76d8\u53e4\u57fa\u7840\u6a21\u5757\u5b9e\u73b0\u4e86\u57fa\u4e8e\u914d\u7f6e\u4e2d\u5fc3\u7684\u65e5\u5fd7\u7ea7\u522b\u70ed\u5207\u6362\u80fd\u529b\u3002\u53ea\u9700\u8981\u5728\u914d\u7f6e\u4e2d\u5fc3\u4fee\u6539\u6216\u65b0\u589e\u65e5\u5fd7\u7ea7\u522b\u914d\u7f6e\uff0c\u5219\u5bf9\u5e94\u7684\u65e5\u5fd7\u8f93\u51fa\u7ea7\u522b\u5373\u523b\u5b9e\u65f6\u751f\u6548\u3002"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-jsx"},"#\u914d\u7f6e\u4e2d\u5fc3\u914d\u7f6e\u65e5\u5fd7\nlogging.level.root=INFO\nlogging.level.com.gitee.pulanos.pangu=INFO\n")),(0,a.kt)("h2",{id:"\u4e0b\u4e00\u6b65"},"\u4e0b\u4e00\u6b65"),(0,a.kt)("p",null,"\u7ee7\u7eed\u9605\u8bfb\u5176\u5b83\u7ae0\u8282\u83b7\u53d6\u4f60\u60f3\u8981\u7684\u7b54\u6848\u6216\u901a\u8fc7\u6211\u4eec\u7684 ",(0,a.kt)("a",{parentName:"p",href:"/community"},"\u5f00\u53d1\u8005\u793e\u533a")," \u5bfb\u6c42\u66f4\u591a\u5e2e\u52a9\u3002"))}s.isMDXComponent=!0}}]);
\ No newline at end of file
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3698],{3570:a=>{a.exports=JSON.parse('{"label":"Cache","permalink":"/pangu-framework/docs/tags/cache","allTagsPath":"/pangu-framework/docs/tags","count":1,"items":[{"id":"advanced-guide/\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","title":"\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58 | Laying Cache | \u7f13\u5b58\u51fb\u7a7f | \u7f13\u5b58\u96ea\u5d29","permalink":"/pangu-framework/docs/advanced-guide/layering-cache"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[3783],{5983:e=>{e.exports=JSON.parse('{"label":"\u914d\u7f6e\u4e2d\u5fc3","permalink":"/pangu-framework/docs/tags/\u914d\u7f6e\u4e2d\u5fc3","allTagsPath":"/pangu-framework/docs/tags","count":1,"items":[{"id":"advanced-guide/\u914d\u7f6e\u4e2d\u5fc3","title":"\u914d\u7f6e\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | Nacos | \u914d\u7f6e\u52a8\u6001\u5316 | \u914d\u7f6e\u4e2d\u5fc3\u5316 | \u914d\u7f6e\u5916\u90e8\u5316","permalink":"/pangu-framework/docs/advanced-guide/nacos-config-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[964],{4822:t=>{t.exports=JSON.parse('{"label":"\u5feb\u901f\u5f00\u59cb","permalink":"/docs/tags/\u5feb\u901f\u5f00\u59cb","allTagsPath":"/docs/tags","count":6,"items":[{"id":"advanced-guide/\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","title":"\u8303\u4f8b\u6a21\u7248\u5de5\u7a0b","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u8303\u4f8b\u6a21\u7248\u5de5\u7a0b | \u83b7\u53d6\u8303\u4f8b\u4ee3\u7801","permalink":"/docs/examples-list"},{"id":"quick-start/\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","title":"\u5f00\u53d1\u67b6\u6784\u6a21\u5f0f\u5bf9\u6bd4","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5fae\u670d\u52a1\u5206\u5e03\u5f0f\u67b6\u6784 | \u5355\u4f53\u5206\u5c42\u67b6\u6784 | \u76d8\u53e4\u5f00\u53d1\u67b6\u6784\u9009\u578b\u5bf9\u6bd4","permalink":"/docs/quick-start/how-to-make-architecture"},{"id":"quick-start/\u5982\u4f55\u57fa\u4e8e\u5fae\u670d\u52a1\u5f00\u53d1 Web \u63a5\u53e3","title":"\u5982\u4f55\u57fa\u4e8e\u5fae\u670d\u52a1\u5f00\u53d1 Web \u63a5\u53e3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u7f51\u5173\u5f00\u53d1\u6a21\u5f0f\u7b80\u4ecb | \u5982\u4f55\u5f00\u53d1 HTTP API \u63a5\u53e3","permalink":"/docs/quick-start/how-to-create-http-api"},{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528","title":"\u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5355\u4f53\u5e94\u7528","permalink":"/docs/quick-start/how-to-make-monomer-architecture-app"},{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","title":"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1 | \u670d\u52a1\u63d0\u4f9b\u8005 | \u670d\u52a1\u6d88\u8d39\u8005","permalink":"/docs/quick-start/how-to-make-microservice-architecture-app"},{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf","title":"\u5982\u4f55\u5f00\u53d1\u4e2d\u540e\u53f0\u4e1a\u52a1\u7cfb\u7edf","description":"\u76d8\u53e4\u901a\u7528\u6743\u9650\u7cfb\u7edf\u5f00\u53d1\u6846\u67b6 | PanGu Admin | \u76d8\u53e4\u5f00\u53d1\u6846\u67b6","permalink":"/docs/quick-start/how-to-make-admin-system"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[4956],{3762:e=>{e.exports=JSON.parse('{"label":"\u591a\u7ea7\u7f13\u5b58","permalink":"/docs/tags/\u591a\u7ea7\u7f13\u5b58","allTagsPath":"/docs/tags","count":1,"items":[{"id":"advanced-guide/\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","title":"\u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5206\u5e03\u5f0f\u591a\u7ea7\u7f13\u5b58 | Laying Cache | \u7f13\u5b58\u51fb\u7a7f | \u7f13\u5b58\u96ea\u5d29","permalink":"/docs/advanced-guide/layering-cache"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[6641],{2628:e=>{e.exports=JSON.parse('{"label":"\u670d\u52a1\u53d1\u73b0","permalink":"/docs/tags/\u670d\u52a1\u53d1\u73b0","allTagsPath":"/docs/tags","count":2,"items":[{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","title":"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1 | \u670d\u52a1\u63d0\u4f9b\u8005 | \u670d\u52a1\u6d88\u8d39\u8005","permalink":"/docs/quick-start/how-to-make-microservice-architecture-app"},{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[5536],{4243:e=>{e.exports=JSON.parse('{"label":"\u670d\u52a1\u53d1\u73b0","permalink":"/pangu-framework/docs/tags/\u670d\u52a1\u53d1\u73b0","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"quick-start/\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","title":"\u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1\u5e94\u7528","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u5982\u4f55\u5f00\u53d1\u5fae\u670d\u52a1 | \u670d\u52a1\u63d0\u4f9b\u8005 | \u670d\u52a1\u6d88\u8d39\u8005","permalink":"/pangu-framework/docs/quick-start/how-to-make-microservice-architecture-app"},{"id":"advanced-guide/\u6ce8\u518c\u4e2d\u5fc3","title":"\u6ce8\u518c\u4e2d\u5fc3","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u670d\u52a1\u53d1\u73b0\u548c\u670d\u52a1\u5065\u5eb7\u76d1\u6d4b | \u52a8\u6001\u914d\u7f6e\u670d\u52a1 | \u52a8\u6001 DNS \u670d\u52a1 | \u670d\u52a1\u53ca\u5176\u5143\u6570\u636e\u7ba1\u7406 | Nacos","permalink":"/pangu-framework/docs/advanced-guide/nacos-regist-center"}]}')}}]);
\ No newline at end of file
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
"use strict";(self.webpackChunkpangu_website=self.webpackChunkpangu_website||[]).push([[1465],{8838:a=>{a.exports=JSON.parse('{"label":"MyBatis","permalink":"/pangu-framework/docs/tags/my-batis","allTagsPath":"/pangu-framework/docs/tags","count":2,"items":[{"id":"advanced-guide/\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","title":"\u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u4ee3\u7801\u751f\u6210\u5668\u63d2\u4ef6","permalink":"/pangu-framework/docs/code-generator"},{"id":"advanced-guide/\u6570\u636e\u6301\u4e45\u5316","title":"\u6570\u636e\u6301\u4e45\u5316","description":"\u76d8\u53e4\u5f00\u53d1\u6846\u67b6 | \u6570\u636e\u6301\u4e45\u5316 | MyBatis Plus","permalink":"/pangu-framework/docs/advanced-guide/data-persistance"}]}')}}]);
\ No newline at end of file
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册