背景介绍:
1.动态网页技术:(1)CGI:主要用于linux/unix操作系统,效率低,编程困难,可以使用不同语 言,例子:tomcat的网站。
(2)ASP:html+javascript(vbscript)+com,com组件功能强大,效率比cgi高,实 现企业级的功能困难,如服务器的集群,负载均衡。
(3)PHP:跨平台良好,效率高,安全性高,免费使用。但安装复杂,缺少企业 级支持。php+mysql+linux+apache
(4)JSP:html+java片段+jsp语法+js 一次编写,到处运行,跨平台,多种开发 工具支持。在servlet上发展起来的。
2.b/s与c/s:前者是浏览器与服务器(如搜狐),后者是客户端与服务器(如QQ)
b/s:开发成本低,维护简单,升级便利,但安全性不足。
c/s:客户端可随心变化,安全性高,但出现故障的概率大。
3.servlet=server+applet, 由服务器端调用和执行,Java语言编写,部署在容器中。
浏览器向web服务器发送http请求,web服务器将请求转发给jsp/servlet,jsp/servlet返回结果给web服务器,web服务器返回静态页面给浏览器。Tomcat三个功能:web服务器,jsp容器,servlet容器。
servelt开发的三种方法:
(1)实现servlet接口(implements Servlet)
(2)继承GenericServlet(只需重写service方法)
(3)继承HttpServlet(重写doGet,doPost方法,用的最多的一种方法。)
表单提交有get请求和post请求的区别:
a.安全性get<post,get提交的数据会在浏览器的地址栏显示
b.提交内容大小:get<post(get<2K,post<64K)
c.请求响应速度:get>post get立即处理请求,post可能形成队列请求
servlet的生命周期:init() 初始化 用户第一次访问调用
service()处理业务逻辑,用户每访问一次,都会调用
destroy()销毁servlet实例,释放内存。被调用的三种情况:reload该 servlet(webapps);关闭tomcat;关机。
ps:web.xml文件中servlet的配置
<servlet> <!--给servlet取名,任意--> <servlet-name>hello</servlet-name> <!--指明servlet的路径,(包名+类名)--> <servlet-class>com.src</servlet-class> </servlet> <servlet-mapping> <!--给servlet取名,映射上面的name--> <servlet-name>hello</servlet-name> <!--在浏览器中访问该servlet需要输入的url,任意的--> <url-pattern>/hello</url-pattern> </servlet-mapping>