servlet有三种实现方式:

1.实现servlet接口

2.继承GenericServlet

3.通过继承HttpServlet开发servlet

第一种示例代码如下(已去掉包名):

import javax.servlet.*;
import java.io.*;
public class Hello implements Servlet{
//该函数用于初始化该servlet(),类似于构造函数
//该函数只会被调用一次(当用户第一次访问该servlet时被调用。
public void init(ServletConfig parm1) throws ServletException {
// Put your code here
System.out.println("init it");
}
//得到配置文件,跟servlet周期关系不大
public ServletConfig getServletConfig() {
return null;
}
//这个函数用于处理业务逻辑
//程序员应当把业务逻辑写在这里
//会被调用多次,当用户每访问该servlet时,都会被调用
//req用于获得客户端(浏览器(b/s结构))的信息,res用于向客户端(浏览器)返回信息
public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException {
System.out.println("service it..");//像控制台输出
//从res中的得到PrintWriter,才可以返回值
PrintWriter pw=res.getWriter();
pw.println("hello,world");//向浏览器输出 }
public String getServletInfo(){
return "";
}
//销毁servlet实例(释放内存)
//1.reload该servlet(webAPP)
//2.关闭tomcat
//3.关机
public void destroy() {
System.out.println("destory..");
}
}

web.xml中部署如下:(以后就不再写了)

 <servlet>
<!-- 给你的servlet取名,任意的 -->
<servlet-name>hello</servlet-name>
<!-- 指明servlet的路径,(包名+类名)-->
<servlet-class>com.Hello</servlet-class>
</servlet>
<servlet-mapping>
<!-- 名字同上 -->
<servlet-name>hello</servlet-name>
<!-- 浏览器中输入访问servlet的url,任意的 -->
<url-pattern>/hello</url-pattern>
</servlet-mapping>

url-pattern路径任意,如上的话访问时地址栏就为(tomcat服务器,项目名称为servlet)

http://localhost:8080/servlet/hello

servlet三种实现方式之一实现servlet接口的更多相关文章

  1. servlet三种实现方式之三通过继承HttpServlet开发servlet

    servlet有三种实现方式: 1.实现servlet接口 2.继承GenericServlet 3.通过继承HttpServlet开发servlet 第三种: import java.io.*; i ...

  2. Servlet三种创建方式

    直接实现 Servlet 接口不太方便,所以 Servlet 又内置了两个 Servlet 接口的实现类(抽象类),分别为 GenericServlet 和 HttpServlet,因此,创建 Ser ...

  3. servlet三种实现方式之二继承GenericServlet开发

    servlet有三种实现方式: 1.实现servlet接口 2.继承GenericServlet 3.通过继承HttpServlet开发servlet 第二种示例代码如下(已去掉包名): //这是第二 ...

  4. Servlet 三种创建方式

    servlet 是运行在 Web 服务器(tomcat)中的小型 Java 程序(即:服务器端的小应用程序) (其实就是一个java类,只不过不用再new了).servlet 通常通过 HTTP(超文 ...

  5. Spring IOC 三种注入方式

    1.    接口注入 2.    setter注入 3.    构造器注入 对象与对象之间的关系可以简单的理解为对象之间的依赖关系:A类需要B类的一个实例来进行某些操作,比如在A类的方法中需要调用B类 ...

  6. MyEclipse中web服务器的三种配置方式

    初学Javaweb开发的人们都会遇到一个问题,就是服务器环境的搭建配置问题.下面介绍三种服务器的搭建方式. 直接修改server.xml文件 当你写了一个web应用程序(jsp/servlet),想通 ...

  7. java代码中init method和destroy method的三种使用方式

    在java的实际开发过程中,我们可能常常需要使用到init method和destroy method,比如初始化一个对象(bean)后立即初始化(加载)一些数据,在销毁一个对象之前进行垃圾回收等等. ...

  8. Spring boot 集成三种拦截方式

    三种拦截方式分别为: javax.servlet.Filter org.springframework.web.servlet.HandlerInterceptor org.aspectj.lang. ...

  9. 通过三个DEMO学会SignalR的三种实现方式

    一.理解SignalR ASP .NET SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信(即:客户端(Web页面)和服务器端可以互相实时的通知消息 ...

随机推荐

  1. cygwin在Windows8.1中设置ssh的问题解决

    为了在Windows 8.1上直接使用Linux环境和hadoop开发,装了cygwin,同时设置ssh无密码登录.   但正常ssh-keygen后复制到authorised_keys后登录出现提示 ...

  2. poj1658

    #include <stdio.h> #include <stdlib.h> int main() { int n; scanf("%d",&n); ...

  3. uber在限制新司机加入了,看看新政策把

    您可以点击“车主奖励分组查询”输入您在系统注册的手机号查询您所在奖励分组 5月25日-5月31日 奖励明细 1. 成都优步合作车主第一组 奖励政策: (账户激活时间在2015年5月29日之前) *以下 ...

  4. 《4》CentOS7.0+OpenStack+kvm云平台部署—配置Nova

    感谢朋友支持本博客,欢迎共同探讨交流,因为能力和时间有限,错误之处在所难免,欢迎指正! 假设转载.请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...

  5. XX cannot be resolved to a type

    http://www.cnblogs.com/xuxm2007/archive/2011/10/20/2219104.html 我是project->clean...即可 原理:将工程中的.cl ...

  6. 论try/catch的重要性,我们经常遇到代码出现无法调试的错误,程序退出的时候崩溃。这跟我们代码日常保护的习惯息息相关。

    每当构造函数或析构函数中出现溢出,会导致调试非常困难,而使用try/catch来处理构造中的初始化就非常重要了. 如上图,在构造函数中,我们的很多初始化动作会放在这里,但是却忽视了,一旦初始化出错了, ...

  7. java——String的那边破事

    经典的先看下面一段代码,请问最终创建几个对象,分别在哪里? String s0 = new String("luoliang.me"); String s1 = "luo ...

  8. nginx+php的配置

    作了N多次php环境的搭建,网上的方法还真是多,但是实际操作起来总有一些大大小小的出入,很多错误经常让我纠结不已.久病成医,渐渐地我自己就总结出了一些经验.自我感觉良好. 这种方法并非以前所流行的ap ...

  9. firebug如何使用

    1.怎么安装firebug: a.打开火狐浏览器--------b.点击火狐浏览器的右上角这个小图标-------c.点击<获取附件组件>,在右上角的搜索框()内,输入firebug,点击 ...

  10. hdu 4902 Nice boat 线段树

    题目链接 给n个数, 两种操作, 第一种是将区间内的数变成x, 第二种是将区间内大于x的数变为gcd(x, a[i]). 开三个数组, 一个记录区间最大值, 这样可以判断是否更新这一区间, 一个laz ...