J2EE (Java 2 Platform, Enterprise Edition) 自從 1999 年面世以來不斷發展,發展成今天的 Java EE (Java Platform, Enterprise Edition)。Java EE 提供開發人員一個豐富的平台以開發動態網頁、Web Services等企業應用軟件 (Enterprise Applications)。
Java EE 平台包括
- Bean Validation
- Common Annotations for the Java Platform
- Contexts and Dependency Injection for the Java EE Platform
- Dependency Injection for Java
- Enterprise JavaBeans (EJB)
- Interceptors
- Java API for JSON Processing (JSON-P)
- Java API for RESTful Web Services (JAX-RS)
- Java API for WebSocket (WebSocket)
- Java Persistence API (JPA)
- Java Transaction API (JTA)
- JavaServer Faces (JSF)
- JavaServer Pages Standard Tag Library (JSTL)
- JavaServer Pages (JSP)
- Managed Beans
- Servlet
- Unified Expression Language (EL)
- …
Java EE 亦有不少 frameworks 可以選用,當中包括
- Hibernate
- JavaServer Faces (JSF)
- Spring
- Struts / Struts 2
- Tapestry
本課程是我們其中一個 Java EE 的深造課程,本深造課程旨在教授 Java EE 中的 Web Services 技術,當中包括 JAX-RS, JAX-WS 和 JAXB。
Web Services 在分佈式軟體 (distributed applications) 設計中扮演重要的角式,在 Web Services 所產生的 XML (Extensible Markup Language), JSON (JavaScript Object Notation) 或其他格式的數據均能夠應用其他編程語言中,例如 Apple’s Swift, Objective-C 等等。 Web Services 已經廣泛地應用在不同的項目中。
Java EE 程式編寫深造課程 (主要教授 JAX-RS, JAX-WS 和 JAXB) 將會教授兩種主流的 Web Services 技術,它們分別為 REST (Representational state transfer) 及 SOAP (Simple Object Access Protocol)。要編寫 Web Services 程式,在 Java EE 平台並不困難,因為 Java EE 平台提供了不少框架和工具令我們可以輕鬆編寫 Web Services 程式。我們需要的只是有系統地學習相關的框架和工具就可以了。
在課程的初段,導師首先教授使用 JAX-RS (Java API for RESTful Web Services) 編寫RESTful Web Services,除教授一般 Web Services 編程的基本知識外,導師亦會在課堂內教授使用 JAXB (Java Architecture for XML Binding) 將類別或 Java Bean 簡便地映射 (marshal) 為 XML 或其他 JAXB 所支援的格式從而從容地編寫 RESTful Web Services。除此以外,亦會教授如何處理 Exceptions 等課題。
當掌握 JAX-RS 後,導師會結合 JPA (Java Persistence API)、JSF (JavaServer Faces) 和 JAX-RS [JPA + JSF + JAX-RS] 透過 RESTful Web Services 進行資料庫的 CRUD (Create, Read, Update and Delete) 操作,這樣可以更真實地感受 RESTful Web Services 如何配合其他 Java EE 平台元件,在發揮 Java EE 各元件的長處下建構一個更具結構和更容易維護的系統。由於 JPA 和 JSF 的相關知識已經分別在 《Java EE 程式編寫深造課程 (主要教授 JDBC, JPA, JTA 和 Hibernate)》和 《Java EE 程式編寫深造課程 (主要教授 JSF 及 Bean Validation)》已經教授,故此本課程不會重複地教授上述課程的內容,而是直接地使用 JPA 和 JSF 技術配合 JAX-RS 達到進行資料庫的 CRUD 操作的效果。
最後導師會教授 SOAP Web Service 技術,課堂內導師會教授透過 JAX-WS (Java API for XML Web Services) 編寫 SOAP Web Services 及能在 JSPs 和 Servlets 內使用的 Clients。
導師會設計一系列的實習從而令同學能有效學習和實踐所學。 |