MyBatis框架的.xml配置问题

一,理解框架;

   框架(Framework),顾名思义就是用一些工具(比如:编程语言),将一些功能的具体实现细节封装起来,再用接口API与外界进行连接交互。通俗来讲就好比一所房子(框架),对于住户(程序员)来讲,我们不必去了解他的具体建造细节。比如:墙体是怎么建造起来的,墙体有多厚,这些都不是我们作为使用者所关心的。我们所关注的是什么?是房子里面有哪些功能,比如能遮蔽风雨,能做饭。我们只是使用里面的一些功能来(调用框架里的方法)达到我们的目的。而我们要使用房子里面的功能(相当于框架里面的方法),我们需要获得进入这个房子的门(框架里的接口),然后利用钥匙(相当于要符合该框架的一些规范)打开房门即可。那么框架的具体作用,也就是好处在哪里呢?主要有两大好处:降低耦合性,提高复用性。请试想一下,你要达到煮饭这个目的,如果没有房子这个框架,你需要做的有哪些,要自己做一个灶台,要弄一个棚子(防止刮风),需要考虑的很多,那么实现这个目的就显得很复杂。但我们用了房子这个框架之后,就只需要做两件事,拿到钥匙打开房门,使用煮饭这个功能。这样就使开发过程变得更有效率。而且我只要有这个框架在,只要你遵循这个框架的协议,你就可以使用其里面的方法。

二,MyBatis框架

   MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移
到Github。MyBatis是基于JAVA的持久层(dao层)框架。其依赖的JAR包有:
 核心包:mybatis-3.2.7.jar;
核心包依赖包:asm-3.3.1.jar|cglib-2.2.2.jar|commons-logging-1.1.1.jar|javassist-3.17.1-GA.jar|log4j-1.2.17.jar|slf4j-api-1.7.5.jar|slf4j-lg4j12-1.7.5.jar;
数据库连接驱动:mysql-connector-java-5.1.28-bin.jar;
  这些JAR包的作用就好比房子的原材料,为建造房子提供支持。有了原材料还需要设计图,XML全局配置文件就相当于是设计房子的图纸。而映射文件XML的配置就相当于使用房子的一些功能的说明书。那么我们就来看看具体搭建MyBatis框架的具体步骤:

1,导入JAR包到项目文件lib;

2,配置XML配置文件:全局配置文件和映射配置文件。

  全局配置文件的配置:一般我们以SqlMapConfig,xml来命名我们的全局配置文件(具体格式在下载的MyBatis文件包里有一个PDF格式的官方文档)。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>

注意:在一个全局配置文件中可以由多个<enviroment></enviroment>配置,但有两个要仔细小心地细节:

(1):<mappers>标签是与<enviroment>平级的标签,不能嵌套到内部。

(2):<mapper resource>该标签配置的是访问映射文件的路径,一定要用/,你的映射文件放在项目的哪个位置就一定要写全,并且要跟上.xml(这就好比房子里面的路径,指向如何去厨房)  ;

映射配置文件的配置:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.mybatis.example.BlogMapper">
<select id="selectBlog" resultType="Blog">
select * from Blog where id = #{id}
</select>
</mapper>
注意:映射配置文件里面是对数据库的操作,所以里面标签种类常用的有四类<select><update><delete><insert>,外加一个<resultMap>(这个标签的具体用处在后续会详细讲解)

3.利用MyBatis的全局配置文件创建SqlSessionFactory。通俗来讲就是按图纸建造房子。

SqlSessionFactory sqlSessionFactory=SqlsessionFactoryBuilder().build(resource);//@para:resource指的是你的全局配置文件的路径名。如果是在src根目录下,直接写文件名.xml

4.利用SqlSessionFactory创建SqlSession

SqlSession sqlSession=sqlSessionFactory.openSession();//通过会话即可实现与数据库的操作。增删改查只是体现在会话内容的不同上。

5.如果是增删改,需要一步提交步骤;

sqlSession.commit();//查询不需要该步骤。

5.关闭会话;

sqlSession.close();

 



猜你喜欢

转载自blog.csdn.net/mrpiont/article/details/78905465