統計情報提供システム - 專案結構概覽(從 C# 視角理解 SAStruts/Seasar2 架構)

| Work Notes | 6 Reads

專案結構概覽

這是一個以 Maven 為構建工具的 Java Web 專案(打包格式為 WAR)。其目錄結構與典型的 Maven 專案相同,類似於 C# 專案中 src 與資源檔的配置。

proj-root/
├─ pom.xml                      # Maven 專案描述檔
├─ src/
│  └─ main/
│     ├─ java/                  # Java 程式碼
│     │  ├─ jp/tokyo/metro/tstt
│     │  │  ├─ action/          # 控制器,類似 ASP.NET MVC 的 Controller
│     │  │  ├─ service/         # 服務層,封裝商業邏輯
│     │  │  ├─ entity/          # 資料庫實體 (JPA/S2JDBC)
│     │  │  ├─ dto/ form/ util/ 等輔助類別
│     │  └─ jp/co/trump/common/ # 共用模組(類似共用程式庫)
│     ├─ resources/             # SQL、字體、PDF 模板等
│     └─ webapp/                # 前端資源
│        ├─ WEB-INF/
│        │  ├─ web.xml          # Web 應用設定
│        │  ├─ struts-config.xml/validator-rules.xml
│        │  └─ view/            # JSP 頁面
│        ├─ css/                # CSS
│        └─ js/                 # JavaScript
├─ s2jdbc-gen-build.xml         # 使用 Ant 的資料庫實體生成設定
├─ .project/.classpath          # Eclipse 專案設定
└─ .tomcatplugin                # Eclipse Tomcat 外掛設定

專案採用 SAStruts / Seasar2 框架,action 包裹類似 ASP.NET MVC 的控制器,entity 使用 S2JDBC 及 JPA 註解對應資料表,service 主要處理商業邏輯。


環境建置步驟

  1. 安裝 JDK 1.7 以上版本(專案以 Java 1.7 編譯,建議安裝 JDK 1.7 或 1.8),並設定 JAVA_HOME

  2. 安裝 Maven 3.x,並確保網路可下載依賴(pom.xml 會從 maven.seasar.org 等倉庫拉取)。

  3. 在專案根目錄執行:

mvn package

會編譯原始碼並產生 target/tstt-0.0.1.war

  1. 部署到 Servlet 容器(如 Tomcat 7):將 WAR 檔複製到 Tomcat 的 webapps/,啟動後即可使用。

  2. (可選)使用 IDE 開發:專案已提供 .project.classpath.tomcatplugin,可用 Eclipse 搭配 Tomcat 外掛直接在 IDE 內啟動。

  3. 若需從資料庫重新產生實體類別,可使用 Ant 執行 s2jdbc-gen-build.xml 中的目標,例如:

ant -f s2jdbc-gen-build.xml gen-entity

提示

  • 由於這是較舊的 Java Web 專案,部分依賴或工具版本較老,可能需要手動設定或調整 Maven 倉庫。

  • 專案沒有提供單元測試(src/test 目前為空),若要擴充功能,建議補齊測試流程。

  • src/main/resources/sql/ 下包含大量 SQL 檔,servicedao 類別會依據這些檔案執行資料存取。


透過以上步驟與概覽,即使您主要熟悉 C#,也能快速掌握此 Java 專案的架構與建置方式。

This article was last edited at