第二天:tomcat体系结构和第一个Servlet
1、 打war包
2、 Tomcat体系再说明:
问题:如何去配置默认主机???
3、tomcat和servlet在网络中的位置
4、 servlet快速入门案例
1)、开发servlet的三种方法
a、实现servlet接口
B、通过继承GenericServlet
C、通过继承HttpServlet
需求:请使用实现接口的方式来实现一个Servlet,要求该Servlet可以显示Hello world!!!,同时显示当前的时间。
步骤:
A、 先建立web应用
B、 在该web应用下建立WEB-INF目录(并在下面建立一个web.xml配置文件),lib目录,classes目录(我们的Servlet就在该目录下开发)
C、 开发MyFIrst
MyFirst.java文件
package com.lyw; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class MyFirst implements Servlet { //该函数用于初始化Servlet,即就是把该Servlet装载到内存中,该函数只会被调用一次 public void init(ServletConfig config)throws ServletException{ } //该函数是得到ServletConfig对象 public ServletConfig getServletConfig(){ return null; } //该函数是服务函数,我们的业务逻辑代码就是写在这儿的,该函数每次请求都会被调用 public void service(ServletRequest req,ServletResponse res)throws ServletException,java.io.IOException { System.out.print("hello world!!!"+new java.util.Date()); res.getWriter().println("hello world!!!"+new java.util.Date()); } //该函数是得到Servlet的一些配置信息 public java.lang.String getServletInfo(){ return null; } //该函数是销毁该Servlet,从内存中清除,该函数被调用一次 public void destroy(){ } }
D、 这时候根据Servlet的规范,我们还需要部署该Servlet,在web.xml文件中部署。
web.xml文件:(部署web应用)
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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"> <!--根据Servlet规范需要将Servlet部署到web.xml文件下,该文件可以从examples下拷贝--> <servlet> <!--servlet-name是给该Servlet取个名字,该名字可以自己去定义,但最好使用该Servlet的名字,这样方便后期的查找--> <servlet-name>Myfirst</servlet-name> <!--servlet-class是用来指定该Servlet放到哪个包下面的:包.类名(类名不要扩展名)--> <servlet-class>com.lyw.MyFirst</servlet-class> </servlet> <!-- Define the Manager Servlet Mapping --> <!--Servlet的映射--> <servlet-mapping> <!--这个Servlet的名字要和上面的名字一样才可以匹配的上--> <servlet-name>Myfirst</servlet-name> <!--url-pattern这里就是访问该Servlet的资源名部分--> <url-pattern>/helloworld</url-pattern> </servlet-mapping> </web-app>
5、404错误可能出现的问题是???
A、未部署Web应用(即没有配置web.xml文件)
B、URL输入错误(即我们在地址栏中)
c、web应用目录放置错误,检查下自己的虚拟目录有没有问题