Servlet从入门打精通一——入门实例helloworld!

Servlet是sun公司开发的用于动态web开发的技术。

要开发Servlet就要实现Servlet接口。接口中有五个方法:

destroy()
getServletConfig()
getServletInfo()
init(ServletConfig config)
service(ServletRequest req,ServletResponse res)
要重写。

为了简化代码,开发中通常写一个generic servlet extends  javax.servlet.GenericServlet

或者写一个 Http servlet  extends javax.servlet.http.HttpServlet。

 

一、入门实例Hello World。

 1、在webapps目录下新建文件夹 JavaWebChuan

2、在Tomcat6.0\webapps\JavaWebChuan目录下 新建  三个文件夹WEB-INF\classes\cn\itcast

     在最后一个文件夹里新建java文件: FirstServletDemo.java   并编译成class 文件

package cn.itcast;

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

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

3、配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	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_2_5.xsd">
 
  <servlet>
  	<servlet-name>FirstServletDemo.java</servlet-name>
  	<servlet-class>cn.itcast.FirstServletDemo</servlet-class>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>FirstServletDemo.java</servlet-name>
  	<url-pattern>/FirstServletDemo</url-pattern>
  </servlet-mapping>
  
</web-app>


 

打开Tomcat,在浏览器中输入http://localhost:8088/JavaWebChuan/FirstServletDemo(我的Tomcat端口号为8088)

可以看见:

Hello,World!!!

 

二、Servlet入门实例分析(servlet基础原理)

1、为什么这样做就可以在浏览器中访问到呢?

 

因为配置文件有说明。

<servlet-mapping>
   <servlet-name>FirstServletDemo.java</servlet-name>
   <url-pattern>/FirstServletDemo</url-pattern>
  </servlet-mapping>

这个是映射文件,把那个servlet(即一个java类)映射到一个地址http://localhost:8088/JavaWebChuan/FirstServletDemo

 

2、那么输出是怎样产生的呢?

分析FirstServletDemo.java ,再查看servlet api可以知道:

public void service(ServletRequest req, ServletResponse res)  throws ServletException, IOException

方法中 传递了 ServletRequest对象req,和ServletResponse对象res。

req用来请求服务器,res用来响应客户请求 。

查看ServletResponse的getOutputStream()方法发现其返回值是ServletOutputStream类,而ServletOutputStream继承OutputStream类。

即可以调用write方法,输出数据。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值