MyBatis-常见问题

ORM是什么?
ORM指的是对象关系映射,可以从如下两个方面进行理解:
1)将内存中的对象以及对象与对象之间的关系持久化到数据库
2)将数据库表中的记录借助某种查询方式存储到内存中的对象中

Java中常用的ORM框架有哪些?
1.Hibernate
2.MyBatis
3.JPA

MyBatis框架的理解?
MyBatis是一个优秀的持久层框架,是一个半成品,底层通过对
JDBC的封装,可以有效简化JDBC相关代码的编写,提高开发效率
,降低企业成本。现价段基于Java生态的互联网项目中有很广泛
的应用。
个人认为:
1)MyBatis的最大优势就是它的灵活性以及安全性。
(现在的sql语句比较复杂,需求可能会发生变化,所有框架的
灵活性要好,使用#可以防止sql注入)
2)MyBatis的最大劣势:系统移植性(版本兼容性)
(不同数据库厂商对sql语句标准实现不同)不好

MyBatis框架的架构体系?
MyBatis设计时其核心框架主要分为三层:
1接口应用层(SqlSessionFactory-线程安全,SqlSession-线程不安全,每次使用都要创建新的对象,...)
2数据处理层(文件解析,sql的解析)
3基础服务层(连接池,缓存,事务)

MyBatis框架的核心api?
1)SqlSessionFactoryBuilder(Configuration,MappedStatement...)
2)SqlSessionFactory(DefaultSqlSessionFactory,...)
3)SqlSession(DefaultSqlSession,Executor...)

MyBatis编程的核心步骤?
1创建maven项目
2添加mybatis依赖
3添加配置文件,映射文件
4编写映射元素(select,update,delete,insert...)
5编写单元测试对元素进行测试

MyBatis编程遇到的异常?

1

2

3

4.png

5

6

MyBatis实现了JAVA代码和SQL语句的分离,便于更好地去维护。jdbc的sql语句是写在java代码里的,而mybatis的sql语句是写在xml文件里的。sql语句的写法变了,同样的业务使用不同的sql去写性能是不一样的,性能不一样,sql语句方案不一样,如果在xml更改,只需重启tomcat服务器,而sql语句写在java代码中,如果变化需要重新编译。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。