2、通过继承GenericServlet开发Servlet
说明:通过继承GenericServlet开发Servlet,只需要重写service方法,相对实现Servlet接口开发servlet需要重写5个方法来说比较简单。
HelloGeneric 继承自GenericServlet,要开发这样的servlet需要重写service方法,位于classes文件夹下
package test;
import javax.servlet.GenericServlet;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.PrintWriter;
import java.io.IOException;
public class HelloGeneric extends GenericServlet{
//重写service方法
public void service(ServletRequest req,ServletResponse res){
try{
PrintWriter pw = res.getWriter();
pw.println("hello,world!generic");
}
catch (IOException e){
e.printStackTrace();
}
}
}
编译通过后生成test文件夹里面含有HelloGeneric.class文件
web.xml文件代码如下
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true">
启动tomcat服务器,在浏览器地址栏中输入http://localhost:8989/myWebSite/hellogeneric
在浏览器中就会出现hello,world!generic
3.通过继承HttpServlet去开发servlet
需要重写doGet(),doPost()方法这是目前开发servlet用的最多的一种
表单提交数据有两种方式:get和post方式
两种数据提交方式的区别:
①、从安全性看get
但实际编程中建议不要大于64k
③、从响应速度来看:get>post,get要求服务器立即处理请求,而post请求可能形成
一个队列请求
下面是一个例子web.xml代码如下,
需要说明的是多个不同的servlet在web.xml文件中做映射配置时servlet-name应该有所不同,以示区别否则会出现无法访问的错误
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true">
HelloHttp.java代码如下
package test;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.io.IOException;
public class HelloHttp extends HttpServlet{
//处理get请求
//req-->代表客户端请求信息
//res-->代表服务器端向客户端返回的信息
public void doGet(HttpServletRequest req,HttpServletResponse res){
//业务逻辑
try{
PrintWriter pw = res.getWriter();
pw.println("Hello,HttpServlet");
}catch (IOException e){
e.printStackTrace();
}
}
//处理post请求
//req-->代表客户端请求信息
//res-->代表服务器端向客户端返回的信息
public void doPost(HttpServletRequest req,HttpServletResponse res){
doGet(req,res);
}
}
编译后,启动tomca服务器在地址栏中输入http://localhost:8080/myWebSite/hellohttp
会显示Hello,HttpServlet