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

可擴展 Web 框架描述文件設計:借鑑 Eclipse Plugin 模型構建 Struts 基礎架構

     編輯:Java 程式設計入門

框架描述文件的六大設計原則

在著手定義框架結構描述文件前,必須確立核心準則:

  1. 完整性:框架涵蓋範圍內的所有情況皆可描述
  2. 語義性:描述唯一、明確,無歧義
  3. 一致性:描述間統一不衝突
  4. 可引用性:元素可達、易訪問
  5. 可維護性:可配置、可擴展、可再生
  6. 可讀性:易於理解與維護

啟發來源:Eclipse Plugin.xml 架構分析

Eclipse 的插件描述文件結構清晰,包含四大核心標籤:

  • <plugin>:插件基本資訊(id、name、version、provider),id 為唯一索引鍵
  • <requires>:依賴的外部插件(如 org.eclipse.ui)
  • <runtime>:運行時庫(JAR 包)聲明
  • <extension>:擴展點資訊,含 category 分類與 view 視圖定義(類名、ID、所屬分類)

關鍵洞見:extension 機制賦予插件「容器能力」——插件可嵌套插件,形成遞歸擴展結構,這正是可擴展架構的核心。

框架應用場景與技術棧

  • 應用類型:Web 應用,基於 Struts MVC 架構
  • 頁面佈局:可配置、可嵌套(上下分欄、左右分欄、多層嵌套)
  • 視圖組件:可配置(導航欄、列表框、表單等)
  • 容器治理:Struts ActionServlet 或其子類

Struts 高度可配置、擴展性強,Action(控制層)、Bean(模型層)、View(視圖層)分工明確,適合作為框架基座。

需求提煉與描述文件元素定義

核心需求五點:窗體可配置、可嵌套、視圖可配置、可定義、建於 Struts 之上。

描述文件需包含三大元素:

  1. 窗體描述:定義佈局結構(rows/cols 分割、嵌套關係)
  2. 擴展點描述:聲明可掛載組件的區域
  3. Action 關聯:綁定 Struts Action 處理邏輯(視圖交由 Struts 原生機制管理)

初版框架描述文件原型

<?xml version="1.0" encoding="UTF-8"?>
<plugin id="com.useeasy.plugin" name="Welcome to frame" version="1.0" provider-name="doJava">
    <frameset rows="64,*" desc="可擴展插件的web框架" extension="com.useeasy.frame">
        <frame id="com.useeasy.header" scrolling="no" noresize="true" action="/headAction" desc="第一個擴展區" />
        <frame id="com.useeasy.main" action="/listAction" desc="第二個擴展區" />
    </frameset>
</plugin>

結構說明:

  • frameset:頂層佈局容器,rows/cols 定義分割比例,extension 標識擴展點 ID
  • frame:葉子區域,id 唯一標識,action 綁定 Struts Action,scrolling/noresize 控制顯示行為

後續挑戰與思考方向

  • 如何將插件視圖動態注入框架視圖?
  • 框架與插件間的通信機制(事件傳遞、數據共享)如何設計?
  • Java 模型如何映射 XML 描述?需建立對應的 DOM/解析器體系

此為初步探索,後續將深入實現動態組合、生命週期管理、跨插件通信等核心機制。

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