标签:
1. 通常是将SQL语句硬编码到Java代码当中,不利于修改和维护。解决思路设想:将SQL单独提取出来,在配置文件(xml方式等)中配置。
2. 数据库连接不能够重复的利用,使数据库资源浪费。解决思路设想:使用数据库连接池(如:c3p0、dbcp连接池)连接数据库。
3. 经常会向Statement中设置参数,是一种典型的硬编码行为。解决思路设想:是否能够自动的将Java对象设置到Statement中去。
4. 遍历结果集时,resultSet.getString()需要硬编码指定字段名称。解决思路设想:能否自动的SQL结果集转换为Java对象。
MyBatis是一个不完全的ORM框架,MyBatis也可以进行对象关系映射。它对JDBC操作数据库的过程进行了封装,使开发者只需要关注SQLB本身,不需要花费精力去处理例如注册驱动、创建connection、创建statement等代码。MyBatis通过配置文件的形式单独处理SQL语句,同时将SQL结果集封装中Java对象返回。
1. SqlMapConfig.xml是Mybatis的核心配置文件,配置了数据源、事务。对于mapper.xml也是一个重要的配置文件,它是Mybatis的映射文件。
2. SqlSessionFactory是一个会话工厂,用户用于产生会话SqlSession。
3. SqlSession会话,它是一个面向用户的接口,用于操作数据库(例如:增、删、改、查)。
4. Executor执行器,SqlSession的内部是通过executor操作数据库,Executor是一个底层的封装对象,用户是看不到的。Executor执行器需要Mapped Statement中封装的数据信息来操作数据库。
5. Mapped Statement是Mybatis的一个封装对象,封装了SQL语句、传人SQL语句中的参数、将SQL查询的结果映射成Java对象。
标签:
原文地址:http://www.cnblogs.com/shi-blog/p/4314506.html