使用MyBaits用绑定接口的方式

 

一、MyBaits简介

• MyBaits 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架
• MyBaits 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。
• MyBaits可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录

• MyBaits是一个半自动化的持久化层框架。

一、MyBaits开发

第一步、创建一个Java或Web项目都可以,导入mybaits开发需要的架包:mybaits-3.4.1.jar和连接数据库的架包:mysql-connector-java-5.1.37-bin.jar,我用的是MySql数据库,jar包可以在百度下载,创建MyBatis全局配置文件,名字可以随便起,建议取个有意义的,我的配置文件是:mybaits-comfig.xml

 

mybaits-comfig.xml:全局配置文件内容以下

<?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> //这里是MyBaits配置文件开始,所有的配置在里面写
  <environments default="dev_mysql">环境们,mybatis可以配置多种环境 ,default指定使用某种环境。和下面的配置的environment标签的id对应,可以达到快速切换环境
    <environment id="dev_mysql">//environment:配置一个具体的环境信息;id代表当前环境的唯一标识;必须有两个标签:transactionManager、dataSource;
      <transactionManager type="JDBC" />//transactionManager:事务管理器;type:事务管理器的类型,有两个值:JDBC|MANAGED

      <dataSource type="POOLED">dataSource:数据源;type:数据源类型UNPOOLED|POOLED|JNDI
        <property name="driver" value="com.mysql.jdbc.Driver" />
        <property name="url" value="jdbc:mysql://localhost:3306/连接的数据库名" />
        <property name="username" value="root" />
        <property name="password" value="123456" />
      </dataSource>
    </environment>
  </environments>
</configuration>

第二步、创建实体对象(Java类,实体对象对应数据库的表).

 

第三步、创建接口写一个方法mapping映射文件的绑定(mapping.xml和接口是映射关系).

 

Mapping.xml配置文件写:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mapper//mapper配置标识头

 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

 <mapper namespace="com.gb.dao.UsersDao">

<!-- namespace:名称空间;指定为接口的全类名id:唯一标识 -->

 <!-- public Users getUsersById(int id); -->

  <select id="getUsersById" resultType="users">

<!-- resultType:返回值类型;#{id}:从传递过来的参数中取出id值-->

  select * from users where id = #{id}//这里写sql语句

  </select>

 </mapper>

Dao接口的内容有:

1.Dao接口的全包名和mapping.xml的名称空间相同

2.Dao接口有一个抽象方法:Users getUsersById(int id),mapping.xml映射文件的:<select id="getUsersById">id相同,这样就能和接口形成绑定了。

第四步、建立sqlSessionFactory工厂(用于加载mybaits_comfig.xml全局文件),并测试是否写对。

内容如下:

 

第五步、写一个测试类(我写的是实现Dao接口的方法,但仅仅只是实现关系,并没有具体实现它的方法,我用DaoUsersImpl类来传输数据并封装一些操作)。

先写一个类实现dao接口,内容:

有两种方式调用方法,我具体讲的是第二种

第一种方法,使用的是指定mapping.xml的名称空间和select标签中的Id,来获得查询的结果。

第二种方法,使用绑定接口的方式,来获得查询的结果。

接下来调用方法就行了,写一个测试方法,内容如下:

PS:1、如果要增删改也有mapper.xml也有对应的标签,如下:

 

DaoUsersImpl.class实现

 

2、查询全部内部内部也有封装的方法,可以这样写,如下:

 

Mapping.xml

DaoUsersImpl.class实现

 

3、增删改都要提交,只有查询不用提交。

posted on 2017-10-16 18:07  都是妖怪吧  阅读(161)  评论(0)    收藏  举报

导航