1. 程式人生 > >企業大型網際網路分散式架構{Java分散式架構 dubbo + springmvc + mybatis + ehcache + redis }

企業大型網際網路分散式架構{Java分散式架構 dubbo + springmvc + mybatis + ehcache + redis }

平臺簡介

        Jeesz是一個分散式的框架,提供專案模組化、服務化、熱插拔的思想,高度封裝安全性的Java EE快速開發平臺。

        Jeesz本身整合Dubbo服務管控、Zookeeper註冊中心、Redis分散式快取技術、FastDFS分散式檔案系統、ActiveMQ非同步訊息中介軟體、Nginx負載均衡等分散式技術

        使用Maven做專案管理,專案模組化,提高專案的易開發性、擴充套件性

        以Spring Framework為核心容器,Spring MVC為模型檢視控制器,MyBatis為資料訪問層, Apache Shiro為許可權授權層,Ehcahe對常用資料進行快取,Activit為工作流引擎等。

        前端整合Bootstrap4 metronic框架,UI響應式、扁平化佈局,適應所有PC、Pad、Anroid、ios 移動裝置等。

        Jeesz主要定位於網際網路企業架構,已內建企業資訊化系統的基礎功能和高效的程式碼生成工具,包括:系統許可權元件、資料許可權元件、資料字典元件、核心工具 元件、檢視操作元件、工作流元件、程式碼生成等。採用分層設計、雙重驗證、提交資料安全編碼、密碼加密、訪問驗證、資料許可權驗證。

        Jeesz目前包括以下模組專案,後臺系統管理系統,RestFul獨立服務系統、Scheduler定時排程系統、內容管理(CMS)系統、線上辦公(OA)系統、我的待辦(Task服務)、我的收藏(Bookmark服務)。

        後臺管理系統包括企業組織架構(使用者管理、機構管理、區域管理)、選單管理、角色許可權管理、字典管理等功能;

        RestFul獨立提供標準Rest服務API,您可以快速實現自己的業務,提供需要的服務;

        Quartz定時排程系統可以動態配置您的任務規則等;

願意瞭解框架技術或者原始碼的朋友直接加求求(企鵝)  1903832579

        內容管理(CMS)系統,包括內容管理,欄目管理、站點管理、公共留言、檔案管理、前端網站展示等功能;

        線上辦公(OA)系統,主要提供簡單的流程例項。

        Jeesz提供了常用工具進行封裝,包括日誌工具、快取工具、伺服器端驗證、資料字典、當前組織機構資料(使用者、機構、區域)以及其它常用小工具等。另外 還提供一個強大的線上 程式碼生成 工具,此工具提供簡單的單表、一對多、樹結構功能的生成,如果對外觀要求不是很高,生成的功能就可以用了。使用了Jeesz基礎框架,可以提高快速開發效 率。

內建功能(只列了一部分功能)

1.使用者管理:使用者是系統操作者,該功能主要完成系統使用者配置。

2.機構管理:配置系統組織機構(公司、部門、小組),樹結構展現,可隨意調整上下級。

3.區域管理:系統城市區域模型,如:國家、省市、地市、區縣的維護。

4.選單管理:配置系統選單,操作許可權,按鈕許可權標識等。

5.角色管理:角色選單許可權分配、設定角色按機構進行資料範圍許可權劃分。

6.字典管理:對系統中經常使用的一些較為固定的資料進行維護,如:是否、男女、類別、級別等。

7.操作日誌:系統正常操作日誌記錄和查詢;系統異常資訊日誌記錄和查詢。

8.連線池監視:監視當期系統資料庫連線池狀態,可進行分析SQL找出系統性能瓶頸。

9.工作流引擎:實現業務工單流轉、線上流程設計器。

開發工具

1.Eclipse IDE:採用Maven專案管理,模組化。

2.程式碼生成:通過介面方式簡單配置,自動生成相應程式碼,目前包括三種生成方式(增刪改查):單表、一對多、樹結構。生成後的程式碼如果不需要注意美觀程度,生成後即可用。

技術選型(只列了一部分技術)

1、後端

服務框架:Dubbo、zookeeper、Rest服務

快取:Redis、ehcache

訊息中介軟體:ActiveMQ

負載均衡:Nginx

分散式檔案:FastDFS

資料庫連線池:Alibaba Druid 1.0

核心框架:Spring framework

安全框架:Apache Shiro 1.2

檢視框架:Spring MVC 4.0

服務端驗證:Hibernate Validator 5.1

佈局框架:SiteMesh 2.4

工作流引擎:Activiti 5.15

任務排程:quartz 1.8.5

持久層框架:MyBatis 3.2

日誌管理:SLF4J 1.7、Log4j

工具類:Apache Commons、Jackson 2.2、Xstream 1.4、Dozer 5.3、POI

2、前端

JS框架:JQuery 1.9。

CSS框架: Bootstrap 4 metronic

客戶端驗證:JQuery Validation Plugin。

富文字:CKEcitor

檔案管理:CKFinder

動態頁籤:Jerichotab

資料表格:jqGrid

對話方塊:jQuery jBox

樹結構控制元件:jQuery zTree

其他元件:Bootstrap 4 metronic

3、支援

伺服器中介軟體:Tomcat 6、7、Jboss 7、WebLogic 10、WebSphere 8

資料庫支援:目前僅提供mysql資料庫的支援,但不限於資料庫,下個版本升級多資料來源切換和資料庫讀寫分離: 如:Oracle、SqlServer、H2等

支援開發環境:Eclipse、MyEclipse、Ras、Idea等

原始碼結構