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中部署如下:(以后就不再写了)
1 <servlet> 2 <!-- 给你的servlet取名,任意的 --> 3 <servlet-name>hello</servlet-name> 4 <!-- 指明servlet的路径,(包名+类名)--> 5 <servlet-class>com.Hello</servlet-class> 6 </servlet> 7 <servlet-mapping> 8 <!-- 名字同上 --> 9 <servlet-name>hello</servlet-name> 10 <!-- 浏览器中输入访问servlet的url,任意的 --> 11 <url-pattern>/hello</url-pattern> 12 </servlet-mapping>
url-pattern路径任意,如上的话访问时地址栏就为(tomcat服务器,项目名称为servlet)