創(chuàng)建Java Web項目
說實在的,IntelliJ的項目創(chuàng)建方式不如其它IDE的直觀,反正我一開始是沒搞懂(其實搞懂也很簡單),另外IntelliJ的不同版本之間是有差異的,網(wǎng)上找的一些資料并不準確,最好還是直接看官方文檔,根據(jù)它的Tutorial走走,這次我看的官方文檔是針對IntelliJ v12的,而現(xiàn)在我用的是v13,所幸的是差別并不大。?
New Project,然后這樣選:

那個Versions只能選3.1,貌似之前還能選3.0,這個版本其實是Servlet的版本,最新的版本是3.1,需要用Tomcat8來承載,如果你選擇用Tomcat7來承載的話,會有一個warning說不認識這個版本,使用默認版本云云,忽略這個warning就是。
在下一步中指定項目名,SDK果斷選擇最新的1.8(Java8):

這樣一來你的服務(wù)器的運行環(huán)境得部署為Java8,不過這個也沒啥壓力,Java8多了不少很有用的新特性,如果沒有什么歷史負擔的話干嘛不用?
Finish,我們現(xiàn)在來看看整個project的結(jié)構(gòu):

.idea這是IntelliJ的相關(guān)東西,我們不用管,src目錄用于放java源文件,web目錄用于放web資源,WEB-INF是java web應用固定的存放配置及類庫的目錄,index.jsp是我們首頁,HelloWorld.iml是IntelliJ的項目文件,打開工程就是打開它了,External Library是一些外部引用的庫,展開看看好多。
現(xiàn)在我們來創(chuàng)建一個Servlet,Servlet是Java的服務(wù)器端小程序(其實也可以不?。?,右擊src目錄:

然后命名為SayHello:

展開,打開SayHello.java的時候卻發(fā)現(xiàn)IntelliJ提示找不到符號:

這一定是因為某些包沒引用。如何引用?一般都是設(shè)置CLASSPATH,告訴java如何去找它的包,而這里我們可以直接指定包的位置。
打開Project Struture設(shè)置對話框(快捷鍵為+<;>),如圖:

點加號,選“Jars or directories…”,再找到Tomcat下的servlet-api.jar。

這樣就可以了,我們把doPost刪掉,用不到,再在doGet方法中寫點東西輸出,SayHello.java就變成這樣:

java的代碼寫好了,配置文件也要加點東西,打開web.xml,加上一個“”節(jié)點,改完后的web.xml變成這樣:

編譯(+),通過無壓力。但,怎么運行?
Java Web項目無法單獨運行,它需要一個程序來承載(Host)它,這和微軟體系的東西是很類似的,ASP.net程序需要IIS來承載對不?而現(xiàn)在我們很明顯需要用Tomcat來承載這個Web程序。
首先我們要配置好Tomcat,+<,>打開IntelliJ的配置。?

如上圖那樣配置好Tomcat。
然后打開Project的運行配置:

繼續(xù)看圖:

再看圖,如此般設(shè)置:

這里它提示你有個問題,說缺乏artifacts配置,你可以順著它的指引,fix一下即可。點OK。
這次可以跑了,+。注意看IntelliJ的輸出窗口里有什么提示信息,如果有,想想看是什么原因,我常常會碰到一些端口無法打開的問題,一般都是端口被占用了。
IntelliJ運行Java Web程序的時候會開啟新的Tomcat實例,很可能會和之前運行的Tomcat實例發(fā)生沖突,解決沖突的最快的辦法通常是直接把之前運行的Tomcat shutdown掉。
現(xiàn)在看看運行的成果吧:http://localhost:8080/sayhello
是不是看到“Hello World!”?這是用Java代碼輸出的“頁面”,而不是靜態(tài)頁面。
