JEECMS原始碼基本結構及相關技術簡介

caozhenyu發表於2015-07-22

原文:http://www.jeecmstheme.com/2014/06/119.html

jeeecms作為國內Java開源內容管理系統的龍頭老大(感謝jeecms研發小組的辛苦勞作),技術架構也是比較成熟的,當然涉及到的技術也就相對多一些

看看jeecms內容管理系統使用了哪些技術

  • web開發當然離不開最基本的三大元素html、javascript和css,jeecms也不列外,用到的javascript庫是jQuery
  • 為了可以生成真正的靜態html頁面,使用了FreeMarker模板技術,這樣方便我們自定義模板
  • MVC框架使用的SpringMVC,沒有使用傳統的Struts作為web開發的框架
  • 開源版使用MySQL資料庫,網上資料豐富,易於學習,資料庫ORM框架使用的是Hibernate資料庫連線池是c3p0,同樣也算是比較流行的框架
  • 加入了驗證碼模組防止機器程式製造大量的垃圾,資料驗證碼使用的是java開源驗證碼jcaptcha,不過版本相對較老
  • WYSWYG(所見即所得)編輯器整合的是ckeditor,國外開源富文字編輯器
  • 時間日期控制元件使用的是My97DatePicker,一款很不錯的的國產日期控制元件
  • 上傳元件使用了swfuploadcommons-fileupload
  • 快取使用Ehcache,定時器使用的是quartz功能很強大的,都屬於美國Terracotta公司的開源元件
  • jeecms用到的全文搜尋元件是Apache的Lucene,還配合使用了java語言開發的輕量級的中文分詞工具包IK Analyzer
  • 還有一些其他的工具包,如log4j,dom4j,dwr, json,htmlparser….

jeecms整體專案結構圖


  • src-1:java原始碼的目錄
  • r-2:web前端用到的資源,比如js, css和img
  • res-3:管理端用到的資源,比如js, css和img
  • thirdparty-4:這裡放的是第三方的一些外掛,比如上面提到的ckeditor,swfupload和My97DatePicker
  • u-5: v6版本演示用到的圖片,可刪,對系統沒得影響,應該是上傳檔案的路徑
  • common-6:這裡面的是一些公共頁面,比如用於顯示上傳情況,資訊提示
  • config-7:系統的關鍵配置檔案都在這兒了,比如修改資料庫連線就需要在這裡改
  • error-8:放一些伺服器端錯誤提示的頁面,比如403錯誤、程式異常
  • ftl-9:管理端用到的freemarker模板檔案
  • ipseek-10:放的是IP庫,用於分析IP歸屬地
  • jeecms_sys-11:管理端HTML模板檔案
  • langauges-12:國際化語言配置檔案
  • lib-13:所有依賴的包都放這兒
  • lucene-14:這個目錄是lucene生成的一些所以檔案
  • t-15:包含前端模板HTML檔案

上面沒有介紹到cache目錄是快取生成的檔案,classes目錄是編譯後class檔案的預設路徑。實際執行中如果把class檔案都打成了jar包放到lib目錄下,那這個資料夾也可以刪了

相關文章