1. Servlet介绍
Servlet(Server Applet),全称Java Servlet,是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。
2. 第一个Servlet程序
1) 新建一个网站
打开MyEclipse,菜单File—New—Web Project,在Project Name中输入名称,本例为MyServletWeb(读者可自由命名,会影响到将来网站部署后的URL访问地址),点击Finish,完成新建。
2) 新建一个Class实现Servlet接口
菜单File—New—Class,包名com.servlet.action,类名HelloServlet,实现接口Servlet。
packagecom.servlet.action;importjava.io.IOException;importjavax.servlet.Servlet;importjavax.servlet.ServletConfig;importjavax.servlet.ServletException;importjavax.servlet.ServletRequest;importjavax.servlet.ServletResponse;public class HelloServlet implementsServlet {
@Overridepublic voiddestroy() {//TODO Auto-generated method stub
}
@OverridepublicServletConfig getServletConfig() {//TODO Auto-generated method stub
return null;
}
@OverridepublicString getServletInfo() {//TODO Auto-generated method stub
return null;
}
@Overridepublic void init(ServletConfig config) throwsServletException {//TODO Auto-generated method stub
}
@Overridepublic void service(ServletRequest req, ServletResponse res) throwsServletException, IOException {
System.out.println("I told tou Hello!");
}
}
其中:
1. init方法:初始化Servlet,该方法只有在第一次访问Servlet的时候被调用一次。
2. destory方法:销毁Servlet。
3. service方法:访问该Servlet所要处理的业务逻辑,req:从客户端获取的数据,res:向客户端返回的数据。
我们在service方法中添加System.out.println("I told tou Hello!"); 向控制台输出一句话。
3)在WebRoot----WEB-INF中新建web.xml文件(web.xml名字不能变),代码如下:
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
Hello
com.servlet.action.HelloServlet
Hello
/Hello
4)将网站部署到tomcat服务器上,然后运行taomcat服务,启动浏览器,在地址栏输入:
I told tou Hello!
3. 解析
当我们在地址栏中访问http://127.0.0.1:8080/MyServletWeb/Hello的时候,tomcat服务器首先会查找在其WebApp目录中的MyServletWeb文件夹,找到后访问其WEB-INF/web.xml文件,查找等于/Hello的节点(因为我要访问的是.../MyServlet/Hello),然后根据其对应的节点的值(本例为Hello)找到相应的(本例为com.servlet.action.HelloServlet),并执行其service方法。