Eclipse JSP/Servlet 环境搭建

本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置

我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载一下软件包:

Tomcat 下载安装

你可以根据你的系统下载对应的包(以下以Window系统为例):

Eclipse JSP/Servlet 环境搭建 - 图1

下载之后,将压缩包解压到D盘(你可以自己选择):

Eclipse JSP/Servlet 环境搭建 - 图2

注意目录名不能有中文和空格。目录介绍如下:

  • bin:二进制执行文件。里面最常用的文件是startup.bat,如果是 Linux 或 Mac 系统启动文件为 startup.sh
  • conf:配置目录。里面最核心的文件是server.xml。可以在里面改端口号等。默认端口号是8080,也就是说,此端口号不能被其他应用程序占用。
  • lib:库文件。tomcat运行时需要的jar包所在的目录
  • logs:日志
  • temp:临时产生的文件,即缓存
  • webapps:web的应用程序。web应用放置到此目录下浏览器可以直接访问
  • work:编译以后的class文件。

接着我们可以双击 startup.bat 启动 Tomcat,弹出如下界面:

Eclipse JSP/Servlet 环境搭建 - 图3

这个时候,本地的服务器就已经搭建起来了。如果想关闭服务器,可以直接关闭上面的窗口,或者在里面输入Ctrl+C禁止服务。

接着我们在浏览器中输入 http://localhost:8080/,如果弹出如下界面,表示tomcat安装成功并且启动起来了:

Eclipse JSP/Servlet 环境搭建 - 图4

我们现在在浏览器上测试一下它吧:

首先在D:\apache-tomcat-8.0.14\webapps\ROOT目录中新建一个jsp文件:

Eclipse JSP/Servlet 环境搭建 - 图5

test.jsp 文件代码如下:

  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <%
  3. out.print("菜鸟教程 : http://www.runoob.com");
  4. %>

接着在浏览器中访问地址 http://localhost:8080/test.jsp, 输出结果如下:

Eclipse JSP/Servlet 环境搭建 - 图6


将 Tomcat 和 Eclipse 相关联

Eclipse J2EE下载后,解压即可使用,我们打开Java EE ,选择菜单栏Windows—>preferences(Mac 系统为 Eclipse—>偏好设置),弹出如下界面:

Eclipse JSP/Servlet 环境搭建 - 图7

上图中,点击"add"的添加按钮,弹出如下界面:

Eclipse JSP/Servlet 环境搭建 - 图8

在选项中,我们选择对应的 Tomcat 版本,接着点击 "Next",选择 Tomcat 的安装目录,并选择我们安装的 Java 环境:

Eclipse JSP/Servlet 环境搭建 - 图9

点击 "Finish",完成配置。

创建实例

选择 "File—>New—>Dynamic Web Project",创建 TomcatTest 项目:

Eclipse JSP/Servlet 环境搭建 - 图10

Eclipse JSP/Servlet 环境搭建 - 图11

点开上图中的红框部分,弹出如下界面:

Eclipse JSP/Servlet 环境搭建 - 图12

注意如果已默认选择了我们之前安装的 Tomcat 和 JDK 则可跳过此步。

然后,单击finish, 继续:

Eclipse JSP/Servlet 环境搭建 - 图13

Eclipse JSP/Servlet 环境搭建 - 图14

工程文件结构:

Eclipse JSP/Servlet 环境搭建 - 图15

上图中各个目录解析:

  • deployment descriptor:部署的描述。
  • Web App Libraries:自己加的包可以放在里面。
  • build:放入编译之后的文件。
  • WebContent:放进写入的页面。 在WebContent文件夹下新建一个test.jsp文件。在下图中可以看到它的默认代码:
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Insert title here</title>
  8. </head>
  9. <body>
  10.  
  11. </body>
  12. </html>

接着我们修改下test.jsp文件代码如下所示:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>菜鸟教程</title>
  8. </head>
  9. <body>
  10. <%
  11. out.println("Hello World!");
  12. %>
  13. </body>
  14. </html>

程序运行之前,我们先修改一下浏览器选项:

Eclipse JSP/Servlet 环境搭建 - 图16

接着我们运行该项目:

Eclipse JSP/Servlet 环境搭建 - 图17

运行时,弹出如下错误:(如果没有此错误,请忽略)

Eclipse JSP/Servlet 环境搭建 - 图18

原因是,我们之前点击了Tomcat安装包中的​startup.bat,这样一来就手动打开了Tomcat服务器,这明显是多余的,因为程序运行时,eclipse会自动开启Tomcat服务器。所以我们先手动关掉tomcat软件,再次运行程序,就行了。控制台信息如下:

Eclipse JSP/Servlet 环境搭建 - 图19

浏览器访问 http://localhost:8080/TomcatTest/test.jsp, 即可输出正常结果:

Eclipse JSP/Servlet 环境搭建 - 图20


Servlet 实例创建

我们也可以使用以上环境创建 Servlet 文件,选择 "File—>New—>Servlet":

Eclipse JSP/Servlet 环境搭建 - 图21

位于 TomcatTest项目的 /TomcatTest/src 目录下创建 "HelloServlet" 类,包为 "com.runoob.test":

Eclipse JSP/Servlet 环境搭建 - 图22

HelloServlet.java 代码如下所示:

  1. package com.runoob.test;
  2.  
  3. import java.io.IOException;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.annotation.WebServlet;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9.  
  10. /**
  11. * Servlet implementation class HelloServlet
  12. */
  13. @WebServlet("/HelloServlet")
  14. public class HelloServlet extends HttpServlet {
  15. private static final long serialVersionUID = 1L;
  16.  
  17. /**
  18. * @see HttpServlet#HttpServlet()
  19. */
  20. public HelloServlet() {
  21. super();
  22. // TODO Auto-generated constructor stub
  23. }
  24.  
  25. /**
  26. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  27. */
  28. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  29. // 使用 GBK 设置中文正常显示
  30. response.setCharacterEncoding("GBK");
  31. response.getWriter().write("菜鸟教程:http://www.runoob.com");
  32. }
  33.  
  34. /**
  35. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  36. */
  37. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  38. // TODO Auto-generated method stub
  39. doGet(request, response);
  40. }
  41.  
  42. }

创建 /TomcatTest/WebContent/WEB-INF/web.xml 文件(如果没有),代码如下所示:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app version="2.5"
  3. xmlns="http://java.sun.com/xml/ns/javaee"
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  5. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  6. http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  7. <servlet>
  8. <!-- 类名 -->
  9. <servlet-name>HelloServlet</servlet-name>
  10. <!-- 所在的包 -->
  11. <servlet-class>com.runoob.test.HelloServlet</servlet-class>
  12. </servlet>
  13. <servlet-mapping>
  14. <servlet-name>HelloServlet</servlet-name>
  15. <!-- 访问的网址 -->
  16. <url-pattern>/TomcatTest/HelloServlet</url-pattern>
  17. </servlet-mapping>
  18. </web-app>

接着重启 Tomcat,浏览器访问 http://localhost:8080/TomcatTest/HelloServlet

Eclipse JSP/Servlet 环境搭建 - 图23

参考文章:http://www.cnblogs.com/smyhvae/p/4046862.html

Servlet3.0新特性(得Tomcat7.0版本及以上),@WebServlet 用于将一个类声明为 Servlet,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为 Servlet。

按照教程安装的时候发现,我的eclipse中没有“服务区”选项。在网上找到了相关的解决方法,方法如下。

  • 在软件eclipse下的Help->InstallNew Software->中,在Work with中输入download。
  • 然后安装Web,XML,Java EE and OSGI这个选框。
  • 然后一直点击“下一步”,即可完成安装 ludans