使用标准版Eclipse搭建Java Web环境,花费了一个晚上,终于可以用了,参考了三篇博客,这里摘抄总结一下。
你需要下载三个东西
Eclipse J2EE:http://www.eclipse.org/downloads/
Tomcat 7.0:http://tomcat.apache.org/download-70.cgi
Eclipse Tomcat插件:http://www.eclipsetotale.com/tomcatPlugin.html
安装好Eclipse J2EE和Tomcat7.0后,将插件解压缩到Eclipse目录下的plugins即可,然后我们就可以进行下一步了
1、点击File->New->Project,然后选择Tomcat Project
2、填写项目名称为HelloWorld,单击Next
3、这里很关键,一定要在Can update...上面打个勾,这样后面我们在编辑servlet的时候会更新对应的xml,后面我们可以看到具体原因,完成后单击Finish
4、创建好后我们就可以看到项目的文件结构了,这一需要解释一下几个我们需要知道的文件夹:
WEB-INF/src:用于存放我们的java文件,servlet也是放在这里
work:用于存放编译jsp过程中生成的文件
WEB_INF:web.xml放置在这里,另外这里会有java构建后生成的class文件,该目录下的lib目录主要用于防止第三方jar包,Tomcat自动为我们加载,classes文件夹主要用于放置我们编译好的servlet文件。
而我们要用到的jsp文件则从HelloWorld根目录开始放置。
5、在WEB-INF/src中新建一个java文件,名字叫HelloServlet,并添加如下代码:
servlet 的doGet和doPost都有两个参数:
1)HttpServletRequest 表示客户端传过来的一个请求,然后被Tomcat包装成对象;
2)HttpServletResponse 表示对客户端的一个应答,将数据发送给客户端;
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloServlet extends HttpServlet { private static final long serialVersionUID = 1L; // Default versionUID. @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); PrintWriter out = resp.getWriter(); out.println("<HTML><BODY>Hello MyShadowself!</BODY></HTML>"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub super.doPost(req, resp); } }
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/FirstServlet</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
1) <servlet-name> 标签是给你的servlet起个名字,整个名字是给tomcat来看的;
2) <servlet-class> 对应你编译后的servlet的类名;
3) <url-pattern> 整个标签主要是告诉Tomcat,Client端访问我这个servlet而使用的字段是什么;
这里注意两点:
a) <url-pattern>标签内容要以”/”开头;
b) 每个servlet可以对应很多个访问字段,比如这里我有两个 <servlet-mapping>对应两个访问字段"HelloServlet"和"FirstServlet"
4)welcome-file-list是用来表示首页的,之后我们会用到它,这里先放着。
6、然后我们点击eclipse工具栏上启动Tomcat的标识,启动服务器,访问http://localhost:8080/HelloWorld/HelloServlet或者是:http://localhost:8080/HelloWorld/FirstServlet,我们可以看到Hello abc!字样,这样我们的servlet就搭建好了(注意访问地址一定要注意大小写,大小写错误也会导致访问失败)
在HelloWorld工程根目录下创建一个名为index.jsp的文件,代码如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!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=ISO-8859-1"> <title>NumberGuess</title> </head> <body> Hello jsp! </body> </html>
第四步:输入网址访问
做好后启动服务器,访问http://localhost:8080/HelloWorld,如果浏览器出现"Hello jsp!"则说明你已经配置成功了,之后你就可以开始在配置好的环境下工作了。
你可能会问,为什么我没有把项目转移到tomcat的webapps目录下还可以访问到呢?这是因为提前修改Tomcat的conf/context.xml文件,设置Tomcat自动为我们监控目录是否有变化,有变化就自动为我们重新加载,设置方法:
在Tomcat目录下,conf/context.xml 文件中 <Context> 标签加入一个属性,如下:
<Context reloadable="true" />
<role rolename="manager-gui"/> <user username="your_name" password="your_password" roles="manager-gui"/>
1.点击打开链接
2.点击打开链接
3.点击打开链接