zoukankan      html  css  js  c++  java
  • 面试题

    1。哪些不同类型的IOC方式
      IoC,(Inverse of Control)控制反转,其包含两个内容:其一是控制,其二是反转。在程序中,被调用类的选择控制权从调用它的类中移除,转交给第三方裁决。
    这个第三方指的就是Spring的容器。IoC另解,依赖注入
    Dependency Injection),调用类对被调用类的依赖关系由第三方注入,以移除调用类对被调用类的引用。

    2。java的9大内置对象
      request
      response  
      pageContext
      session
      application
      out
      config
      page
      exception

    3。数据库里面的索引的约束是
      索引:加强了查询数据库的速度
      约束:可以设置主键约束比唯一约束更严格不能为空



    4。mybatis是如何进行分页的?分页的插件的原理是什么?
      Mybatis使用RowBounds对象进行分页,它是针对ResultSet结果集执行的内存分页,而非物理分页,可以在sql内直接书写带有物理分页的参数来完成物理分页功能,
    也可以使用分页插件来完成物理分页。

      分页插件的基础原理是是有mybatis提供的插件接口,实现自定义插件,在插件的拦截方法内拦截执行的SQL,让后重写SQL,根据dialect方言,添加对应的物理分页语言
    和物理参数。


    5.通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?

      Dao接口即Mapper接口。接口的全限名,就是映射文件中的namespace的值;接口的方法名,就是映射文件中Mapper的Statement的id值;接口方法内的参数,就是传递给sql的参数。

      Mapper接口是没有实现类的,当调用接口方法时,接口全限名+方法名拼接字符串作为key值,可唯一定位一个MapperStatement。在Mybatis中,每一个 <select>、<insert>、<update>、<delete>标签,都会被解析为一个MapperStatement对象。

      mapper接口的方法,是不能重载的,因为是使用全限名+方法名的保存和寻找策略。mapper接口的工作原理是jdk动态代理,mybatis运行时会使用jdk动态代理为mapper接口生成代理对象proxy,代理对象会拦截接口方法,转而执行mapperStatement所代表的SQL,让后将SQL执行结果返回。

      
  • 相关阅读:
    Finding Palindromes POJ
    吉哥系列故事——完美队形II HDU
    Period II FZU
    生日礼物&&Supermarket
    炮兵阵地[状态压缩DP]
    最小表示法 P1368
    Period
    最长异或路径
    Luogu P5490 扫描线
    解方程
  • 原文地址:https://www.cnblogs.com/rzbwyj/p/11752583.html
Copyright © 2011-2022 走看看