1、什么是servlet?
sun公司制定的一种用来扩展web服务器功能的组件规范。
1)扩展web服务器功能
早期的web服务器只能出来静态资源的请求,不能够根据用户的请求进行计算,生成动态资源。
解决方式有两种:
方式一:
使用CGI
接口,编写相应的程序,当请求到达web服务器时,服务器可以调用VGI程序来处理。
使用CGT程序的问题:开发复杂、可移植性差,如果处理不当,性能也比较低。
方式二:
使用容器+组件的方式。
web服务器在收到请求后,可以调用容器来处理,容器用于提供一些基础的服务(比如参数的处理
,指的是分析二进制数据流,获得参数),具体的请求由容器调用组件来处理。
2)组件规范
a、什么是组件?
符合规范,实现某种特定功能的,并且可以部署在某种容器上运行的程序模块。
b、什么是容器?
符合规范,提高组件运行环境的程序,改程序还要管理组件的生命周期(即,创建组件的实例,分配相应的资源,调用组件的方法,
并且在不再需要组件的时候删除其实例的过程)。
2、如何开发一个servlet?
step1 :写一个java类,实现
Servlet借口或者继承HttpServlet类。
step2 :编译成.class文件。
step3 :打包(按照规范,定义一个
目录结构)
appname
WEB-INF
classes(.class文件)
lib(jar文件,该目录可选)
web.xml(描述文件)
step4 :部署:将step3生成的整个目录借口或者将该结构使用jar命令打包之
后生成的.war文件拷贝到服务器特定的目录。
step5 :启动服务器,访问servlet。
访问格式:http://ip:port/appname/servlet的路径