黑马程序员技术交流社区

标题: 【石家庄校区】Tomact&&Servlet笔记 [打印本页]

作者: 李皓321    时间: 2018-5-21 15:52
标题: 【石家庄校区】Tomact&&Servlet笔记
Tomcat

1,软件的架构:
      Client/Server  客户端和服务器端的软件,都是需要在PC端的软件,如
          QQ。迅雷,暴风等。。。
     优点:效果炫,一部分代码写到客户端(速度快);
     缺点:服务器端更新,客户端都需要更新。
      Browser/Server :浏览器端和服务端的软件,不需要安装PC端,只要有一个
           浏览器即可,如:京东,网银WEBQQ,WEB迅雷等
     优点:服务器端更新,客户端浏览器不需要进行更新
     缺点:效果不炫,所有代码都在服务端,导致服务器压力过大。
                    效果:使用HTMLS,CSS3可以做出很炫的效果。
                    服务器端压力:搭建服务器的集群,而且还有AJAX技术。
2,WEB的资源:   
                     PHP
                     ASP
                     Servlet/JSP:
3,服务器
4,常见WEb服务器(中间件):
                的开发规范.
                有的开发规范。
                 Eervlet/JSP的开发规范。
5,WEB动态资源目录结构
                 |-------静态资源
                 |-------WEB-INF
                               |------web.xml(必须有,项的配置)
                               |------classes
                               |------lib(用到的第三方东西(jar包)等要引入的东西的时
                                                   候要用)
6,Tomcat目录结构(.bat 在wendows执行  .sh是linux执行):
7,发布一个WEB项目到Tomcat中(三种方式)
                      在tomcat/conf/server.xml文件中间配置
                      在tomcat/conf/Catalina/localhost/xxx.xml
                      配置<Context docBase=";路径“/>
8,Tomcat运行常见问题
                    1,将占用的端口的应用结束。
                                 netstat -ano(查看占用这个端口的软件)
                                 打开任务管理器结束这个端口
                    2,修改自身的端口号,
Servlet

1,HTTP协议:
           什么是协议:规定双方需要遵守的规则。
            HTTP协议:用来规定浏览器与服务器之间需要遵守的规则。
            HTTP协议作用:规范浏览器和服务器之间的数据传递。
            HTTP协议特点:
HTTP协议版本:
2,HTTP协议的详解:
                            提交方式有很多,常用GET和POST,两者区别:
                            1,get的提交的参数会显示到地址栏上,而POST不显示
                            2,GET往往是有大小限制的,而POST没有大小显示
                            3,GET没有请求体,而POST有请求体。
                             多个value   
                找本地缓存。
                            :就是Post提交方式的参数(get没有此项)
3,Servlet概念:
                  受和响应从客户端发送过来的请求,通常使用HTTP协议。是
                  SUN公司提 供的一个动态网页开发技术。
                        相应
4,Servlet的实现的关系:
Servlet       :接口
     |
GenericServlet  :通用的Sevrlet
     |
HttpServlet         :HttpServlet
5,ServletRequest接受参数API:
        *String getParameter (String name)  用于接受一个名称对应一个值的数据
                *String[] getParameterValue(String name)  用于接受一个名称对应多个值的数据
                *Map getParameterMap();  用于接受表单中的所有的数据,Map的key是表单提交的参数名称,Map的value是提交的参数的值
                 Enumeration getParmeterNames() 用于获取表单中提交的所有的参数的名称
     
6,总结:
Servlet生命周期:
                         何时创建:用户第一次访问Servlet创建Servlet的实例
                         何时销毁:当项目从服务器中移除,或者关闭服务器的时候
Servlet的相关配置:
               Servlet默认是在第一次被访问的时候创建的,现在让Servlet在服务器启动的时候创建好,进行对Servlet的配置;
                      <load-on-startup>2</load-on-startup>------传入正整数,数值越小被创建的优先级越高          
                例如:  /ServletDemo4 , /aaa/ServletDemo5 , /aaa/bbb/ServletDemo6
                 例如: /* ,/aaa/* ,/aaa/bbb/*
                         例如: *.do , *.action
          优先级:完全路径匹配>目录匹配>扩展名匹配
有一些资源需要初始化很耗时:
第一次访问的时候初始化资源(耗时)
7,开发中的路径的编写:
8,addHeader(String key,String value);-------针对一个key对应多个value的响应头
     setHeader(String key,String value);-------针对一个key对应一个value的响应头
9,ServletContext对象(用来存储数据  (重要)):
setAttrubute :用来想ServletContext中存入数据。
getAAtubute:用来从Servletcontext中获取数据
removeAttribute:用来从Servletcontext移除数据。
ServleContext是一个域对象。
          作用范围:整个web工程
          创建:服务器启动的时候,tomcat服务器为每个web项目创建一个单独的ServletContext对象。
           销毁:服务器关闭的时候,或者项目从服务器中移除的时候。
      ServletContext作用:
                    1,用来获得全局初始化参数
                     2,用来获得文件的MIME的类型
                    3,作为域对象存储数据
                  
        
单例秘模式不能定义变量属性, 多线程进行访问抢夺资源容易引发隐患


10,ServletConfig:获得配置信息
     String   getServletName();获得Servlet在web.xml中配置的name值。
     String  getInitParameter(String name);获得Servlet的初始化参数
     Enumeration getInitPArameterNames();获得所有Servlet的初始化参数的名称   
11,ServletContext的作用:
* 1.用来获得全局初始化参数.
* 2.用来获得文件的MIME的类型.
* 3.作为域对象存取数据.
ServletContext是一个域对象.
    * 作用范围:整个web工程.
    * 创建:服务器启动的时候,tomcat服务器为每个web项目创建一个单独ServletContext对象.
    * 销毁:服务器关闭的时候,或者项目从服务器中移除的时候.

* 4.用来读取web项目下的文件.







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2