详解Mybatis框架解决的主要问题

156 阅读3分钟

常见的J2EE 中开发框架:

Spring 框架:

Spring 框架为了解决软件开发的复杂性而创建的。Spring 使用的是基本的JavaBean 来完成以前非常复杂的企业级开发。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

SpringMVC 框架

SpringMVC属于SpringFrameWork 3.0版本中加入的1个模块,为SPring框架提供了构建Web应用程序的能力。现在可通过Spring框架的SpringMVC模块实现web应用开发,在Web项目中可以无缝使用Spring和SpringMVC框架。

框架是什么?

框架定义

框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种认为,框架是可被应用开发者定制的应用骨架、模板。

简单的说,框架其实是半成品软件,就是一组组件,供你使用完成你自己的系统。从另一个角度来说框架一个舞台,你在舞台上做表演。在框架基础上加入你要完成的功能。

框架安全的,可复用的,不断升级的软件。

框架解决的问题

框架要解决的最重要的一个问题是技术整合,在 J2EE 的 框架中,有着各种各样的技术,不同的应用,系统使用不同的技术解决问题。需要从 J2EE 中选择不同的技术,而技术自身的复杂性,有导致更大的风险。企业在开发软件项目时,主要目的是解决业务问题。 即要求企业负责技术本身,又要求解决业务问题。这是大多数企业不能完成的。框架把相关的技术融合在一起,企业开发可以集中在业务领域方面。

另一个方面可以提供开发的效率。

使用JDBC 的缺陷

1. 代码比较多,开发效率低

2. 需要关注Connection ,Statement, ResultSet 对象创建和销毁

3. 对ResultSet 查询的结果,需要自己封装为List

4. 重复的代码比较多些

5. 业务代码和数据库的操作混在一起

MyBatis 框架概述

MyBatis 框架:

MyBatis 本是apache 的一个开源项目 iBatis, 2010 年这个项目由apache software foundation 迁移到了google code,并且改名为 MyBatis 。2013 年 11 月迁移到Github。

MyBatis 解决的主要问题

减轻使用JDBC 的复杂性,不用编写重复的创建Connetion , Statement ; 不用编写关闭资源代码。

直接使用java 对象,表示结果数据。让开发者专注 SQL 的处理。 其他分心的工作由MyBatis 代劳。

MyBatis 可以完成:

1. 注册数据库的驱动,例如Class.forName(“com.mysql.jdbc.Driver”))

2. 创建JDBC 中必须使用的 Connection , Statement, ResultSet 对象

3.  从xml 中获取sql,并执行sql 语句,把ResultSet 结果转换java 对象

List<Student> list = new ArrayLsit<>();

ResultSet rs = state.executeQuery(“select * from student”)

while(rs.next){



           Student student = new Student()

           student.setName(rs.getString(“name”))

           student.setAge(rs.getInt(“age”))

           list.add(student);

}

4. 关闭资源

ResultSet.close() , Statement.close() , Conenection.close()