01
2020
04
使用Mybatis的mapper接口调用时候有哪些要求?
1) Mapper接口方法名和Mapper.xml中定义的每个SQL的id相同; 2) Mapper接口方法的输入参数类型和mapper.xml中定义的每个sqlparameterType类型相同 ;3) Mapper接口方法的输入输出参数类型和mapper.xml中定义的每个sql的resultType的类型相同 ;4) Mapper.xml文件中的namespace,就是接口的类路径。
作者:ghjk | 分类:MyBatis面试题 | 浏览:319 | 评论:0
01
2020
04
简单的说一下MyBatis的一级缓存和二级缓存?
Mybatis首先去缓存中查询结果集,如果没有则查询数据库,如果有则从缓存取出返回结果集就不走数据库。Mybatis内部存储缓存使用一个HashMap,key为hashCode+sqlId+Sql语句。value为从查询出来映射生成的java对象Mybatis的二级缓存即查询缓存,它的作用域是一个mapper的namespace,即在同一个namespace中查询sql可以从缓存中获取数据。二级缓存是可以跨SqlSession的。
作者:ghjk | 分类:MyBatis面试题 | 浏览:340 | 评论:0
01
2020
04
SqlMapConfig.xml中配置有哪些内容?
SqlMapConfig.xml中配置的内容和顺序如下:properties(属性)settings(配置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境集合属性对象)environment(环境子属性对象)transactionManager(事务管理)dataSource(数据源)mappers(映射器)
作者:ghjk | 分类:MyBatis面试题 | 浏览:327 | 评论:0
01
2020
04
MyBatis编程步骤是什么样的?
① 创建SqlSessionFactory② 通过SqlSessionFactory创建SqlSession③ 通过sqlsession执行数据库操作④ 调用session.commit()提交事务⑤ 调用session.close()关闭会话
作者:ghjk | 分类:MyBatis面试题 | 浏览:338 | 评论:0
01
2020
04
Mybatis工作原理?
原理:通过SqlSessionFactoryBuilder从mybatis-config.xml配置文件中构建出SqlSessionFactory。SqlSessionFactory开启一个SqlSession,通过SqlSession实例获得Mapper对象并且运行Mapper映射的Sql语句。完成数据库的CRUD操作和事务提交,关闭SqlSession。
作者:ghjk | 分类:MyBatis面试题 | 浏览:305 | 评论:0
01
2020
04
01
2020
04
01
2020
04
${} 和 #{}的区别?
:简单字符串替换,把{}直接替换成变量的值,不做任何转换,这种是取值以后再去编译SQL语句。#{}:预编译处理,sql中的#{}替换成?,补全预编译语句,有效的防止Sql语句注入,这种取值是编译好SQL语句再取值。总结:一般用#{}来进行列的代替
作者:ghjk | 分类:MyBatis面试题 | 浏览:284 | 评论:0
01
2020
04
Mybatis配置一对一?
<association property="topicType" select="selectType" column="topics_type_id" javaType="com.tmf.bbs.pojo.Type"/>property:属性名select:要连接的查询column:共同列javaType:集合中元素的类型
作者:ghjk | 分类:MyBatis面试题 | 浏览:306 | 评论:0
01
2020
04
Mybatis配置一对多?
<collection property="topicComment" column="id" ofType="com.tmf.bbs.pojo.Comment" select="selectComment" />property:属性名column:共同列ofType:集合中元素的类型select:要连接的查询
作者:ghjk | 分类:MyBatis面试题 | 浏览:309 | 评论:0