servlet三种实现方式之一实现servlet接口
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接口的更多相关文章
- servlet三种实现方式之三通过继承HttpServlet开发servlet
servlet有三种实现方式: 1.实现servlet接口 2.继承GenericServlet 3.通过继承HttpServlet开发servlet 第三种: import java.io.*; i ...
- Servlet三种创建方式
直接实现 Servlet 接口不太方便,所以 Servlet 又内置了两个 Servlet 接口的实现类(抽象类),分别为 GenericServlet 和 HttpServlet,因此,创建 Ser ...
- servlet三种实现方式之二继承GenericServlet开发
servlet有三种实现方式: 1.实现servlet接口 2.继承GenericServlet 3.通过继承HttpServlet开发servlet 第二种示例代码如下(已去掉包名): //这是第二 ...
- Servlet 三种创建方式
servlet 是运行在 Web 服务器(tomcat)中的小型 Java 程序(即:服务器端的小应用程序) (其实就是一个java类,只不过不用再new了).servlet 通常通过 HTTP(超文 ...
- Spring IOC 三种注入方式
1. 接口注入 2. setter注入 3. 构造器注入 对象与对象之间的关系可以简单的理解为对象之间的依赖关系:A类需要B类的一个实例来进行某些操作,比如在A类的方法中需要调用B类 ...
- MyEclipse中web服务器的三种配置方式
初学Javaweb开发的人们都会遇到一个问题,就是服务器环境的搭建配置问题.下面介绍三种服务器的搭建方式. 直接修改server.xml文件 当你写了一个web应用程序(jsp/servlet),想通 ...
- java代码中init method和destroy method的三种使用方式
在java的实际开发过程中,我们可能常常需要使用到init method和destroy method,比如初始化一个对象(bean)后立即初始化(加载)一些数据,在销毁一个对象之前进行垃圾回收等等. ...
- Spring boot 集成三种拦截方式
三种拦截方式分别为: javax.servlet.Filter org.springframework.web.servlet.HandlerInterceptor org.aspectj.lang. ...
- 通过三个DEMO学会SignalR的三种实现方式
一.理解SignalR ASP .NET SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信(即:客户端(Web页面)和服务器端可以互相实时的通知消息 ...
随机推荐
- poj2389---大数乘法
#include<stdlib.h> #include<stdio.h> #include<string.h> #define MAX 100 int main() ...
- javascript原生ajax;
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- python-面向对象(二)
面向对象总结 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例( ...
- [置顶] Guava学习之Splitter
Splitter:在Guava官方的解释为:Extracts non-overlapping substrings from an input string, typically by recogni ...
- xcode UIImageView创建、图片加载、 音频文件播放、 延迟调用
代码创建 /** 创建UIImageView */ UIImageView * imageView=[[UIImageView alloc]init]; /** 设置尺寸位置 */ imageView ...
- socket中的option
/// Set an option on the socket. /** * This function is used to set an option on the socket. * * @pa ...
- C++学习之嵌套类和局部类
C++学习之嵌套类和局部类 局部类 在一个函数体内定义的类称为局部类. 局部类中只能使用它的外围作用域中的对象和函数进行联系,因为外围作用域中的变量与该局部类的对象无关.在定义局部类时需要注意:局部类 ...
- R与数据分析旧笔记(十一)数据挖掘初步
PART 1 PART 1 传统回归模型的困难 1.为什么一定是线性的?或某种非线性模型? 2.过分依赖于分析者的经验 3.对于非连续的离散数据难以处理 网格方法 <Science>上的文 ...
- java中文件保存、打开文件对话框
package com.soft.test; //AWT: FileDialog类 + FilenameFilter类 可以实现本功能 //Swing: JFileChooser类 + FileFil ...
- WireShark抓包时TCP数据包出现may be caused by ip checksum offload
最近用WireShark抓包时发现TCP数据包有报错:IP Checksum Offload,经过查阅资料终于找到了原因 总结下来就是wireshark抓到的数据包提示Checksum错误,是因为它截 ...