mybatis 是一款优秀的支持自定义SQL语句,存储过程和高级映射的持久层框架。消除了几乎所有jdbc代码和参数的手动设置和结果集的检索。mybatis可以使用xml或注解进行配置和映射,mybatis通过将参数映射到配置的SQL形成最终的执行SQL语句,最后将执行SQL的结果映射成Java对象返回。
与其他的orm(对象关系映射)框架不同,mybatis并没有将Java对象与数据库表关联起来,而是将Java方法与SQL语句关联。与jdbc相比,mybatis简化了相关代码,SQL语句在一行代码中就能执行。mybatis提供了一个映射引擎,声明式的将SQL语句和执行结果与对象树映射起来。通过使用一种内建的类xml表达式语句,SQL语句可以被动态生成。
mybatis支持声明式数据缓存。当一条sql语句被标记为“可缓存”后,首次执行它时从数据库获取的所有数据会被存储在高速缓存中,后面再执行这条语句时就会从高速缓存中读取结果。