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

Windows 開發者轉型 Java Web(二):物件導向核心、J2EE 架構與原生整合方案

     編輯:Java 相關知識

承接第一部分,本文深入 Java 物件導向精髓、J2EE 多層架構、存取 Windows 原生組件的多種路徑、UI 選型策略與部署環境建議。

一、Java 物件導向:從 VB 類別到 Java Class

類別結構對照

// VB 6
Private theBalance As Currency
Public Sub Deposit(amount As Currency): theBalance = theBalance + amount: End Sub
Public Property Get Balance() As Currency: Balance = theBalance: End Property

// Java
public class Account {
    private double balance;
    public Account(int number, double balance) { this.balance = balance; } // 建構子
    public void deposit(double amnt) { balance += amnt; }
    public double getBalance() { return balance; } // Getter
    public void setBalance(double b) { this.balance = b; } // Setter
}

關鍵差異:建構子取代 InitAccount、私有欄位 + Getter/Setter 取代 Property、預設 package-private 而非 public。

三大支柱

  • 封裝:隱藏實作,介面不變
  • 繼承:extends 單繼承,super 呼叫父建構子,@Override 重寫方法
  • 多型:方法多載(同名不同參數)、介面多實作

進階:static、this、介面

  • static 欄位/方法屬類別不屬實例(如利率)
  • this 解決參數遮蔽欄位:this.balance = balance;
  • interface 定義契約,implements 多實作,彌補單繼承限制

二、J2EE Web 應用架構:MVC + 多層解耦

MVC 與 J2EE 架構圖

  • 瘦客戶端:瀏覽器/Applet,HTTP 存取 Servlet/JSP
  • 網路基礎設施:TCP/IP、防火牆、LDAP、Web Server
  • 業務邏輯層:Servlet、JavaBean、EJB 管理事務與規則
  • 應用伺服器:JBoss、WebSphere 提供 HTTP、DB、事務、郵件、訊息服務
  • 整合中介層:JDBC、EJB Entity、JMS、JCA 連接舊系統
  • 後端資料源:既有 Windows 元件可透過 JDBC 取代直連
  • 開發工具:Eclipse、WebSphere Studio 等

三、存取 Windows 原生組件:JNI 為主、多元輔助

原則:優先用 Java 標準 API(java.net、java.io)替代平台專有功能;不得已再用橋接技術。

技術特點適用場景
JNI標準、JVM 內建、C/C++ 雙向呼叫原型階段、分階段遷移、COM/DCOM 元件、無原始碼第三方庫
JNI++代碼生成器 + C++ 核心庫,簡化複雜映射複雜 C++ 類別、異常轉換、回調 Java
IBM Interface Tool for JavaActiveX → Java Proxy,typelib 自動生成Office 自動化、IE 控制、COM 可腳本元件
Codemesh JunC++ionC++/Java 雙向混合,單一 API 集C++ 客戶端接入 EJB、C++ 實作 EJB
JNIWrapperJava 庫調用原生函數,免寫 JNI 模板代碼系統托盤、自訂啟動畫面、註冊表操作
Jawin開源、COM/DLL 互操作、免寫 JNI、含存根生成器Office、MSXML、Win32 API(登錄表、安全、事件日誌)
Stryon i-HUBJava-COM+ 橋接中介軟體企業級 .NET/COM 整合

四、UI 選型策略:別用「逐頁翻譯」思維

  • Web 介面:Servlet/JSP/HTML/JS,易部署。JSF 提供拖放元件(WebSphere Studio Page Designer 實作)
  • Applet:沙箱受限,簽名後可提權。Swing 版 Applet 體驗較佳
  • 瀏覽器助手/MIME:處理特殊格式(地圖、文檔、多媒體)
  • Web Services (SOAP):保留 Windows 豐富客戶端,後端換 J2EE,最小化用戶衝擊
  • Java 富客戶端:Swing/SWT 跨平台原生感,需自行分發更新

參考:Jakob Nielsen 易用性專欄、JSF 規範

五、部署環境:應用伺服器 ≠ Web 伺服器

  • Apache Tomcat:Servlet/JSP 參考實作,輕量
  • WebSphere Application Server V5.1 Express:IBM 簡化版 J2EE 伺服器,含開發工具

J2EE 應用跑在應用伺服器,再由 Web Server(IIS/Apache)反向代理靜態資源。

結語

掌握 OO 精髓、架構分層、原生整合工具箱、UI 遷移哲學與部署拓撲,Windows 開發者即可自信踏上 Java 開放平台之路。

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