黑马程序员 09 Servlet 学习笔记 03 HttpServlet
2013-01-14 06:47
549 查看
------- android培训、java培训、期待与您交流! --------
Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2013-01-13T01:02:06+08:00
====== Servlet 03 HttpServlet ======
Created Sunday 13 January 2013
HttpServlet
继承HttpServlet 实现servlet 开发
1. 再httpservlet中,设计者对 get 和 post 提交分别处理;
2. 继承HttpServlet, 实现doGet() doPost()方法;
3. doGet() 和 doPost() 最终也去调用了servlet接口的 service() 方法 ;
get提交 和 post提交的区别
1. URL地址栏
2. 提交内容大小的不同<建议get< 2kb,post<64kb >
3. 从请求响应速度来看 : get > post get要求服务器立即响应 post则会创建一个响应队列;
Servlet的一些细节<一>
1. 客户端是通过WEB服务器的资源,所以servlet必须要再web.xml中指定URL地址
2. 当映射一个servlet的时候,可以多层 ;
3. servlet映射到的URL中可以使用*通配符
3.1 第一种格式 *.扩展名 比如 *.do
3.2 第二种格式 [[/*]]
4. servlet的单例问题
4.1 当servlet被第一次访问后 就被加载进内存 以后该实例对各个请求服务 即在使用中是单例的;
4.2 因为servlet是单例 因此会出现线程安全问题,比如:售票系统
4.3 简单的解决方法 synchronized (this){}<同步机制>
4.4 解决单例的原则:
4.4.1 如果一个变量需要多个用户共享,则应当在访问该变量的时候,加同步机制 synchronzed (对象){}
4.4.2 如果该变量不需要多个用户共享 ,则直接在doGet() 里定义
5. servlet 中的 load-on-startup 配置
需求:当我们的网站启动的时候,可能会要求初始化一些数据<例如定时发送邮件,定时备份数据>
通过配置 load-on-startup 可以自动创建servlet
//完成一些初始化的任务 例如:创建数据库,表,读取参数
<servlet>
<load-on-startup>1</load-on-startup>
</servlet>
1表示该servlet的启动优先级
相关文章推荐
- 黑马程序员——Objective-C程序设计(第4版)学习笔记之03-类、对象和方法——黑马 IOS 技术博客
- 黑马程序员_学习笔记 03 C#基础
- 09 Servlet学习笔记
- JSP学习笔记-03-Servlet和JSP的关系
- (09)Java学习笔记——面向对象03——单例设计模式
- [黑马程序员]09[C语言]循环控制语句部分学习笔记总结
- JavaWeb学习笔记-servlet-03-HttpServlet
- 黑马程序员——C语言学习笔记03 变量在内存中存储的细节、位运算
- [原创]java WEB学习笔记09:ServletResponse & HttpServletResponse
- 黑马程序员_java基础学习笔记03_函数以及数组知识
- 黑马程序员 07 Servlet 学习笔记 01
- Servlet学习笔记3之通过继承HttpServlet开发Servlet
- 黑马程序员 08 Servlet 学习笔记 02 生命周期与servletCofig
- JSP网络编程-请求和响应-HttpServletRequest-HttpServletResponse-学习笔记
- 韩顺平servlet学习笔记03-sql制作大量的数据
- JavaWeb 学习笔记(三)GenericServlet和HttpServlet介绍
- 黑马程序员——Objective-C程序设计(第4版)学习笔记之09-多态、动态类型和动态绑定——黑马 IOS 技术博客
- 黑马程序员——学习笔记03.java流程控制语句和函数
- Servlet学习笔记_03_使用servlet编写一个简单的helloworld程序
- 黑马程序员-学习笔记03