zoukankan      html  css  js  c++  java
  • 每日五题(随记)

    1. Servlet的生命周期是什么?

    答:
    第一次请求: 构造方法->init() -> service() -> doGet()/doPost()
    以后的请求:service() -> doGet()/doPost();
    Servlet是单实例的.

    2. 说出ArrayList,Vector, LinkedList的存储性能和特性HashMap和Hashtable的差别

    答:
    ArrayList Vector:以数组的方式存储,增、删慢,查、改快
    ArrayList:线程不安全,速度快。


    Vector:线程安全,速度慢( synchoronized add() )
    LikedList: 以双链表的方式存储,增、删快,查、改慢
    HashMap与Hashtable都实现的Map接口,HashTable线程安全( add,del -> synchronized)。HashMap线程不安全。

    拓展:什么叫线程安全和不安全呢?
    线程安全
    就是多线程訪问时,採用了加锁机制,当一个线程訪问该类的某个数据时,进行保护。其它线程不能进行訪问直到该线程读取完。其它线程才可使用。不会出现数据不一致或者数据污染。

    线程不安全就是不提供数据訪问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据

    3. 事务是什么?事务的四大特性?

    jdbc怎样做事务处理?

    答:
    事务是对数据操作的一个单个逻辑单元,这个单元有可能有多个操作,要不同一时候成功,要不同一时候失败;特点是原子性, 隔离性, 一致性, 持久性.
    JDBC做事务操作:

        connection.setAutoCommit( false);
        connection.commit();
        connection.rollback();
        connection.setAutoCommit( true);


    4. 作用域public、protected、private以及不写时的差别?

    答:

       类内部  本包  子类 外部包 
    public         
    protected        ×
    default       ×  ×
     private    ×  ×  ×

    5. 在spring中,什么是IOC?什么是DI?

    答:
    IOC是控制反转,所谓反转是指应用本身并不负责依赖对象的创建和维护,而把这个任务交给第三方即Spring去处理,这是将创建对象的权利交给第三方,控制反转就是控制权的转移
    DI是依赖注入.依赖注入,是指执行期间,Spring动态的将依赖对象注入到组件中。


    当IOC容器启动时,容器负责创建容器内的全部对象;
    依据配置信息形成对象之间的依赖关系;
    也就是说让别人(ioc)为你服务。这是核心。

  • 相关阅读:
    spark 读取mongodb失败,报executor time out 和GC overhead limit exceeded 异常
    在zepplin 使用spark sql 查询mongodb的数据
    Unable to query from Mongodb from Zeppelin using spark
    spark 与zepplin 版本兼容
    kafka 新旧消费者的区别
    kafka 新生产者发送消息流程
    spark ui acl 不生效的问题分析
    python中if __name__ == '__main__': 的解析
    深入C++的new
    NSSplitView
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/7349867.html
Copyright © 2011-2022 走看看