zoukankan      html  css  js  c++  java
  • Mybatis面试题及答案

    Ibatis和Mybatis?

    Ibatis:2010年,apache的Ibatis框架停止更新,并移交给了google团队,同时更名为MyBatis。从2010年后Ibatis在没更新过,彻底变成了一个孤儿框架。一个没人维护的框架注定被mybatis拍在沙滩上。

    Mybatis:Ibatis的升级版本。

    什么是Mybatis的接口绑定,有什么好处?

    Mybatis实现了DAO接口与xml映射文件的绑定,自动为我们生成接口的具体实现,使用起来变得更加省事和方便。

    什么情况用注解,什么情况用xml绑定?

    注解使用情况:Sql语句简单时

    xml绑定使用情况:xml绑定 (@RequestMap用来绑定xml文件)

    Mybatis在核心处理类叫什么?

    SqlSession

    查询表名和返回实体Bean对象不一致,如何处理?

    映射键值对即可

    <result column="title" property="title" javaType="java.lang.String"/>

    column:数据库中表的列名

    property:实体Bean中的属性名

    Mybatis的好处?

    把Sql语句从Java中独立出来。

    封装了底层的JDBC,API的调用,并且能够将结果集自动转换成JavaBean对象,简化了Java数据库编程的重复工作。

    自己编写Sql语句,更加的灵活。

    入参无需用对象封装(或者map封装),使用@Param注解

    Mybatis配置一对多?

    <collection property="topicComment" column="id" ofType="com.tmf.bbs.pojo.Comment" select="selectComment" />

    property:属性名

    column:共同列

    ofType:集合中元素的类型

    select:要连接的查询

    Mybatis配置一对一?

    <association property="topicType" select="selectType" column="topics_type_id" javaType="com.tmf.bbs.pojo.Type"/>

    property:属性名

    select:要连接的查询

    column:共同列

    javaType:集合中元素的类型

    获取上一次自动生成的主键值?

    select last _insert_id()

    Mybatis如何分页,分页原理?

    RowBounds对象分页

    在Sql内直接书写,带有物理分页

  • 相关阅读:
    [Reproduced]BIOS -- Basic Input and Output System
    What is CSM mode?
    java.lang.UnsupportedOperationException: Can't convert to color: type=0x2 In TextInputLayout
    What is “passive data structure” in Android/Java?
    Android Studio 手动配置 Gradle
    ScrollView内嵌ListView,ListView显示不全及滑动冲突的问题
    Android安全开发之Provider组件安全
    Android permission and uses-permission
    PriorityBlockingQueue(带优先级的阻塞队列)
    Lesson: Generics (Updated)
  • 原文地址:https://www.cnblogs.com/chenyanbin/p/13193411.html
Copyright © 2011-2022 走看看