2011-03-02 67 views
14

我的工作需要我徹底改變技術。我對此很好,我很高興能夠學習新的東西;但我覺得我在Java中是一個新手,特別是在我沒有經驗的Web開發方面。從ASP.Net轉到Java的Web開發

只是一個小的背景下,我會用ASP MVC 3,Razor視圖引擎,C#和後端一切都將是很好的TDD'd和使用EF進行數據訪問通常創建網站。一般來說,我一直在使用.NET大約4年。

現在我明白了,爲了我的目的,我不會覺得很難將語言技能從C#翻譯成Java語法,它只是周圍的一切,框架,Web服務器和在短期內會讓我困惑的東西。首先,即使使用新的IDE也會令人沮喪。

任何人都可以提供任何建議嗎?我知道我們想要使用Spring MVC,大概與Tomcat一起使用。我是否需要爲開發目的設置和安裝Tomcat?或者eclipse/netbeans(我應該使用?!)自動爲你做這件事,就像Visual Studio通過製作一個本地的IIS網頁服務器來使用一樣。

對於TDD,是有一個很好的Eclipse插件/ netbeans的人會推薦這樣我就可以右鍵單擊一個類文件,然後執行「運行測試」

任何一般有用的鏈接,入門教程?

乾杯

+1

在ligther方面,找到另一個工作;-) – Nauman 2011-03-02 10:19:09

+0

對於IDE,請考慮JetBrains的IntelliJ IDEA。如果不是,那麼NetBeans將是最好的選擇。它有內置的服務器,如Tomcat和Glassfish。對於EJB,Glassfish更好,但如果你只是製作網站,Tomcat應該這樣做。 NetBeans自動在Web服務器上運行應用程序。編輯器和插件以及鍵盤快捷鍵都可以適應,因此開發應該很容易。實際上,我發現JetBrains IDE比Visual Studio更適合使用。太糟糕了,他們沒有ASP.NET MVC IDE。我不希望這被認爲是一個答案,所以讓它在這裏。 – AlexanderMP 2011-03-02 10:54:42

+0

我試圖知道你是否已經轉移到Java,但我認爲你沒有,我知道你從這裏有趣的標籤! – 2012-06-29 18:21:29

回答

2

最大的問題是,你要留卡在微軟的很容易上癮的產品,它的「神奇」工具和編輯器和插件,甚至鍵盤快捷鍵。

所以,我認爲這是非常難以移動。

+3

感謝您的鼓勵:) – qui 2011-03-02 10:33:51

7

我不建議開始Spring MVC。你應該開始一個更低的水平,以保持簡單的一開始。

我建議爲Java EE開發人員安裝EclipseIDE版本。該版本包含除應用程序服務器以外的所有必需內容。

所以,你必須安裝一個Tomcat自己。

Eclipse您現在可以從一個「新項目」開始,然後選擇動態Web項目,它可以完成全新的Web應用程序所需的全部功能。

出的Eclipse然後你可以右擊該項目,並單擊服務器上運行,這將打開在其中配置的東西你Tomcat安裝qizard。

這就是設置的內容。而且您應該使用Eclipse,因爲Eclipse是專業環境中的標準編輯器。

你現在應該學到什麼或你應該開始首先是學習Java的,如果你不是已經做到了。然後繼續:Servlet API和Java服務器頁面(JSP)API。

你應該讓你對一些書讓你的頭周圍。

之後,理解Spring MVC是什麼,它做了什麼以及它是如何工作的將會容易得多。

在這種情況下,從Spring MVC開始,就像從屋頂開始建造房子一樣。我認爲這會失敗。

編輯:爲了完成這個,我發現這個鏈接here,這在我看來似乎是一個很好的第一個起點。

編輯:另一個最後一件事:爲JavaTDD標準庫被稱爲JUnit並有一個很好的插件Eclipse使用它。

1

幾點建議:

  • 測試驅動開發 - 的JUnit,HttpUnit的

  • IDE - Eclipse的(免費),的IntelliJ(商業) - 都提供了您所期望的先進的IDE功能,包括嵌入式服務器

  • Web框架 - 重要:您應該在選擇框架時使用的標準是您是否可以在不必重新調整y或重新啓動服務器以進行更改。 (支持這個的兩個例子是Grails(基於腳本)和Tapestry5(使用實時類重新加載 - 我相信這些日子還有很多事情要做......但先檢查一下,否則你會浪費大量時間等待部署變化)

  • 服務器 - Tomcat7和Jetty都是很好的

碼頭小,速度快而靈活,它可以使,即使你最終在生產中使用另一臺服務器發展的一個不錯的選擇你。可以嵌入到Eclipse(RunJettyRun)中,也可以編寫自己的掛鉤來啓動它,如下所示:

private static void run(int port, String resourceBase, String descriptor) { 
    Server server = new Server(port); 
    WebAppContext context = new WebAppContext(); 
    context.setResourceBase(resourceBase); 
    context.setDescriptor(descriptor); 
    context.setContextPath("/"); 
    context.setParentLoaderPriority(true); 
    server.setHandler(context); 
     server.start(); 
    server.join(); 
} 
1

嘗試使用Oracle ADF(應用程序開發框架),這與Microsoft Visual Studio的非常相似。