您的位置:首页 > 编程语言 > Java开发

javaweb-day05-1(Servlet - GenericServlet、Servlet调用过程图)

2015-01-28 12:23 387 查看
动态web资源的开发技术有两种:Servlet 和 JSP。

Servlet是sun公司 J2EE 的 13门技术中的一门。

Servlet简介

Servlet是sun公司提供的一门用于开发动态web资源的技术。
Sun公司在其API中提供了一个servlet接口,用户若想开发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:
编写一个Java类,实现servlet接口。
把开发好的Java类部署到web服务器中。

快速入门,用servlet向浏览器输出“hello servlet”。
阅读Servlet API,解决两个问题:
输出hello servlet的java代码应该写在servlet的哪个方法内?
如何向IE浏览器输出数据?

Servlet所在包:

javax.servlet
interface Servlet
class GenericServlet
void service(ServletRequest req, ServletResponse res)

interface ServletResponse
ServletOutputStream getOutputStream()

用servlet向浏览器输出“hello servlet”,步骤:

在 tomcat 的 webapps 目录下新建目录: \day05\WEB-INF\classes
在 classes 目录下新建 FirstServlet.java 文件:
package cn.mengmei;

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

public class FirstServlet extends GenericServlet
{
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException
{
String data = "Hello Servlet!";
OutputStream out = res.getOutputStream();
out.write(data.getBytes());
}
}


在 day05\WEB-INF 目录下新建 web.xml 文件,配置 servlet-class 和 url虚拟目录(参考tomcat\conf\web.xml):
<?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">

<servlet>
<servlet-name>FirstServlet</servlet-name>
<servlet-class>cn.mengmei.FirstServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>FirstServlet</servlet-name>
<url-pattern>/xxx</url-pattern>    <!--这个"/"代表你的web应用day05-->
</servlet-mapping>

</web-app>


打开终端,跳到 tomcat\webapps\day05\WEB-INF\classes 路径下,首先设置classpath(把 servlet-api.jar 的目录加进去,可以去 tomcat\lib 目录下找),然后编译 FirstServlet.java 文件:



这样在 \day05\WEB-INF\classes 目录下自动生成了嵌套文件夹 \cn\mengmei 并生成了 FirstServlet.class 文件。

打开浏览器,输入地址:http://localhost:8080/day05/xxx



向浏览器输出“hello servlet”

浏览器访问服务器中的Servlet动态web资源的过程

Servlet调用图:

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