2008-10-02 52 views
18

我正在尋找使用Java開始爲Web開發 - 我有一些基本的Java知識,所以這不是一個問題,但是我在解釋各種技術時不知所措在Web應用程序中使用。針對Web的Java開發

有什麼選擇可供我使用?他們如何工作?有沒有類似Django/Ruby on Rails的框架可以用來簡化事情?

任何可能有助於瞭解可用的鏈接將不勝感激。

+0

您是否已經瞭解網絡的工作原理?無狀態,GET,POST等? – ScArcher2 2008-10-02 13:29:53

+0

是的我使用PHP和Python開發(Django),所以我對Web的工作方式有一些中間知識。 – Tom 2008-10-02 13:35:22

回答

7

的項目,我不知道如果有什麼比較像你一樣的Django的Java,但Spring有建立在J2EE

http://www.springframework.org/about

一個輕量級的Web框架

一個靈活的MVC web應用程序 框架,建立在覈心Spring 功能上。這個框架是 可通過策略 高度配置,並可容納多個視圖技術,如JSP,Velocity,Tiles,iText和POI。請注意,彈簧中間層可以很容易地與基於任何其他Web MVC框架(如Struts, WebWork或Tapestry)的Web層結合使用 。

0

J2EE是標準。您可以使用它來構建具有Java Server Pages,Servlet和EJB的應用程序。

Struts也是一個非常流行的框架,它使用JSP和Servlets。安裝它有點棘手,但它對於中型網站來說是一個非常好的選擇。

http://en.wikipedia.org/wiki/Struts

2

你需要開始servlets and JSP。 Java中有許多Web框架,它們都基於這兩種技術。

13

你的基本的Java Web技術的servlet。 Servlet允許您編寫響應各種HTTP事件(doGet,doPost,doPut等)的Java代碼。它們通常用於MVC體系結構中的控制器。 鏈接:http://java.sun.com/products/servlet/

JSP允許您使用嵌入式Java而不是其他方式(在servlet中)編寫HTML。 JSP已經通過JSF進行了擴展,以結合更新的架構進展。這與PHP和ASP在同一行。這是MVC體系結構的視圖部分。 鏈接:http://java.sun.com/developer/technicalArticles/GUI/JavaServerFaces/

很多更復雜的應用程序都使用Enterprise Java Beans(EJB)進行會話管理,集羣等。這本身不是Web技術,但您可以看到它並駕齊驅當處理更復雜的web應用程序時。其他選擇包括像Spring這樣的框架。 EJB:http://docs.jboss.org/ejb3/app-server/tutorial/ 春:http://www.springframework.org/

而且,你要熟悉ORM技術(servlet和JSP/JSF後)。領先的ORM框架目前是Hibernate。這使您可以將SQL表映射到java對象並相應地與它們交互。這是更先進的東西,所以省去它,當你試圖讓你的頭繞過EJB/Spring等。 鏈接:http://www.hibernate.org/

編輯:我忘了定義ORM。它代表爲對象關係映射/映射器(無論版本的「地圖」,你覺得用:)

0

在一般的Java更多的是基於組件的,即你沒有那麼做這一切爲你的框架(你」例如,你可能必須自己選擇一個數據庫訪問框架)。對於數據訪問,我建議使用Hibernate或iBATIS。

對於前端,實際上有數百個框架。調查JSF,Wicket,Struts 2,Stripes - 無論使用哪一個都取決於您的具體需求,因爲它們都有不同的優勢。

而對於業務層,我建議Spring框架,這是非常全面的,具有很大的參考指南/教程:)

1

這是一個非常開放式的問題。簡短的回答是「是」,有框架,庫和標準來完成從HTTP請求級寫入內容到Java內容管理系統的所有工作。

您也可以在JVM使用其他語言(例如Python和Ruby等),對這一問題。對於某些僅支持Java的技術,請調查JSP/Servlet,Struts,Struts2(它是Webwork的更新版本),Spring MVC,Tapestry,web4j,Wicket。

有建立在Java以外的JVM,但使用的語言,如Grails的其他框架。

要開始我會下載Eclipse(最新版本)和Tomcat。在Eclipse中創建一個新的Web應用程序。有guides,可以讓你開始。

開始學習JSP和Servlet是如何工作的,這是有點低的水平,並沒有真正的框架,但將讓你快速建立和運行。從那裏調查並選擇你的框架。

Spring MVC很容易建立和運行。我確定還有其他人。

2

你可以嘗試JBoss Seam的:http://www.seamframework.org/Documentation/GettingStarted

如果您正在使用的Eclipe作爲IDE存在通過JBoss的工具整合好,​​或者你可以使用Seam自帶Seam的根工具。這使您可以定義一個數據庫表(或多個表)並使用一些簡單的命令,從中構建一個完整的可運行Web項目。這是一個讓球滾動的好方法。

32

Java框架有兩種基本風格。一個被稱爲「行動」框架,另一個被稱爲「組件」框架。

行動框架專注於映射HTTP請求到Java代碼(行動),並結合HTTP請求到Java對象。 Servlets是動作框架中最基本的,並且是所有其他人都構建的基礎。

Struts是最流行的Action框架,但我不能將良心推薦給任何人。 Struts 2和Stripes更現代化,而且彼此非常相似。兩者在配置上都很輕鬆,易於使用,提供了非常好的綁定功能。

組件框架側重於用戶界面,傾向於基於高級UI組件(按鈕,列表框等)推廣更多事件驅動的體系結構。框架傾向於隱藏來自編碼器幾層下的實際HTTP請求。他們使開發更高級的用戶界面變得更加容易。 .NET是Windows的組件框架。在Java上,流行的組件框架是JSF(標準)和Wicket。

通常,如果你正在創建一個「網站」。這更類似於呈現信息(如博客或社區站點),Action框架效果更好。這些網站往往更簡單,經常獲取書籤,需要「漂亮的網址」等。這通常更容易與一個行動框架。

對於像許多UI元素和複雜工作流程的後臺應用程序,組件框架要好得多。您會發現,特別是在工具方面,使用組件框架可以更快地將這些風格的應用程序整合在一起。但是組件框架有更復雜的請求工作流程,有時候依賴於隱藏狀態,很多POST操作等等。許多URL有「可怕」的URL,有時會創建難以書籤的頁面。

這兩個框架都可以用於這兩個任務,只是一些比其他更適合於任務。

這些框架都不直接解決持久性問題,但許多框架都具有與JPA/EJB3或Hibernate緊密協作的擴展模塊或習語。

8

從Java類中的邏輯支持的JSP開始。或者使用servlets。

使用JSP和Servlet的好處是您可以獲得所有框架在底層所做的工作。而這種理解對於弄清楚如何在特定框架中執行X是至關重要的。

此外,JSP非常簡單。你可以很容易地看到你在做什麼,當你用業務邏輯搞亂視圖時,很容易看到它。

相當多的框架(Struts,Spring MVC)使用JSP作爲他們的視圖技術。這是使用Java進行Web開發的第一步。

1

如果您已經知道Ruby On Rails,則可以將其與JRuby一起使用,並使用Warbler將其部署到Java服務器(如Tomcat)。

在純Java中,Wicket有一個很好的方法,並越來越流行。

1

在研究這些框架之前,爲什麼不先研究它的一切開始?首先嚐試使用servlet進行編程,以便能夠深入瞭解大多數這些Java Web框架的核心。這將有助於您更好地理解J2EE。

0

我在大學時學習了Java,當時它在1.1.5版本中。我最近開始嘗試爲網絡編程,但是直到我閱讀Head First Servlets and JSP纔沒有意義。使用Java進行Web開發涉及到的方面比我所知道的還要多,如果沒有本書,我將退出並使用PHP。