简介
一个持久性层的框架技术
内部封装了JDBC
采用ORM的思想将实体与数据库完成自动映射
在开发的时候只需关注SQL本事,不必处理加载驱动,创建连接,创建Statement等的过程
实现原理
从执行sql到返回result的过程:
使用xml或者注解的方式
将要执行的statement配置起来,
并通过Java对象和statement的动态参数进行映射,
生成最终的sql语句,
最后交由mybatis框架执行
并将结果映射为Java对象返回
ORM
对象关系映射,用于解决面向对象语言中不同类型系统数据间的转换问题
持久化数据和实体对象的映射模式,为了解决面向对象与关系型数据库存在的互不匹配的技术
把DB中的数据封装到实体类中,也可以把实体类中的数据保存到DB中
传统JDBC缺点
1>没有用到连接池,频繁的创建和关闭连接影响系统的性能
2>sql语句在代码中硬编码,耦合性高
3>结果集需要手动封装到实体对象中
4>增删改操作需要参数时,需要手动将实体对象的数据设置到sql语句的占位符
解决办法:
1>采用连接池
2>sql语句抽取到配置文件中
3>使用反射技术,完成自动映射