美文网首页
2019-06-28

2019-06-28

作者: 金石_832e | 来源:发表于2019-06-28 10:28 被阅读0次

    1、说一说springMVC工作原理:
    发送请求到前端控制器dispatcherServlet,前端控制器不直接处理而是将url发给处理器映射器handlerMapping,找到handler并返回给前端控制器。前端控制器发送handler给处理器适配器,找到对应的方法,进行一些逻辑处理后,返回modelAndView。前端控制器再将其发给视图解析器,进行渲染等操作,最后把view返回给前段。
    2、Mybatis使用到的设计模式有哪些:
    builder模式、工厂模式、单例模式、代理模式、组合模式、模板方法模式、适配器模式、装饰者模式、迭代器模式。
    3、重写和重载
    重载:在同一个类中,同名不同参的方法叫做重载。(编译时多态,静态多态,overload)
    重写:在子类中,同名、同参且返回值相同的方法叫做重写。子类的修饰符范围不小于父类的修饰符范围。(运行时多态,override)
    4、session放在哪
    session存放在服务器,cookies放在浏览器
    5、springmvc用到哪些设计模式
    适配器模式,handler的处理使用了适配器模式。
    单例模式,这个比如在创建bean的时候
    工厂模式,这个很明显,在各种BeanFactory以及ApplicationContext创建中都用到了
    模版模式,这个也很明显,在各种BeanFactory以及ApplicationContext实现中也都用到了;
    代理模式,在Aop实现中用到了JDK的动态代理;
    6、过滤器和拦截器区别

    • 拦截器是基于java的[反射机制]的,而过滤器是基于函数回调

    • 拦截器不依赖与servlet容器,过滤器依赖与servlet容器。

    • 拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。

    • 拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。

    7、类的生命周期有七个阶段
    加载:通过类加载器将类加载进JVM。
    校验:校验类的文件格式是否正确等。
    准备:为类变量分配内存并设置类变量初始值。
    解析:将常量池内的符号引用替换为直接引用。
    初始化:将类进行初始化,先执行静态代码块,可能执行实例构造函数。
    使用:使用这个类进行相关操作。
    卸载:不用了,被JVM垃圾回收了。

    8、类实例化的过程
    父类静态代变量、
    父类静态代码块、
    子类静态变量、
    子类静态代码块、
    父类非静态变量(父类实例成员变量)、
    父类构造函数、
    子类非静态变量(子类实例成员变量)、
    子类构造函数。

    9、数组有没有length()方法?String有没有length()方法?
    数组没有length()方法,有length 的属性。String 有length()方法。JavaScript中,获得字符串的长度是通过length属性得到的,这一点容易和Java混淆。

    10、构造器(constructor)是否可被重写(override)?
    构造器不能被继承,因此不能被重写,但可以被重载。

    11、是否可以继承String类?
    String 类是final类,不可以被继承。

    相关文章

      网友评论

          本文标题:2019-06-28

          本文链接:https://www.haomeiwen.com/subject/mszjcctx.html