ITPub博客

首页 > 应用开发 > Java > Servlet初步认识

Servlet初步认识

原创 Java 作者:nodelist 时间:2015-07-08 09:28:17 0 删除 编辑

1.什么是Servlet呢?

    简单来说Servlet是sun公司(该公司目前已经被甲骨文收购)制订的一种用来扩展web服务器功能的组件规范。

    所谓的扩展web服务器功能,就是web服务器(比如apache web server)只能够处理静态资源的请求,不能够处理动态资源的请求,所以需要扩展。在早期的开发中一般使用CGI程序来进行扩展,不过开发起来复杂,并且移植性不好。(注:CGI[Common Gateway Interface]通用的网关接口,可以使用perl,c等语言来开发符合CGI接口标准的程序。)所以目前开发中一般不使用CGI程序。

组件规范:组件就是符合一定规范,实现部分功能,需要部署到相应的容器【容器:符合一定规范,提供组件的运行环境的程序。】里面才运行的软件模块。

2.如何写一个Servlet?

    step1:写一个java类,实现Servlet接口或者继承HttpServlet抽象类。

step2:编译

step3:打包(打包成组件),

创建一个具有如下结构的文件夹:

appname(应用名称)

WEB-INF

classes(放字节码.class文件)

lib(可选,放.jar文件)

web.xml(部署描述文件)

step4:部署

将step3创建好的文件夹拷贝到容器。

注:java培训的时候老师讲过,也可以将step3创建好的文件夹使用jar命令压缩成一个以".war"为后缀的文件。

step5:启动容器,访问Servlet


3.使用myeclipse做一个简单的Servlet

step1:启动myeclipse

step2:集成tomcat

step3:创建一个web工程


4.Servlet是如何运行的?

访问的地址一般遵循:http://ip:port/appname/url-pattern

step1:浏览器依据IP,port建立连接。

step2:浏览器将相关数据打包(按照http协议),然后将请求数据包发送给服务器。

step3:容器解析请求数据包,并且将解析得到的数据封装到request,同时,还会创建一个response对象。

step4:容器创建Servlet对象,然后调用该对象的Service方法。

  注:在service方法里面,可以通过request对象来获得请求参数,然后将处理结果写到response对象里面。

step5:容器从response对象当中获取处理结果,然后打包(响应数据包),最后将这个数据包发送给浏览器。

step6:浏览器解析响应数据包,生成相应的页面。


5.常见错误

1)404(404是一个状态码)

注:状态码是一个三位数字,用w3c定义,表示服务器处理请求的一种状态。

1)含义

服务器依据请求地址找不到相应的资源。

2)错误原因

a.应用没有部署

b.不一致

c.没有按照以下格式书写请求地址(注意区分大小写)

http://IP:port/appname/url-pattern

2)500

1)含义

系统出错

2)错误原因

a.类写得不规范

比如没有继承HttpServlet

b.写错

c.程序运行出错。

比如,对请求参数没有做检查,就做强制转换。

3)405

1)含义

找不到处理的方法。

2)错误原因

service方法没有严格按照要求来写,

要检查方法的返回类型,参数类型,异常类型和方法名。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30112369/viewspace-1726247/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: java基础知识总结
下一篇: java8小总结
请登录后发表评论 登录
全部评论

注册时间:2015-01-21

  • 博文量
    14
  • 访问量
    19264