Java EE 8 MVC:Ozark入门
大約一年前, 針對Java EE 8宣布了一個新的基于動作的MVC框架,簡稱為MVC。 MVC(在JSR 371中指定)基于JAX-RS,并與Java EE技術(如CDI和Bean驗證)集成。 MVC 1.0的參考實現是Ozark 。
這是我計劃編寫的有關Java EE MVC的多部分教程的第一篇文章。 在本文中,我們將看到如何獲取與Ozark一起運行的基本Java EE MVC應用程序。 即將發表的文章將為特定部分提供更多詳細信息。
Ozark入門
請注意,MVC規范仍是一個早期草案,最終規范計劃于2016年第三季度發布。要了解處于此早期狀態的Java EE MVC,我們需要一個最新的夜間版本GlassFish和當前的Ozark里程碑發布。 Ozark團隊建議當前的Ozark版本使用GlassFish b13 03-16-2015 。
除了GlassFish,我們還需要以下依賴項來創建MVC應用程序:
<dependencies><dependency><groupId>com.oracle.ozark</groupId><artifactId>ozark</artifactId><version>1.0.0-m01</version><scope>compile</scope></dependency><dependency><groupId>javax</groupId><artifactId>javaee-api</artifactId><version>7.0</version></dependency> </dependencies>如上所述,Java EE MVC基于JAX-RS。 因此,如果您已經對JAX-RS有所了解,那么您可能會非常熟悉。
要創建我們的MVC應用程序,我們首先需要一個JAX-RS Application類:
@ApplicationPath("getting-started") public?class?GettingStartedApplication?extends?Application?{}javax.ws.rs.core.Application的此子類可用于定義其他JAX-RS組件。 在此示例中,我們不需要任何特殊配置,因此該類可以保持為空。 使用@ApplicationPath,我們定義了應用程序的基本路徑。
創建控制器
控制器負責處理傳入的請求。 根據傳入的請求,它執行業務邏輯,更新模型并返回應呈現的視圖。 一個簡單的Java EE MVC控制器如下所示:
@Controller @Path("hello") public?class?HelloController?{@InjectModels?models;@GETpublic?String?sayHello(@QueryParam("name")?String?name)?{String?message?=?"Hello?"?+?name;models.put("message",?message);return?"/WEB-INF/jsp/hello.jsp";} }Controller類使用@Controller和@Path進行注釋。 這表明該類是Java EE MVC控制器,它偵聽/ getting-started / hello上的請求。
使用CDI,可以將Models的實例注入到控制器中。 Models類代表MVC模型。 它由控制器填充數據,然后傳遞到視圖。 模型基本上是一個Map <String,Object>,可以包含任意數據。
sayHello()方法處理傳入的HTTP GET請求(由@GET表示)。 使用@QueryParam,可以將請求參數綁定到方法參數。 在sayHello()內部,請求參數名稱用于創建文本消息,然后將其添加到模型中。 返回的String定義了應呈現的視圖的路徑。
創建視圖
Java EE MVC應用程序中的視圖通常是帶有CSS和JavaScript文件HTML頁面。 在此示例中,我們的視圖是一個簡單的JSP文件,位于/WEB-INF/jsp/hello.jsp
<%@page?contentType="text/html"?pageEncoding="UTF-8"%> <!DOCTYPE?html> <html><head><meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"><title>Getting?started</title></head><body><h1>${message}</h1></body> </html>在JSP文件中,可以通過EL訪問模型屬性。 在這里,我們使用$ {message}來訪問帶有關鍵消息的模型值。
Java EE MVC規范為視圖定義了兩個標準模板引擎:JSP和Facelets。 但是,其他模板引擎也可以輕松集成。 我們將在下一篇文章中介紹其他視圖技術的集成。
運行應用程序
現在,我們準備啟動GlassFish并部署我們的新MVC應用程序。 之后,我們可以將GET請求發送到我們的控制器,并查看返回的內容。 不要忘記控制器需要一個名稱參數。
例如, GET /getting-started/hello?name=john將在HTML頁面中顯示消息Hello John 。
摘要
Java EE MVC是即將推出的新Java MVC Web框架。 它使用了許多現有的Java技術,例如JAX-RS,CDI和JSP。 該框架本身非常簡單且易于理解。 完整的MVC 1.0規范只有33頁左右,非常容易閱讀。
我們可以使用MVC 1.0參考實現的最新里程碑版本Ozark來了解即將到來的Java EE 8框架。
- 您可以在GitHub上找到示例應用程序的完整源代碼。
翻譯自: https://www.javacodegeeks.com/2015/09/java-ee-8-mvc-getting-started-with-ozark.html
總結
以上是生活随笔為你收集整理的Java EE 8 MVC:Ozark入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓建模软件(安卓建模)
- 下一篇: spring作业_Spring和石英:多