您的位置:首页 > 其它

离开工具自己手写一个servlet

2017-05-03 15:34 288 查看
手写一个servlet可以帮助我们对于sevlet底层的实现有一个基本的认识,对于其目录结构有一个深刻的了解,有助于我们开发中的调试。



写个需求,利用Servlet网页动态获取当前时间。

本地Servlet的实现步骤:

1、在Tomacat 的webapp下面建立一个web应用,我们起名字叫做muniu,在该文件夹下。

2、在muniu文件夹下面建立一个文件夹WEB-INF,在WEB-INF里面创建一个web.xml。(该web.xml可以从apache-tomcat-8.0.43\webapps\ROOT\WEB-INFF中拷贝)

3、根据Servlet规范部署Servlet.

在web.xml文件中添加以下代码进行部署。同时更改掉其中的编码机encoding

<!--将Servlet部署到web.xml-->
<servlet>
<!--Servlet的名字(可以自定义,一般与Servlet的名字一致)-->
<servlet-name>MuNiu</servlet-name>
<!--全名(包名+类名)-->
<servlet-class>com.sky.servlet.MuNiu</servlet-class>
</servlet>
<servlet-mapping>
<!--与上面的servlet-name保持一致-->
<servlet-name>MuNiu</servlet-name>
<!--我们访问该servlet的资源名-->
<url-pattern>/MuNiu</url-pattern>
</servlet-mapping>


4、在WEB-INF目录下建立一个classes文件夹用来存放sevlet(servlet是一个java程序)

package com.sky.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class MuNiu extends HttpServlet
{
//启动函数
public void init(ServletConfig servletConfig) throws ServletException{

}

public ServletConfig getServletConfig(){
return null;
}
//交互服务
public void service(ServletRequest sq,ServletResponse sp) throws ServletException,IOException{

sp.getWriter().println("Current Time is"+new java.util.Date());
}

public java.lang.String getServletInfo(){
return null;
}
//摧毁函数
public void destroy(){

}
}


5、编译servlet(javac -d . MuNiu.java)加上-d .可以讲MuNiu.class编译到对应的包目录下:



6、启动tomcat

7、在浏览器中启动查询:



以上是继承Servlet接口实现的Servlet,实际我们的开发中,90%是根据继承HttpServlet来写的。



、===========动态网页的特点:===================、

动态网页并不是服务器上存在的网页文件,而是当我们请求时,服务器才动态组装返回的一个网页。

动态网页的内容往往是存放在数据库中,根据用户发出的不同请求而提供个性化的网页内容。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: