首页
学习
活动
专区
圈层
工具
发布

mybatis练习题

第一种是使用标签,逐一定义数据库列名和对象属性名之间 的映射关系。 第二种是使用标签和 SQL 列的别名功能,将列的别名书写为 对象属性名。...除了常见的 select|insert|updae|delete 标签之外,还有哪些标签?...,当某一个作用域(一级缓存 Session/二级缓存 Namespaces)的进行了 C/U/D 操作后,默认该作用域下所有 select 中的缓存 将被 clear 二、编码题 1.完成对学生表的查询...,也是 通过配置 collection,但另外一个表的查询通过 select 节点配置。...分页插件的基本原理是使用 Mybatis 提供的插件接口,实现自定义插件, 在插件的拦截方法内拦截待执行的 SQL,然后重写 SQL,根据 dialect 方言,添 加对应的物理分页语句和物理分页参数

24210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Hibernate 注解配置

    近几年来,注解方式的配置因其简单易用的特点深受广大程序员的青睐,Hibernate也添加了对注解配置的支持。...核心技能部分​ 1.1 创建SessionFactory 基于xml配置的配置信息位于实体类映射文件中,如Category.hbm.xml;基于注解配置配置信息位于类源代码中,如Category.class...(默认值false) l insertable 可选,该列是否作为生成的insert语句中的一个列(默认值true) l updatable 可选,该列是否作为生成的update语句中的一个列...,在双向一对多关系中使用,作用和xml映射文件中标签的inverse属性作用相同,在一的一端中设置mappedBy,说明多端反向控制一端。...版块:莲蓬鬼话,该版块拥有版主位数:3 版主名称:lee 版主名称:茶农 版主名称:三叔 用户:lee,他是以下版块的版主 Hibernate: select …… from

    72310

    【框架】构架知识点常见操作

    如果设置null,系统会根据传入的对象的id的值判断, 如果是null,则表示对象不存在,那么insert; 如果不是null,则表示已经存在,那么update....Hibernate主键ID生成方式 数据库中表有主键、主键的唯一性决定了数据库表中记录唯一。缓存在Session中的数据即实例都有一个唯一的ID,ID映射了数据库中主键。... hibernate-mapping> 2、identity: 在DB2、SQL Server、MySQL等数据库产品中表中主键列可以设定是自动增长列,则增加一条记录时主键的值可以不赋值...中序列”hibernate_sequence”的下一个值;该值作为主键值。...HQL对关键字的大写小并不区分,但是对查询的对象就要区分大小写,因为它是面向对象的查询,所以查询的是一个对象,而不是数据库的表,在sql中如果要加条件的话就是列,而在HQL里面条件就是对象的属性,而且还要给对象起别名

    81540

    Mybatis精选题合集,看完就会

    它与全自动的区别? 答:Hibernate 属于全自动 ORM 映射工具,使用 Hibernate 查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。...ReuseExecutor :执行 update 或 select,以 sql 作为 key 查找 Statement 对象,存在就使用,不存在就创建,用完后,不关闭 Statement 对象,而是放置于...第二种是使用 sql 列的别名功能,将列别名书写为对象属性名,比如 T_NAME AS NAME,对象属性名一般是 name,小写,但是列名不区分大小写,MyBatis 会忽略列名大小写,智能找到与之对应对象属性名...Xml 映射文件中,除了常见的 select|insert|update|delete 标签之外,还有哪些标签?...= null"> id = #{id} select SpringBoot 自动装配原理,看不懂不存在的

    1.9K20

    HQL查询-分页-条件-连接-过滤使用

    HQL(Hibernate Query Language)是hibernate自带的查询语言,进行了面向对象的分装,今天就来学习一下, 新建一个java项目,结构如下: jar包和hibernate官网使用...在显示关闭SessionFacroty时(sessionFactory.close()),将drop掉数据库Schema(表) 3、validate:检测; 4、update(常用):如果表不存在则创建...Configuration().configure(); SchemaExport se = new SchemaExport(cfg); // 第一个参数:是否生成ddl脚本 // 第二个参数:是否执行到数据库中...name, price from Book"; Query query = session.createQuery(hql); // 查询多个列时,返回结果是数组集合,数组中元素的类型是有查询列来决定的...new Book(name, price) from Book"; Query query = session.createQuery(hql); // 查询多个列时,返回结果是数组集合,数组中元素的类型是有查询列来决定的

    3.2K10

    SpringBoot系列教程JPA之delete使用姿势详解

    常见db中的四个操作curd,前面的几篇博文分别介绍了insert,update,接下来我们看下delete的使用姿势,通过JPA可以怎样删除数据 一般来讲是不建议物理删除(直接从表中删除记录)数据的,...,具体匹配的是表 money @Id @GeneratedValue 作用与自增主键 @Column表明这个属性与表中的某列对应 @CreateDate根据当前时间来生成默认的时间戳 2....,如果这个id对应的记录不存在,会怎样?...entity : em.merge(entity)); } 从源码可以看出,这个是先通过id进行查询,如果对应的记录不存在时,直接抛异常;当存在时,走remove逻辑; 如果我们希望删除一个不存在的数据时...void deleteByName(String name); 然后再次执行输出如下,这里我们把sql的日志也打印了 Hibernate: select moneypo0_.id as id1_0_,

    3.9K31

    Hibernate入门这一篇就够了

    既然Hibernate是关于Java对象和关系数据库之间的联系的话,也就是我们MVC中的数据持久层->在编写程序中的DAO层… 首先,我们来回顾一下我们在DAO层写程序的历程吧: 在DAO层操作XML,...当插入数据的时候,就将JavaBean对象拆分,拼装成SQL语句 当查询数据的时候,用SQL把数据库表中的列组合,拼装成JavaBean对象 也就是说:javaBean对象和数据表中的列存在映射关系!...ORM是一种思想 O代表的是Objcet R代表的是Relative M代表的是Mapping ORM->对象关系映射….ORM关注是对象与数据库中的列的关系 ?...(obj); 【保存或者更新的方法】 **没有设置主键,执行保存; ** **有设置主键,执行更新操作; ** 如果设置主键不存在报错!...我们来简单使用一下把: //将所有的记录封装成User对象存进List集合中 SQLQuery sqlQuery = session.createSQLQuery("SELECT

    1.8K40

    MyBatis面试题集合,90%会遇到这些问题

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?...这就是延迟加载的基本原理。 当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。...ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个...它与全自动的区别在哪里? Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    1.1K20

    【39期】Mybatis面试18问,你想知道的都在这里了!

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?...这就是延迟加载的基本原理。 当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。...ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个...它与全自动的区别在哪里? 答:Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    1.5K21

    Mybatis面试问题锦集

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?...这就是延迟加载的基本原理。 当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。...ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个...它与全自动的区别在哪里? 答:Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    3.2K20

    MyBatis面试题集合,90%会遇到这些问题

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?...这就是延迟加载的基本原理。 当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。...ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个...它与全自动的区别在哪里? Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    1.2K10

    搞定Mybatis面试题

    相比第一种,第三种的重用性会一些。 XML 映射文件中,除了常见的 select | insert | update | delete标 签之外,还有哪些标签?...ReuseExecutor :执行 update 或 select 操作,以 SQL 作为key 查找缓存的 Statement 对象,存在就使用,不存在就创建;用完后,不关闭 Statement 对象...当然,还有另一种方式,代码如下: INSERT INTO [表名]([列名],[列名]) VALUES ([列值],[列值])), ([列值],[列值])), ([列值],[列值])); 对于这种方式,...例如:下面 join 查询出来6条记录,一、二列是 Teacher 对象列,第三列为 Student 对象列。...但是 Hibernate 的缺点是学习门槛高,要精通门槛更高,而且怎么设计 O/R 映射,在性能和对象模型之间如何权衡,以及怎样用好 Hibernate 需要具有很强的经验和能力才行。

    1.4K30

    MyBatis基础面试题及答案

    第二种是使用 sql列的别名功能,将列别名书写为对象属性名,比如 T_NAME AS NAME,对象属性名一般是name,小写,但是列名不区分大小写,Mybatis 会忽略列名大小写,智能找到与之对应对象属性名...19、Xml 映射文件中,除了常见的 select|insert|updae|delete 标签之外,还有哪些标签?...2)ReuseExecutor:执行 update 或 select,以 sql 作为key 查找 Statement 对象,存在就使用,不存在就创建,用完后,不关闭 Statement 对象,而是放置于...答: Mybatis 可以映射枚举类,不单可以映射枚举类,Mybatis 可以映射任何对象到表的一列上。...()两个方法,分别 代表设置sql 问号占位符参数和获取列查询结果。

    3.7K30

    Mybatis 几个经典面试题

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签? 注:这道题是京东面试官面试我时问的。...这就是延迟加载的基本原理。当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。11、Mybatis的Xml映射文件中,不同的Xml映射文件,id是否可以重复?...ReuseExecutor:执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个...答:Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    9500

    Mybatis面试18问,你想知道的都在这里了

    2、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?...这就是延迟加载的基本原理。 当然了,不光是Mybatis,几乎所有的包括Hibernate,支持延迟加载的原理都是一样的。...**ReuseExecutor:**执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Mapselect,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch(...答:Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。

    21910
    领券