创建我们的第一个servlet小程序

来源:互联网 发布:js click与onclick 编辑:程序博客网 时间:2024/05/01 00:49

eclipse+tomcat+tomcat插件(安装到eclipse)

1.eclipse创建tomcat项目

file->new->project选择tomcat project

填写项目名称TestServlet

完成后会在tomcat下的conf/server.xml文件下新增一样代码


2.tomcat项目目录结构

WEB-INF/src:用于存放我们的java文件

work:用于存放编译jsp过程中生成的文件

WEB_INF:web.xml放置位置,另外这里会有java编译生成的.class文件(注1)

注1:eclipse显示三种视图模式

navigator:source以及resource是以文件夹为单位形式整合显示的。学习阶段建议使用该模式

package explorer:source是以包为单位整合显示的(能看加载了那些jar包)

project explorer:工程类型,显示相关的内容


3.在WEB-INF/src中新建一个java文件,名为TestServlet

import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class TestServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stub//super.doGet(req, resp);resp.setContentType("text/html");PrintWriter out = resp.getWriter();out.println("<html><body>TestServlet</body></html>");}}
方法中只写了输出HttpServletResponse


4.在WEB-INF中新建一个web.xml文件(这个文件其实类似于配置、路由功能)

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"  version="3.0">    <servlet>  <servlet-name>TestServlet</servlet-name>  <servlet-class>TestServlet</servlet-class>  </servlet>  <servlet-mapping>  <servlet-name>TestServlet</servlet-name>  <url-pattern>/TestServlet</url-pattern>  </servlet-mapping>  </web-app>
这里的

<web-app xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"  version="3.0"></web-app>
可以从tomcat中conf/web.xml文件中copy出来

这里

<servlet>  <servlet-name>TestServlet</servlet-name>  <servlet-class>TestServlet</servlet-class>  </servlet>  <servlet-mapping>  <servlet-name>TestServlet</servlet-name>  <url-pattern>/TestServlet</url-pattern>  </servlet-mapping>

servlet-name 你的servlet程序的名称(servlet和servlet-mapping的servlet-name必须一致)

servlet-class 你的servlet程序的类名称,加包前缀的(如果类在某个包下)

url-pattern 你的url地址,本url就指向你的servlet程序(servlet-class)

重启tomcat,访问http://127.0.0.1:8080/TestServlet/TestServlet

第一个TestServlet是你的工程名,第二个是url-pattern名称(切记)


5.jsp文件

在TestServlet根目录下创建index.jsp文件(入口文件)

在body标签加入一行代码 Test jsp!!!


6.访问http://127.0.0.1:8080/TestServlet,浏览器就会出现Test jsp!!!


结束语,因为doGet只有输出,所以请求后就返回数据

再说一遍请求/返回流程

客户端-》服务器端-》servlet端 

servlet端-》服务器端-》客户端


注意为何没把项目放在tomcat下的webapps目录下还可以访问

tomcat的conf/server.xml

新增了一行代码

<Context path="/TestServlet" reloadable="true" docBase="D:\Program Files\eclipse\workspace\TestServlet" workDir="D:\Program Files\eclipse\workspace\TestServlet\work" />
目标转向的意思



!!!如果不使用eclipse

1.编译TestServlet.java (命令javac TestServlet.java)生成TestServlet.class文件

2.把TestServlet.class文件放在WEB-INF/classes目录下重启tomcat


具体代码我会打包发上去有需要下载

云盘代码包

http://pan.baidu.com/s/1o6JLY46
0 0