基于vue+spring的java后臺管理系統(tǒng)非常多,個人認為其中el-admin算是比較靠譜的。該項目一直在持續(xù)優(yōu)化,最近剛發(fā)布其v1.9的第九個版本。
創(chuàng)新互聯(lián)長期為上1000家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為曾都企業(yè)提供專業(yè)的網站設計制作、成都網站設計,曾都網站改版等技術服務。擁有10余年豐富建站經驗和眾多成功案例,為您定制開發(fā)。
項目基于 Spring Boot 2.1.0 、 Spring boot Jpa、 Spring Security、redis、Vue的前后端分離的權限管理系統(tǒng),項目采用分模塊開發(fā)方式, 權限控制采用 RBAC(Role-Based Access Control,基于角色的訪問控制),支持數據字典、數據權限管理、前端菜單支持動態(tài)路由。
前端
后端
醫(yī)院的藥品繁多,毫無疑問只靠人工管理是不現(xiàn)實的,必須依賴信息化管理系統(tǒng),因此也有很多同學在畢業(yè)設計時會選擇醫(yī)院藥品管理系統(tǒng)這個項目課題,但其實想把該系統(tǒng)做好做全是不容易的,因此Java潘老師今天給大家介紹一套基于SpringBoot+Vue開發(fā)的醫(yī)院藥品管理系統(tǒng)JavaWeb項目源碼,整體采用的技術體系還是比較新的,非常適合二次開發(fā)。
一、項目架構
本醫(yī)院藥品管理系統(tǒng)項目源碼是基于SpringBoot+Vue+MySQL5.7技術架構開發(fā)而來,項目整體由Maven進行構建,而且經過潘老師親自修改測試,能夠實現(xiàn)正常部署并穩(wěn)定運行。
二、項目效果
1)視頻演示
項目安裝部署教程,以及項目主要功能和項目效果演示,具體可以看下面的視頻,如果不夠清晰,可以直接點擊去B站觀看即可。
2)功能模塊
該項目的所有功能模塊如下,其實只是一些比較容易想到的功能,完全可以自己再去擴展一些類似庫存監(jiān)控、藥品統(tǒng)計、銷售趨勢分析等等功能。
首頁
個人中心
藥品類別管理
藥品信息管理
藥品說明管理
藥品入庫管理
廠商信息管理
藥品出庫管理
疾病信息管理
疾病科目管理
醫(yī)師管理
三、項目部分截圖
來,一起看看效果如何:
JeecgBoot 是一款基于代碼生成器的 低代碼 開發(fā)平臺!前后端分離架構 SpringBoot2.x,SpringCloud,Ant DesignVue,Mybatis-plus,Shiro,JWT,支持微服務。強大的代碼生成器讓前后端代碼一鍵生成,實現(xiàn)低代碼開發(fā)!
JeecgBoot 提供了一系列 低代碼模塊 ,實現(xiàn)在線開發(fā) 真正的零代碼 :Online表單開發(fā)、Online報表、報表配置能力、在線圖表設計、大屏設計、移動配置能力、表單設計器、在線設計流程、流程自動化配置、插件能力(可插拔)等等!
JEECG宗旨是: 簡單功能由OnlineCoding配置實現(xiàn),做到 零代碼開發(fā) ;復雜功能由代碼生成器生成進行手工Merge 實現(xiàn) 低代碼開發(fā) ,既保證了 智能 又兼顧 靈活 ;實現(xiàn)了低代碼開發(fā)的同時又支持靈活編碼,解決了當前低代碼產品普遍不靈活的弊端!
JEECG業(yè)務流程: 采用工作流來實現(xiàn)、擴展出任務接口,供開發(fā)編寫業(yè)務邏輯,表單提供多種解決方案:表單設計器、online配置表單、編碼表單。同時實現(xiàn)了流程與表單的分離設計(松耦合)、并支持任務節(jié)點靈活配置,既保證了公司流程的保密性,又減少了開發(fā)人員的工作量。
Jeecg-Boot低代碼開發(fā)平臺,可以應用在任何J2EE項目的開發(fā)中,尤其適合SAAS項目、企業(yè)信息管理系統(tǒng)(MIS)、內部辦公系統(tǒng)(OA)、企業(yè)資源計劃系統(tǒng)(ERP)、客戶關系管理系統(tǒng)(CRM)等,其半智能手工Merge的開發(fā)方式,可以顯著提高開發(fā)效率70%以上,極大降低開發(fā)成本。
1、服務注冊和發(fā)現(xiàn) Nacos
2、統(tǒng)一配置中心 Nacos
3、路由網關 gateway(三種加載方式)
4、分布式 http feign
5、熔斷和降級 Sentinel
6、分布式文件 Minio、阿里OSS
7、統(tǒng)一權限控制 JWT + Shiro
8、服務監(jiān)控 SpringBootAdmin
9、鏈路跟蹤 Skywarking
10、消息中間件 RabbitMQ
11、分布式任務 xxl-job
12、分布式事務 Seata
13、分布式日志 elk + kafa
14、支持 docker-compose、k8s、jenkins
15、CAS 單點登錄
16、路由限流
微服務架構圖
輸入圖片說明
輸出結果:
先看第一個打印語句,在Java中==這個符號是比較運算符,它可以基本數據類型和引用數據類型是否相等,如果是基本數據類型,==比較的是值是否相等,如果是引用數據類型,==比較的是兩個對象的內存地址是否相等。字符串不屬于8中基本數據類型,字符串對象屬于引用數據類型,在上面把“abc”同時賦值給了st1和st2兩個字符串對象,指向的都是同一個地址,所以第一個打印語句中的==比較輸出結果是 true
然后我們看第二個打印語句中的equals的比較,我們知道,equals是Object這個父類的方法,在String類中重寫了這個equals方法,在JDK API 1.6文檔中找到String類下的equals方法,點擊進去可以看大這么一句話 將此字符串與指定的對象比較。當且僅當該參數不為null,并且是與此對象表示相同字符序列的 String 對象時,結果才為 true。
注意這個相同字符序列,在后面介紹的比較兩個數組,列表,字典是否相等,都是這個邏輯去寫代碼實現(xiàn)。由于st1和st2的值都是“abc”,兩者指向同一個對象,當前字符序列相同,所以第二行打印結果也為true。
下面我們來畫一個內存圖來表示上面的代碼,看起來更加有說服力。
內存過程大致如下:
答案是:在內存中創(chuàng)建兩個對象,一個在堆內存,一個在常量池,堆內存對象是常量池對象的一個拷貝副本。
我們下面直接來一個內存圖。
當我們看到了new這個關鍵字,就要想到,new出來的對象都是存儲在堆內存。然后我們來解釋堆中對象為什么是常量池的對象的拷貝副本?!癮bc”屬于字符串,字符串屬于常量,所以應該在常量池中創(chuàng)建,所以第一個創(chuàng)建的對象就是在常量池里的“abc”。
第二個對象在堆內存為啥是一個拷貝的副本呢,這個就需要在JDK API 1.6找到String(String original)這個構造方法的注釋:初始化一個新創(chuàng)建的 String 對象,使其表示一個與參數相同的字符序列;換句話說,新創(chuàng)建的字符串是該參數字符串的副本。所以,答案就出來了,兩個對象。
答案:false 和 true
由于有前面兩道提內存分析的經驗和理論,所以,我能快速得出上面的答案。==比較的st1和st2對象的內存地址,由于st1指向的是堆內存的地址,st2看到“abc”已經在常量池存在,就不會再新建,所以st2指向了常量池的內存地址,所以==判斷結果輸出false,兩者不相等。第二個equals比較,比較是兩個字符串序列是否相等,由于就一個“abc”,所以完全相等。內存圖如下
答案是:true 和 true
分析:
答案:false 和 true
上面的答案第一個是false,第二個是true,第二個是true我們很好理解,因為比較一個是“abc”,另外一個是拼接得到的“abc”,所以equals比較,這個是輸出true,我們很好理解。那么第一個判斷為什么是false,我們很疑惑。同樣,下面我們用API的注釋說明和內存圖來解釋這個為什么不相等。
首先,打開JDK API 1.6中String的介紹,找到下面圖片這句話。
關鍵點就在紅圈這句話,我們知道任何數據和字符串進行加號(+)運算,最終得到是一個拼接的新的字符串。上面注釋說明了這個拼接的原理是由StringBuilder或者StringBuffer類和里面的append方法實現(xiàn)拼接,然后調用toString()把拼接的對象轉換成字符串對象,最后把得到字符串對象的地址賦值給變量。結合這個理解,我們下面畫一個內存圖來分析。
大致內存過程
所以,st3和st2進行==判斷結果是不相等,因為兩個對象內存地址不同。
這篇的面試題,完全就是要求掌握JDK API中一些注解和原理,以及內存圖分析,才能得到正確的結果,我承認是畫內存圖讓我理解了答案為什么是這樣。畫完內存圖之后,得到答案,你確實會發(fā)現(xiàn)很有趣,最后才會有原來如此的感嘆。
前端代碼生成器,簡單的說:
第一步,通過接口文檔獲取接口的入參\出參,并將這入參\出參格式化成特定JSON
第二步,根據自己的項目,結合表格、表單組件,抽離出代碼模板
第三步,通過第一二步的JSON、代碼模板,生成vue、JS以及路由文件
簡介
本項目采用puppeteer對接口文檔網頁讀取,獲得接口鏈接、入參、出參等,并記錄半生成特定格式的json.
因本項目是為了配合公司的接口文檔,生成公司的后臺管理網站,定制化較高,所以此項目對于其他朋友來說,可做參考.如其他交流,可以聯(lián)系我.
技術方案
獲接口文檔中接口的入參\出參,我采用爬蟲框架puppeteer來獲取,根據獲得的入參\出參,結合代碼模板,生成實際放入工程的增刪改查文件,做到增刪改查基本不用再碼代碼.同時支持審核等表格操作。
通過fs.writeFile來生成文件
說明
目前項目中只給了根據接口生成vue2+element的代碼.因為代碼是根據特定組件生成的.
表格、表單組件見項目中組件目錄,這個需要全局引入.見components目錄
另有生成vue3+typescript+ant的代碼,暫未公布.
配置說明
scale的配置
```js
// 適用于scale的配置
export const config = {
href: '',
serverName: 'AdminStoreContractService',
pages: [{
filePath: 'promotionNew', // 列表\新\修頁面所在路徑
chunkName: 'base', // chunkName 用于路由中 require.ensure 打包參數
list: { // 列表
fileName: 'pn-list', // 列表文件名字
name: '列表', // 菜單名
apiName: 'listStoreContract', // 列表接口名
exportFile: { // 導出 [非必填]
apiUrl: '',
downFileName: ''
}
},
我推薦一個基于spring cloud 外延的一個開源項目,主要是針對企業(yè)信息化方向的,做得比較不錯能開源,支持商用。
里面實現(xiàn)了 SaaS(用戶與租戶的多對多關系)、統(tǒng)一多模式登陸、在線表單配置、在線列表頁配置,在線流程配置,在線圖表配置等等。
1、漸進式 JavaScript 框架 Vue.js
官網:
2、高性能Java RPC框架 Dubbo
官網:
簡介:Apache Dubbo (incubating) |?d?b??| 是一款高性能、輕量級的開源Java RPC框架,它提供了三大核心能力:面向接口的遠程方法調用,智能容錯和負載均衡,以及服務自動注冊和發(fā)現(xiàn)。
3、經典模塊化前端框架 Layui
官網:
簡介:Layui由職業(yè)前端傾情打造,面向所有層次的前后端開發(fā)者,零門檻開箱即用的前端UI解決方案。
4、JavaScript 可視化圖表庫 ECharts
官網:
簡介:ECharts,一個使用 JavaScript 實現(xiàn)的開源可視化庫,可以流暢的運行在 PC 和移動設備上,兼容當前絕大部分瀏覽器(IE8/9/10/11,Chrome,F(xiàn)irefox,Safari等),底層依賴輕量級的矢量圖形庫 ZRender,提供直觀,交互豐富,可高度個性化定制的數據可視化圖表。
5、基于 Node.js 的前端代碼檢查工具 FECS
官網:
簡介:FECS 是基于 Node.js 的前端代碼風格工具套件,包含對 JavaScript、CSS 與 HTML 的檢查、修復及格式化。
6、開源項目管理軟件 禪道
官網:
簡介:禪道是第一款國產的開源項目管理軟件,她的核心管理思想基于敏捷方法scrum,內置了產品管理和項目管理,同時又根據國內研發(fā)現(xiàn)狀補充了測試管理、計劃管理、發(fā)布管理、文檔管理、事務管理等功能,在一個軟件中就可以將軟件研發(fā)中的需求、任務、bug、用例、計劃、發(fā)布等要素有序的跟蹤管理起來,完整地覆蓋了項目管理的核心流程。我們團隊就在使用這款項目管理軟件,感興趣的小伙伴也可以試用下哦。
7、JAVA 極速WEB+ORM框架 JFinal
官網:
簡介:JFinal 是基于 Java 語言的極速 WEB + ORM 框架,其核心設計目標是開發(fā)迅速、代碼量少、學習簡單、功能強大、輕量級、易擴展、Restful。在擁有Java語言所有優(yōu)勢的同時再擁有ruby、python、php等動態(tài)語言的開發(fā)效率!為您節(jié)約更多時間,去陪戀人、家人和朋友 :) 。
以上為拋磚引玉,希望大家分享更多的開源軟件,共同進步哦!
相比較,homeassistant 更強大,之前只有英文版,現(xiàn)在有中文版了。
docker,kafka,rabbitmq,redis,mysql,dubbo,consul,sqlite,vue,react,eshop還有啥?
freeradius,nginx,sphinxsearch。。
作為一名開源愛好者,發(fā)掘優(yōu)秀的開源項目是一件非常有趣的事情。在第一期中,我分享了單頁個人網站模板、組裝式 Flutter 應用框架、PHP 客戶端庫、Java 診斷工具等一些實用的庫和工具。本期依舊會為大家分享一些前端、后端、移動開發(fā)的相關工具,希望你能“淘”到適合自己的工具。
1.Vue-EasyTable
Vue-EasyTable 是一款基于 Vue2.x 的 table 組件,具備自適應、表頭與列固定、自定義單元格樣式、自定義 Loading 等功能。
2.React-Calendar
這是一款具備原生日期格式的日歷組件。它不依賴 Moment.js,支持日期選擇范圍,涵蓋了各國語言,開箱即用。
3.Matter
CSS 實現(xiàn)的 Material 組件合集項目,作者已將部分作品開源,效果可以在 CodePen 上查看。
4.Revery
Revery 是一款用于構建高性能、跨平臺桌面應用的框架。它類似于加速版的原生 Electron,除了擁有類似 React / Redux 的庫,還具備 GPU 加速渲染功能,其內置的編譯器速度也相當快。
5.Web Accessibility Guide
這是一個精選了 Web 可訪問性貼士、技巧和最佳實踐的開源項目,你將會學習到一些改善 Web 可訪問性的實用做法。
1.SOFAJRaft
SOFAJRaft 是螞蟻金服開源的生產級 Java Raft 算法庫,它基于 Raft 一致性算法的生產級高性能 Java 實現(xiàn),支持 MULTI-RAFT-GROUP,適用于高負載低延遲的場景,易于使用。
2. Dragonwell
阿里開源了 OpenJDK 發(fā)行版 Dragonwell,它提供長期支持,包括性能增強和安全修復。在數據中心大規(guī)模 Java 應用部署情況下,可以大幅度提高穩(wěn)定性、效率以及性能。
3.Lawoole
Lawoole 是一款基于 Laravel 和 Swoole 的高性能 PHP 框架。它兼具了 Laravel 的特點,還解決了其功能背后的性能問題。同時,你還能感受到與 Laravel 一樣的編碼體驗。
4.AntNest
AntNest 是一個簡潔、快速的異步爬蟲框架。它僅有 600 行代碼,基于 Python 3.6+.
5.PHP-Awesome
這個倉庫匯集了 PHP 優(yōu)秀的資源,供你查詢和參考。
1.FlutterBoost
FlutterBoost 是閑魚開源的新一代 Flutter-Native 混合解決方案。它能夠幫你處理頁面的映射和跳轉,你只需要關心頁面的名字和參數即可。
2.MyLayout
MyLayout 是一套 iOS 界面視圖布局框架,可謂 iOS 下的界面布局利器。它集成了 iOS Autolayout、Size Classes、Android 的 5 大布局體系、HTML/CSS 的浮動定位技術以及 Flex-Box 和 Bootstrap 框架等主流的平臺的界面布局功能,并提供了一套簡單、完備的多屏幕尺寸適配的解決方案。
3.SegementSlide
SegementSlide 是一個 iOS UI 庫,它具備完整的滑滾及切換組件,旨在解決多層 UIScrollView 嵌套滾動的問題。
1.DevHub
DevHub 是一款跨平臺的 GitHub 通知管理客戶端,支持 Android、 iOS、網頁和桌面上使用,幫助你便捷的接收 GitHub 各類通知。
2.Reqman
Reqman 是一個幫助后端工程師進行 API 測試的工具,同時也是一個基于 Node.js 的爬蟲工具。
3.FreeCodeCamp
說到 FreeCodeCamp,或許大家不會陌生,而這個項目就是他們建立的開源課程和相應的代碼庫。網站提供了 6 大認證課程,也涉及了全棧開發(fā)認證。如果你感興趣,不妨了解下。
4.Gitter
Gitter 是 GitHub 小程序客戶端,作者采用 Taro 框架 + Taro UI 進行開發(fā),而小程序內數據則來自 GitHub Api V3.
5.Awesome Podcasts
這個項目收集了各類實用的播客,涵蓋了主流的編程語言,希望對你提升技術水平有所幫助。
6.編程圖書大全
書籍不光能在你迷茫的時候,給予你答案,還能在你提升技能的時候,給予你幫助。這個倉庫收集了眾多編程圖書,涉及主流編程語言、人工智能、算法、Linux、大數據等??纯矗心居心阈枰?。
7.VS Code Netease Music
很多開發(fā)者喜歡邊寫代碼,邊聽音樂,VS Code Netease Music 這個插件就能滿足你在 VS Code 上聽歌的愿望。它使用 Webview 實現(xiàn),不依賴命令行播放器。
Star-Battle
Star-Battle 是一款使用 JavaScript ES6、Canvas 開發(fā)的飛船射擊類 游戲 。來 Enjoy 吧。
注:
如需轉載,煩請按下方注明出處信息,謝謝!