MyBatis知识点复习(javaweb作业4)

作业4

一.单选题

1、关于MyBatis配置文件中< typeAliases >元素说法错误的是()

A、可以通过在MyBaits中配置< typeAliases >元素来定义别名
B、MyBaits配置文件中< typeAliases >元素的子元素< typeAlias >需要配置type和alias属性
C、可以通过在类名上使用@Alias(value = “user”)的形式定义别名
D、同时在MyBaits中配置了< typeAliases >元素以及@Alias(value = “user”)注解定义别名后,会以注解形式的别名为准

正确答案: B

< typeAliase >元素用于为原始文件中的Java类型设置别名,他的子元素< typeAlias>中的type属性用于指定需要别名的全限定类名;alias用于自定义别名。省略alias的话,默认别名为 类名首字母小写

2、关于< typeHandlers >元素说法错误的是()

A、< typeHandle r>元素就是用来在配置文件中注册自定义的类型处理器的,它的使用方式有两种
B、通过< typeHandlers >元素的子元素< typeHandler >就可以配置单个类型处理器
C、通过< typeHandlers >元素的子元素< package >可以配置包下的所有类型处理器
D、< typeHandlers >元素的子元素< package >的handler属性用于指定类型处理器所在的包名,系统会在启动时自动的扫描com.itheima.type包下所有的文件,并把它们作为类型处理器

正确答案: D

typeHandle的作用:将预处理语句中传入的参数从Java类型转为JDBC类型,或JDBC转java类型。
子元素< typeHandler > 的Handler属性用于指定在程序中自定义的类型处理器类。
子元素< package >的namer属性用于指定类型处理器所在的包名,系统会在启动时自动的扫描com.itheima.type包下所有的文件,并把它们作为类型处理器

3、有关MyBatis配置文件中< settings >元素的说法错误的是()

A、< settings >元素主要用于改变MyBatis运行时的行为,例如开启二级缓存、开启延迟加载等
B、虽然不配置< settings >元素,也可以正常运行MyBatis,但是熟悉< settings >的配置内容以及它们的作用还是十分必要的
C、< settings >元素中延迟加载的全局开关的参数lazyLoadingEnabled默认开启
D、< settings >元素的配置内容大多数都不需要开发人员去配置它,通常在需要时只配置少数几项即可

正确答案: C

下表第二行
请添加图片描述
请添加图片描述

二.填空题

1、< settings >元素中的配置参数lazyLoadingEnabled是延迟加载的全局开关。特定关联关系中可以通过设置【】属性来覆盖该项的开关状态。

正确答案:fetchType

选择3

2、< typeAliases >元素的子元素< typeAlias >中的type属性用于指定需要被定义别名的类的全限定名;【】属性的属性值user就是自定义的别名。

正确答案:alias

选择1

3、使用完SqlSession对象之后,要及时的关闭它,通常可以将其放在【】块中关闭。

正确答案:finally

SqlSession是MyBatis框架中另一个重要的对象,它是应用程序与持久层之间执行交互操作的一个单线程对象,其主要作用是执行持久化操作。SqlSession对象包含了数据库中所有执行SQL操作的方法,由于其底层封装了JDBC连接,所以可以直接使用其实例来执行已映射的SQL语句。
每一个线程都应该有一个自己的SalSession 实例,并且该实例是不能被共享的。
同时,SqlSession实例也是线程不安全的,因此其使用范围最好在一次请求或一 个方法中, 绝不能将其放在一个类的静态字段、实例字段或任何类型的管理范围(如Servlet的HttpSession)中使用。
使用完SqlSession对象之后,要及时地关闭它,通常可以将其放在finally块中关闭
代码如下所示。

SqlSession sqlSession = sqlSes sionFactory. openSession() ;
try{
//此处执行持久化操作
) finally {
u
sqlSession.close() ;

4、除了可以通过外部配置文件来定义属性值外,还可以通过配置< properties >元素的子元素【】,以及通过方法参数传递的方式来获取属性值。

正确答案:property

5、SqlSessionFactory对象是线程安全的,所以在构建SqlSessionFactory实例时,建议使用【】模式

正确答案:单例

SqlSession是MyBatis 框架中另一个重要的对象,它是应用程序与持久层之间执行交互操作的一一个单线程对象,其主要作用是执行持久化操作。SqlSession 对象包含了数据库中所有执F SQL操作的方法,由于其底层封装了JDBC连接,所以可以直接使用已映射的SQL语句。

6、自定义类型处理器可以通过实现【】接口或者继承BaseTypeHandle类来定义。

正确答案:TypeHandler

7、SqlSessionFactory对象的实例可以通过【】对象来构建,而该对象可以通过XML配置文件或一个预先定义好的Configuration实例构建出。

正确答案:SqlSessionFactoryBuilder

8、在< environment >元素内,包含事务管理和数据源的配置信息,其中【】元素用于配置事务管理。

正确答案:<transactionManager>

9、MyBatis允许在已映射语句执行过程中的某一点进行拦截调用,这种拦截调用是通过插件来实现的。【】元素的作用就是配置用户所开发的插件。

正确答案:<plugins>

10、在MyBatis框架的核心配置文件中,【】是配置文件的根元素,其他元素都要在该元素内配置。

正确答案:<configuration>

11、在< environment >元素内,包含事务管理和数据源的配置信息,其中【】元素用于配置数据源。

正确答案:<dataSource>

12、SqlSessionFactory是MyBatis框架中十分重要的对象,它是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建【】。

正确答案:SqlSession

三.判断题

1、除了可以像上述通过外部配置文件来定义属性值外,还可以通过配置< properties >元素的子元素< property >,以及通过方法参数传递的方式来获取属性值()

正确答案:√

2、< settings >元素主要用于改变MyBatis运行时的行为,例如开启二级缓存、开启延迟加载等()

正确答案:√

3、MyBatis框架提供了许多默认别名,由于别名不区分大小写,所以在使用时要注意重复定义的覆盖问题()。

正确答案:√

4、< properties >是一个配置属性的元素,该元素通常用来将内部的配置外在化,即通过外部的配置来动态的替换内部定义的属性()

正确答案:√

5、SqlSession是MyBatis框架中另一个重要的对象,它是应用程序与持久层之间执行交互操作的一个单线程对象,其主要作用是执行持久化操作()

正确答案:√

6、在MyBatis配置文件中 < settings >元素的作用十分重要,所以必须要掌握并进行配置,否则会影响MyBatis的正常运行()

正确答案:×

7、SqlSessionFactory是MyBatis框架中十分重要的对象,它是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建SqlSession()

正确答案:√

8、< configuration >的子元素必须按照指定的顺序进行配置,否则MyBatis在解析XML配置文件的时候会报错()。

正确答案:√
9、在配置文件中,< environments >元素用于对环境进行配置。MyBatis的环境配置实际上就是数据源的配置,我们可以通过< environments >元素配置多种数据源,即配置多种数据库()

正确答案:√

10、SqlSession实例也是线程安全的,可以将其放在一个类的静态字段、实例字段或任何类型的管理范围(如Servlet的HttpSession)中使用()

正确答案:×

11、如果项目中使用的SSM整合开发,就需要在MyBatis中配置事务管理器,而在Spring中进行数据源配置()

正确答案:×

12、MyBatis中默认的ObjectFactory的作用就是实例化目标类,它既可以通过默认构造方法实例化,也可以在参数映射存在的时候通过参数构造方法来实例化()

正确答案:√
13、< typeHandler >元素就是用来在配置文件中注册自定义的类型处理器的()

正确答案:√
14、MyBatis允许在已映射语句执行过程中的某一点进行拦截调用,这种拦截调用是通过插件来实现的。< plugins >元素的作用就是配置用户所开发的插件()

正确答案:√

15、< settings >元素中的配置参数cacheEnabled用于影响所有映射器中配置的缓存全局开关,默认值为false()。

正确答案:×

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寂静花开

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值