• 笔试题


    1.Servlet怎样控制页面在客户端的缓存策略

    设置type为post(没有缓存),get(有缓存)

     使用GET,form中的数据将编码到url中,而使用POST的form中的数据则在http协议的header中传输。在使用上,当且仅当请求幂等(字面意思是请求任意次返回同样的结果,本质是请求本身不会改变服务器数据和状态)时使用GET,当请求会改变服务器数据或状态时(更新数据,上传文件),应该使用POST。
    区别使用GET,POST意义何在?
           重复访问使用GET方法请求的页面,浏览器会使用缓存处理后续请求。使用POST方法的form提交时,浏览器基于POST将产生永久改变的假设,将让用户进行提交确认。当编成人员正确的使用GET,POST后,浏览器会给出很好的缓存配合,时响应速度更快。

    //本页面允许在浏览器端或缓存服务器中缓存,时限为10秒。  
    java.util.Date date = new java.util.Date();  
    response.setDateHeader("Last-Modified",date.getTime());  
    response.setDateHeader("Expires",date.getTime()+10000);  

    response.setHeader("Cache-Control", "public");  
    response.setHeader("Pragma", "Pragma");
    Java代码
    //不允许浏览器端或缓存服务器缓存当前页面信息。  
    response.setHeader( "Pragma", "no-cache" );  
    response.setDateHeader("Expires", 0);  

    response.addHeader( "Cache-Control", "no-cache" );  
    response.addHeader( "Cache-Control", "no-store" );  
    response.addHeader( "Cache-Control", "must-revalidate" );

    2.sleep和wait的区别有
      1,这两个方法来自不同的类分别是Thread和Object
      2,最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
      3,wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在
        任何地方使用
       synchronized(x){
          x.notify()
         //或者wait()
       }
       4,sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

  • 相关阅读:
    secFox setting
    Xmind settings lower
    Test435678
    Cmd管理员运行
    office install problems
    MSOCache office问题
    WeRun is mini-app
    解决谷歌跨域调试不可用
    xml文件读写
    c++ 矩阵运算库 Eigen等
  • 原文地址:https://www.cnblogs.com/lnluckybamboo/p/3966688.html
Copyright © 2020-2023  润新知