http协议

1、http协议:(要求不高需要了解)
   (1)什么是HTTP协议
        是由w3c制定的一种网络应用层协议,规定了浏览器与web
        服务之间如何通信以及相应的数据包格式
        1)如何通信:
           1、建立连接
           2、发送请求
           3、发送响应
           4、关闭链接
        2)特点
           一次请求,一次链接  (有点:高效)
           即如果浏览器需要发送cinder请求,就需要建立新的链接
           这样设计,有点事,服务器可以利用有限的链接尽可能多的 


          请求服务
   (2)数据包的结构
1、请求数据包
           请求行(请求方式  请求资源路径 协议类型和版本)
           消息头
               是一些键值对(使用:隔开)表示特定的含义,
             比如,浏览器可以发送“user-agent”消息,
             告诉服务器,浏览器的类型和版本。
   实体内容 
              只有当请求方式为post时,实体类人内容里面才会有数 


             据(请求参数)
        2、响应数据包
           状态行(状态类型和版本  状态码 转台描述)
           消息头  
               服务器也可以发送一些消息给浏览器,比如,发送
               “Content-type”消息头,告诉浏览器,服务器返回


的数据类型。
           实体内容 
               程序的处理结果,浏览器回揭西其中的额数据,生成


相应的页面
   (3)两种请求方式
         1)get 请求
              a、那些情况下,浏览器会发送get请求
                  a1直接输入某个地址
                  a2点击链接
                  a3表单默认提交方式
              b、特点
                  b1.会将请求参数添加到请求资源路径的后面只能  


                   提交少量的数据
                  b2.会将请求参数显示到浏览器的地址栏,不安全
                     注:比如路由器会记录包含了请求参数的请求  


                        地址
         2)post请求
               a。那些情况下浏览器会发送post请求
                 设置表单method=“post”
               b.特点
                   1、会将请求参数添加到实体内容里面,可以提交


           大量的数据
           2、不会讲请求参数显示在浏览器地址栏,相对安


              全
                     注:不会将请求参数加密
2、servlet输出中文
   1)为什么会出现乱码
      out.println方法在默认的情况下,会使用iso-8859-1来编码
   2)如何解决
      response.setContentType("text/html;charset=utf-8");
3、表单包含会有中文参数值
    1、为什么会有乱码
       表单提交时,浏览器会对表单中的中文参数进行编码
      注:
         会按照打开表单所在的页面时的字符集来编码
      服务器端默认情况下,还使用“iso-8859-1”来编码


    2、如何解决
       1、在静态页面加 保证变淡提交时按照指定的字符集来编码
<meta name="content-type" content="text/html; charset=Utf-8  


    
       2、服务器端使用对应的字符集来解码
           方法1.request.setCharacterEncoding("utf-8")
               注:只针对post请求有效(推荐使用此方法)
           方法2.
        name=new String
(name.getBytes("iso-8859-1"),"utf-8");
            注:先还原得到浏览器发送过来的字节数组,
  然后使用正确的字符集来解码。   

4、怎么读取请求参数值
   1、String request.Parameter(String paramName)
     注:
       a,paramName必须与实际发送过来的参数名一致,
         如果不一致,会获得nul
       b,有可能获得空字符串
   2、Sting[] request.getParameterValues(String paramName)
      注:
        a,当有多个参数相同时 使用该方法
            /hello?mp=1&mp=2&mp=3
        b,对于多选和单选框,如果不选择任何选项的话会获得null


         
5、怎么用JDBC访问数据库       
   1、需要将JDBC提供的jar文件拷贝到WEB-INF/lib下
   2、使用jdbc提供的一套opi来访问数据库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值