本文假定你已安裝了 JDK 環(huán)境,如未安裝,可參閱 Java 開發(fā)環(huán)境配置 。
我們可以使用 Eclipse 來搭建 JSP 開發(fā)環(huán)境,首先我們分別下載一下軟件包:
- Eclipse J2EE:http://www.eclipse.org/downloads/
- Tomcat:http://tomcat.apache.org/download-70.cgi
Tomcat 下載安裝
你可以根據(jù)你的系統(tǒng)下載對應(yīng)的包(以下以Window系統(tǒng)為例):
下載之后,將壓縮包解壓到D盤(你可以自己選擇):
注意目錄名不能有中文和空格。目錄介紹如下:
- bin:二進制執(zhí)行文件。里面最常用的文件是startup.bat,如果是 Linux 或 Mac 系統(tǒng)啟動文件為 startup.sh。
- conf:配置目錄。里面最核心的文件是server.xml??梢栽诶锩娓亩丝谔柕取DJ端口號是8080,也就是說,此端口號不能被其他應(yīng)用程序占用。
- lib:庫文件。tomcat運行時需要的jar包所在的目錄
- logs:日志
- temp:臨時產(chǎn)生的文件,即緩存
- webapps:web的應(yīng)用程序。web應(yīng)用放置到此目錄下瀏覽器可以直接訪問
- work:編譯以后的class文件。
接著我們可以雙擊 startup.bat 啟動 Tomcat,彈出如下界面:
這個時候,本地的服務(wù)器就已經(jīng)搭建起來了。如果想關(guān)閉服務(wù)器,可以直接關(guān)閉上面的窗口,或者在里面輸入Ctrl+C禁止服務(wù)。
接著我們在瀏覽器中輸入 http://localhost:8080/,如果彈出如下界面,表示tomcat安裝成功并且啟動起來了:
我們現(xiàn)在在瀏覽器上測試一下它吧:
首先在D:\apache-tomcat-8.0.14\webapps\ROOT目錄中新建一個jsp文件:
test.jsp 文件代碼如下:
<%@ page contentType="text/html;charset=UTF-8" %> <% out.print("w3cschool教程 : http://m.o2fo.com"); %>
接著在瀏覽器中訪問地址 http://localhost:8080/test.jsp, 輸出結(jié)果如下:
將 Tomcat 和 Eclipse 相關(guān)聯(lián)
Eclipse J2EE下載后,解壓即可使用,我們打開Java EE ,選擇菜單欄Windows-->preferences(Mac 系統(tǒng)為 Eclipse-->偏好設(shè)置),彈出如下界面:
上圖中,點擊"add"的添加按鈕,彈出如下界面:
在選項中,我們選擇對應(yīng)的 Tomcat 版本,接著點擊 "Next",選擇 Tomcat 的安裝目錄,并選擇我們安裝的 Java 環(huán)境:
點擊 "Finish",完成配置。
創(chuàng)建實例
選擇 "File-->New-->Dynamic Web Project",創(chuàng)建 TomcatTest 項目:
點開上圖中的紅框部分,彈出如下界面:
注意如果已默認選擇了我們之前安裝的 Tomcat 和 JDK 則可跳過此步。
然后,單擊finish, 繼續(xù):
工程文件結(jié)構(gòu):
上圖中各個目錄解析:
- deployment descriptor:部署的描述。
- Web App Libraries:自己加的包可以放在里面。
- build:放入編譯之后的文件。
- WebContent:放進寫入的頁面。
在WebContent文件夾下新建一個test.jsp文件。在下圖中可以看到它的默認代碼:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> </body> </html>
接著我們修改下test.jsp文件代碼如下所示:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>w3cschool教程</title> </head> <body> <% out.println("Hello World!"); %> </body> </html>
程序運行之前,我們先修改一下瀏覽器選項:
接著我們運行該項目:
運行時,彈出如下錯誤:(如果沒有此錯誤,請忽略)
原因是,我們之前點擊了Tomcat安裝包中的?startup.bat,這樣一來就手動打開了Tomcat服務(wù)器,這明顯是多余的,因為程序運行時,eclipse會自動開啟Tomcat服務(wù)器。所以我們先手動關(guān)掉tomcat軟件,再次運行程序,就行了。控制臺信息如下:
瀏覽器訪問 http://localhost:8080/TomcatTest/test.jsp, 即可輸出正常結(jié)果:
Servlet 實例創(chuàng)建
我們也可以使用以上環(huán)境創(chuàng)建 Servlet 文件,選擇 "File-->New-->Servlet":
位于 TomcatTest項目的 /TomcatTest/src 目錄下創(chuàng)建 "HelloServlet" 類,包為 "com.youj.test":
HelloServlet.java 代碼如下所示:
package com.youj.test; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class HelloServlet */ @WebServlet("/HelloServlet") public class HelloServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public HelloServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 使用 GBK 設(shè)置中文正常顯示 response.setCharacterEncoding("GBK"); response.getWriter().write("w3cschool教程:http://m.o2fo.com"); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
接著重啟 Tomcat,瀏覽器訪問 http://localhost:8080/TomcatTest/HelloServlet:
參考文章:http://www.cnblogs.com/smyhvae/p/4046862.html
更多建議: