首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

開源項目推薦:JeeSite 快速開發平台深度體驗與避坑記

     編輯:Java 綜合教學

項目簡介

JeeSite 是基於 Spring Framework、Spring MVC、MyBatis、Apache Shiro、Ehcache、Activiti 等主流技術棧高度整合的 Java EE 快速開發平台。包含系統管理 (SYS)、內容管理 (CMS)、在線辦公 (OA)、代碼生成 (GEN) 四大核心模塊,定位企業級應用快速構建脚手架。

技術棧版本 (參考 1.2.x 版本)

  • Spring 4.x / Spring MVC 4.x
  • MyBatis 3.x
  • Shiro 1.2.x
  • Activiti 5.x / 6.x
  • Bootstrap 3.x + jQuery
  • Maven 多模塊構建

本地運行實戰記錄

1. 環境準備

  • JDK 1.7+、Maven 3.3+、MySQL 5.6+、IntelliJ IDEA / Eclipse。
  • IDEA 導入:File → New → Project from Existing Sources → 選中 pom.xml → Import as Maven Project。

2. 數據庫初始化 (關鍵難點)

項目使用 Ant + DBUnit 進行數據初始化,而非常見的 Flyway/Liquibase。

  1. 修改 src/main/resources/jeesite.properties 配置數據庫連接 (url、username、password)。
  2. 在 IDEA 的 Maven 工具窗 → Plugins → antrun → antrun:run 執行 Ant 任務。
  3. 或命令行進入項目根目錄執行 mvn antrun:run。

3. 遇到的錯誤與解決

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run ...
Caused by: org.dbunit.database.AmbiguousTableNameException: GEN_SCHEME

原因分析: DBUnit 導入 Excel 數據 (jeesite_data.xls) 時,表名映射衝突。可能是數據庫大小寫敏感設置、表前缀配置不一致、或 Excel 中 sheet 名與表名對應關係錯誤。

嘗試方案:

  • 檢查 jeesite.properties 中 jdbc.schema 設置。
  • 手動執行 db/*.sql 腳本建表,跳過 DBUnit Excel 導入步驟(修改 build.xml 註釋掉 dbunit 任務)。
  • 升級 DBUnit 版本至 2.5.4+ 修復 AmbiguousTableNameException。

4. 成功啟動後

啟動 Tomcat,訪問 https://localhost:8080/jeesite/,默認賬號 system/admin。可體驗用戶管理、機構管理、菜單配置、角色授權、工作流發起等功能。

優缺點評估

優點缺點/風險
功能全面:權限、工作流、代碼生成、CMS 一站式技術棧老舊:Spring 4、MyBatis 3、Activiti 5/6,遷移 Spring Boot 2/3 工作量大
代碼規範:分層清晰、命名統一、註解豐富,適合學習參考構建複雜:Ant+DBUnit 初始化脆弱,非 Maven 標準生命周期
社區活躍:Gitee/GitHub 有持續維護分支 (4.x/5.x 已升級 Spring Boot)前端技術落後:Bootstrap 3 + jQuery,現代項目多用 Vue/React

學習價值建議

  1. 閱讀核心模塊源碼: com.thinkgem.jeesite.modules.sys (權限模型)、modules.act (工作流封裝)、modules.gen (代碼生成器模板引擎)。
  2. 對比新版: 關注 JeeSite 4.x/5.x (Spring Boot 2/3 + Vue),了解架構演進。
  3. 不建議生產直接使用舊版: 安全漏洞 (Shiro 1.2 反序列化)、依賴庫停止維護、無響應式支持。

總結

JeeSite 是學習「傳統 Java EE 架構如何落地權限、工作流、代碼生成」的優秀教材。但對於新項目,請直接選擇 JeeSite 4.x+、RuoYi、Pig、Spring Boot 官方脚手架 等現代化技術棧。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved