servlet测试

首先,打开myeclipse,file|new|Dynamic Web Project 会出现一个对话框,在Project name的文本框中输入:FirstServlet;然后点击finish,完成创建。

注意配置tomcat,点击工具栏的Window/Preferences/MyEclipse/Servers/Tomcat/Tomcat 7.x,然后选中你的tomcat,Enable,确定;

其次,展开项目,在src下新建New|Servlet,弹出对话框,在Java package中输入:cc.openhome(包名),className:HelloServlet,点击finish完成,如下:

添加蓝色部分

package cc.openhome;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

@WebServlet("/hello.view")

public class HelloServlet extends HttpServlet { //1.继承HttpServlet

  public HelloServlet() {   super();  }

  public void destroy() {   super.destroy();  }

  public void doGet(HttpServletRequest request, HttpServletResponse response)    throws ServletException, IOException { //2.重新定义doGet

    response.setContentType("text/html;charset=UTF-8");   //3.设置响应类型

    PrintWriter out = response.getWriter();   //4.取得响应输出对象

    String name=request.getParameter("name");   //5.取得请求参数

    out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");

    out.println("<HTML>");

    out.println("<HEAD><TITLE>A Servlet</TITLE></HEAD>");

    out.println("<BODY>");

    out.println("<h1>Hello!"+name+"</h1>");   //6.数据输出到前端

    out.print("This is ");

    out.print(this.getClass());

    out.println(", using the GET method");

    out.println("  </BODY>");

    out.println("</HTML>");

    out.flush();   out.close();

  }

  public void doPost(HttpServletRequest request, HttpServletResponse response)    throws ServletException, IOException {

    response.setContentType("text/html");

    PrintWriter out = response.getWriter();

    out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");

    out.println("<HTML>");   out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");

    out.println("  <BODY>");

    out.print("    This is ");

    out.print(this.getClass());

    out.println(", using the POST method");

    out.println("  </BODY>");

    out.println("</HTML>");

    out.flush();

    out.close();

  }

  public void init() throws ServletException {   // Put your code here  }

}

在HelloServlet.java 上右击选择 Run as / MyEclipse Server Application启动tomcat;

在浏览器地址栏输入http://localhost:8080/FirstServlet/hello.view?name=nihao会出现如下结果:

至于标注@WebServlet("/hello.view") 这表示URL是/hello.view,就会由HelloServlet.java来处理请求。

另外,url也可以在项目的WEB-INF/web.xml内设置,如:

<servlet>

  <servlet-name>HelloServlet</servlet-name>

  <servlet-class>cc.openhome.HelloServlet</servlet-class>

  <load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

  <servlet-name>HelloServlet</servlet-name>

  <url-pattern>/hello.do</url-pattern>

</servlet-mapping>

当请求为/hello.do时,则有HelloServlet来处理,这分别是由<servlet-mapping>中的<servlet-name>和<url-pattern>来定义,而HelloServlet名称的Servlet,实际上是cc.openhome.HelloServlet类的实例,这分别是由<servlet>中的<servlet-name>和<servlet-calss>来定义,如果有多个Servlet在设置<load-on-startup>时,使用了相同的数字,则以其在web.xml中设置的顺序来初始Servlet,若<url-pattern>中的内容和标注中的内容一样,则web.xml会覆盖@WebServlet()标注

有三种方式可以设置处理Servlet请求的方式,请参考:

http://e.dangdang.com/html/reader.html;jsessionid=9798112171FADBF7AC2707188C1DF13F?productId=1900280541&bookUid=bb.135546768822699731

servlet的小例子的更多相关文章

  1. spring-mvc-两个个小例子

    1.用Eclipse创建一个工程,命名为spring2.0 并添加相应的jar包(我用的是4.0.5的版本)到 lib 包下: spring-webmvc-4.0.5.RELEASE.jar spri ...

  2. jetty 介绍以及小例子

    Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布.开发人员可以将 ...

  3. springmvc入门的第一个小例子

    今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...

  4. java即时通信小例子

    学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...

  5. Runtime的几个小例子(含Demo)

    一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.)           1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数);  [runti ...

  6. bootstrap 模态 modal 小例子

    bootstrap 模态 modal  小例子 <html> <head> <meta charset="utf-8" /> <title ...

  7. INI配置文件分析小例子

    随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...

  8. JavaScript小例子:复选框全选

    JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...

  9. 【zTree】 zTree使用的 小例子

    使用zTree树不是第一次了  但是 还是翻阅着之前做的 对照着 使用起来比较方便  这里就把小例子列出来   总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先  在 ...

随机推荐

  1. Undertow,Tomcat和Jetty服务器配置详解与性能测试

    undertow,jetty和tomcat可以说是javaweb项目当下最火的三款服务器,tomcat是apache下的一款重量级的服务器,不用多说历史悠久,经得起实践的考验.然而:当下微服务兴起,s ...

  2. Eclipse开发Android应用 找不到平板

    1.驱动安装正确2.平板的连接方式正确,不要用大容量存储/sd卡模式这个设置在4.3上很难找呀.设置->存储->点右上角的菜单 3.打开USB调试.4.上述问题都检查后,在eclipse里 ...

  3. FastJson中文乱码

    初学springboot使用fastJson替换默认的jackson后出现中文乱码 解决方式1: import java.util.ArrayList; import java.util.List; ...

  4. sqlplus中文问号

    添加两个环境变量后重启. 1.LANG=zh_CN.GBK(GBK是这样形式的,不同编码这里的value值需要跟着改变) 2.NLS_LANG=AMERICAN_AMERICA.ZHS16GBK(这个 ...

  5. tflearn tensorflow LSTM predict sin function

    from __future__ import division, print_function, absolute_import import tflearn import numpy as np i ...

  6. WEB标准以及W3C的理解和认识

    web标准简单来说可以分为结构.表现和行为.其中结构主要是有HTML标签组成.表现即指css样式表,通过css可以是页面的结构标签更具美感.行为是指页面和用户具有一定的交互,同时页面结构或者表现发生变 ...

  7. hdu 3264 09 宁波 现场 E - Open-air shopping malls 计算几何 二分 圆相交面积 难度:1

    Description The city of M is a famous shopping city and its open-air shopping malls are extremely at ...

  8. Can't create session svn: Unable to connect to a repository at URL “...”的解决方案

    Can't create sessionsvn: Unable to connect to a repository at URL '...' Cannot negotiate authenticat ...

  9. 分析器错误信息: 服务器标记不能包含 <% ... %> 构造

    我的程序如下:<form runat="server"><TABLE><TR><TD>用户名:</TD><TD&g ...

  10. HDU 4068

    http://acm.hdu.edu.cn/showproblem.php?pid=4068 暴力枚举两个全排列,犯了若干错误,以此为鉴 #include <iostream> #incl ...