首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

必知必会:MyBatis 常见面试题总结

号占位符设置参数值,比如 ps.setInt(0, parameterValue),#{item.name} 取值方式为使用反射参数对象获取 item 对象 name 属性,相当于 param.getItem...2、Xml 映射文件,除了常见 select|insert|updae|delete 标签之外,还有哪些标签? 注:这道题是京东面试官面试时问。... MyBatis ,每一个、、、标签,都会被解析为一个MappedStatement对象。...其执行原理为,使用 OGNL sql 参数对象中计算表达式,根据表达式动态拼接 sql,以此来完成动态 sql 功能。...其去重复原理是标签标签,指定了唯一确定一条记录 id 列,MyBatis 根据列来完成 100 条记录去重复功能,可以有多个,代表了联合主键语意。

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

2020年,MyBatis常见面试题总结

Mybatis 技术内幕系列博客,原理和源码角度,介绍了其内部实现细节,无论是写好与不好,确实是用心写了,由于并不是介绍如何使用 Mybatis 文章,所以,一些参数使用细节略掉了,我们目标是介绍...2、Xml 映射文件,除了常见 select|insert|updae|delete 标签之外,还有哪些标签? 注:这道题是京东面试官面试时问。... Mybatis ,每一个、、、标签,都会被解析为一个MappedStatement对象。...其执行原理为,使用 OGNL sql 参数对象中计算表达式,根据表达式动态拼接 sql,以此来完成动态 sql 功能。...其去重复原理是标签标签,指定了唯一确定一条记录 id 列,Mybatis 根据列来完成 100 条记录去重复功能,可以有多个,代表了联合主键语意。

82710

八千字直接带你学完《基于PythonSelenium4入门到高级》全教程

可以用括号选择分支,div[2]代表是当前层级下第二个div标签; 2....派生选择器-----AA>XX或AA XX选择AA标签XX元素 • 你可以通过获取xpath方式来页面获取css选择css里标识层级关系使用是>或者空格(xpath里使用是/) div#...一般用于定位标签 xpath定位 可能不唯一 element或elements列表 一般用来做精确定位,用/表示元素层级关系,xpath属性定位必须加引号 css选择器定位 可能不唯一...("XX)判断标签元素XX是否为下拉列表元素,是返回Select对象,不是报错 • select_by_value("XX")通过下拉列表value属性XX选择选项 • select_by_visible_text...X)双击 • context_click(X)右击 • perform() 执行所有存储ActionChains()类行为,做最终提交 不管执行哪个方法,最后都要调用perform()方法,将操作呈现出来

2.6K52

mybatis框架常见注解(持续补充)

@Insert @Insert对应xml文件insert标签。插入记录时候主键如何生成?对此基本上有三种方案:手动指定(应用层)、自增主键(数据层单表)、选择主键(数据层多表)。...自增主键会使用数据库底层自增特性。 选择主键 选择主键数据层生成一个,并用这个作为主键。...@Select 查询时候稍稍有些复杂,因为查询会涉及到如何将查出来字段设置到对象上,对应xml文件select标签。...@Results 对于表字段名和对象属性名没有太大相同点并且表字段挺多情况下,应该使用ResultMap做适配。...@Param 参数标签,我们Mapper方法签名上标注参数,我们可以指定参数名称,然后注解或者xmlSQL里就可以使用我们自定义参数名称。

23540

查看Mysql执行计划

选择解释标签,就可以查看到sql执行计划了 ?...refornull:与ref 唯一区别就是使用索引引用查询之外再增加一个空查询。...如果为空,没有可能索引,可以为相关WHERE语句中选择一个合适语句 4、key 实际使用索引。如果为NULL,则没有使用索引。很少情况下,MYSQL会选择优化不足索引。...UNION:子查询UNION,且为UNION 第二个SELECT 开始后面所有SELECT,同样依赖于外部查询结果集;PRIMARY:子查询最外层查询,注意并不是主键查询;SIMPLE...:UNION 语句中第二个SELECT 开始后面所有SELECT,第一个SELECT 为PRIMARYUNION RESULT:UNION 合并结果; 8、Extra 关于MYSQL如何解析查询额外信息

3.3K10

Selenium面试题

不可以,想点击的话,可以用js去掉dispalay=none属性 NO.8 selenium如何保证操作元素成功率? 保证操作元素成功率,也就是说如何保证点击元素一定是可以点击?...如何选择?...其次是Xpath,因为很多情况下html标签属性不够规范,无法唯一定位。...如果XPath文档任意位置开始进行选择匹配,那么它将允许创建“相对”路径表达式。 例如 “// p”匹配所有的段落元素。 NO.18 什么是XPath?...假如一个文本框是一个Ajax控件,当我们输入一些文本时,它会显示自动建议。 处理这样控件,需要在文本框输入之后,捕获字符串所有建议;然后,分割字符串,取值就好了。

5.6K30

20个能够有效提高 Pandas数据分析效率常用函数,附带解释和例子

Loc 和 iloc Loc 和 iloc 函数用于选择行或者列。 loc:通过标签选择 iloc:通过位置选择 loc用于按标签选择数据。列标签是列名。...对于行标签,如果我们不分配任何特定索引,pandas默认创建整数索引。因此,行标签0开始向上整数。与iloc一起使用行位置也是0开始整数。...Nunique Nunique统计列或行上唯一条目数。它在分类特征中非常有用,特别是我们事先不知道类别数量情况下。让我们看看我们初始数据: ?...如果axis参数设置为1,nunique将返回每行唯一数目。 13. Lookup 'lookup'可以用于根据行、列标签在dataframe查找指定。假设我们有以下数据: ?...在这种情况下,简单矢量化操作(例如df*4)要快得多。 然而,某些情况下,我们可能无法选择矢量化操作。

5.5K30

Mybatis 框架

之前内容写了Java基础知识、Java Web相关知识。有这些内容就可以编写各种各样丰富程序。但是如果纯粹手写所有代码,工作量仍然很大。...上面使用内置对象时我们说它可以取任何名称,但是这里请注意 名称只能是自定义对象属性名,而且区分大小写 这里使用都是确定,如果要使用模糊查询时该如何操作呢,这里我们按照名称来模糊查询,首先在dao...1,我们可以使用 where标签来包裹这些if,表明if所有内容都是作为查询条件,这样mybatis最后会在生成查询条件后自动帮助我们进行格式整理 使用if标签我们搞定了不确定用户会使用哪些查询条件问题...这里有一个问题,多表查询,我们是否有必要一次查询出它所关联所有数据,就像之前一对多关系查询用户时是否需要查询对应账户,以及查询账户时是否需要查询它所对应用户。...account where uid = id xml配置可以collection标签中使用select属性,该属性指向一个方法,该方法功能是根据id获取所有对象列表。

65320

Mybatis面试问题锦集

号占位符设置参数值,比如ps.setInt(0, parameterValue),#{item.name}取值方式为使用反射参数对象获取item对象name属性,相当于param.getItem...Mybatis,每一个、、、标签,都会被解析为一个MappedStatement对象。...其执行原理为,使用OGNLsql参数对象中计算表达式,根据表达式动态拼接sql,以此来完成动态sql功能。 8、Mybatis是如何将sql执行结果封装为目标对象并返回?...其去重复原理是标签标签,指定了唯一确定一条记录id列,Mybatis根据列来完成100条记录去重复功能,可以有多个,代表了联合主键语意。...16、Mybatis映射文件,如果A标签通过include引用了B标签内容,请问,B标签能否定义A标签后面,还是说必须定义A标签前面?

3K20

一条慢sql引发思考

EXPLAIN返回语句中使用每个表一行信息 SELECT。它按照 MySQL 处理语句时读取表顺序列出了输出表。...这意味着MySQL第一个表读取一行,然后第二个表中找到匹配行,然后第三个表中找到匹配行,依此类推。当所有表都处理完毕后,MySQL 输出选定列并回溯表列表,直到找到有更多匹配行表。...,显示查询每个子查询唯一标识符。...partitions:(使用 EXPLAIN PARTITIONS 时)显示查询涉及分区。 type:表示连接类型或访问类型。这是优化器选择主要算法,用于访问表行。...一些常见包括: system:表只有一行(通常是系统表),这是最快连接类型。 const:使用主键或唯一索引时,只匹配一行。 ref:使用非唯一索引来查找匹配行。

18810

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

号占位符设置参数值,比如ps.setInt(0, parameterValue),#{item.name}取值方式为使用反射参数对象获取item对象name属性,相当于param.getItem...Mybatis,每一个、、、标签,都会被解析为一个MappedStatement对象。...其执行原理为,使用OGNLsql参数对象中计算表达式,根据表达式动态拼接sql,以此来完成动态sql功能。 8、Mybatis是如何将sql执行结果封装为目标对象并返回?...其去重复原理是标签标签,指定了唯一确定一条记录id列,Mybatis根据列来完成100条记录去重复功能,可以有多个,代表了联合主键语意。...16、Mybatis映射文件,如果A标签通过include引用了B标签内容,请问,B标签能否定义A标签后面,还是说必须定义A标签前面?

1.3K21

MyBatis 浅入深 随笔整理

,相当于MyBatis总管,所有配置信息都会存放在它里面,MyBatis还提供了设置这些配置信息方法: (1) 可以配置文件李获取属性 (2) 通过程序直接设置 2. ...这些不同运行环境,就可以听过environments元素来配置,但是不管增加几套运行环境,都必须要明确选择出当前唯一一个运行环境。...,默认映射级别(PARTIAL)情况下: 1)若一致,即使没有做属性名和字段名匹配映射,也可以在后台获取到未匹配过属性 2)若不一致,且resultMap里没有做映射,那么就无法在后台获取并输出...Select 属性: 1)Id 命名空间中唯一标识符,可以被用来引用这条语句 由于我们常用映射方法是基于Mapper接口,所有id需跟对应接口方法名一致 2)ParameterType: 标识查询语句传入参数类型完全限定名或别名...而不需修改字段,则可以不再更新(因为有的时候update操作中使用多个if或者别的选择标签,若一部分没有执行,则导致语句末尾残留多余逗号,解决此问题) Tip: <update id="up"

1.7K30

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

号占位符设置参数值,比如ps.setInt(0, parameterValue),#{item.name}取值方式为使用反射参数对象获取item对象name属性,相当于param.getItem...Mybatis,每一个、、、标签,都会被解析为一个MappedStatement对象。...其去重复原理是标签标签,指定了唯一确定一条记录id列,Mybatis根据列来完成100条记录去重复功能,可以有多个,代表了联合主键语意。...作用范围:Executor这些特点,都严格限制SqlSession生命周期范围内。 11、Mybatis如何指定使用哪一种Executor执行器?...13、Mybatis映射文件,如果A标签通过include引用了B标签内容,请问,B标签能否定义A标签后面,还是说必须定义A标签前面?

1.1K10
领券