您的位置:首页 > 编程语言 > Java开发

spring mvc与Mybatis整合——(二)mybatis环境搭建

2015-11-04 11:37 573 查看
这里重点是配置测试环境的搭建:mysql数据库、Eclipse、Mybatis3.2.0、jdk1.7。

一、准备数据库:

    创建一个名称为Mybatis的数据库,编码UTF-8,创建一个user表,并添加一条记录。

[sql] view
plaincopy





Create TABLE `user` (  

  `id` int(11) NOT NULL AUTO_INCREMENT,  

  `userName` varchar(50) DEFAULT NULL,  

  `userAge` int(11) DEFAULT NULL,  

  `userAddress` varchar(200) DEFAULT NULL,  

  PRIMARY KEY (`id`)  

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;  

  

Insert INTO `user` VALUES ('1', '陆逊', '25', '万达广场');  

二、源码目录结构:



三、配置文件:

    Configuration.xml的内容如下:

[html] view
plaincopy





<?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>  

    <typeAliases>   

        <typeAlias alias="User" type="com.tgb.mybatis.model.User"/>  

    </typeAliases>   

  

    <environments default="development">  

        <environment id="development">  

        <transactionManager type="JDBC"/>  

            <dataSource type="POOLED">  

            <property name="driver" value="com.mysql.jdbc.Driver"/>  

            <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis" />  

            <property name="username" value="root"/>  

            <property name="password" value="123"/>  

            </dataSource>  

        </environment>  

    </environments>  

      

    <mappers>  

        <mapper resource="com/tgb/mybatis/model/User.xml"/>  

          

    </mappers>  

</configuration>  

配置文件中配置了要扫描的映射的xml文件,数据库连接信息,以及实体的别称,整体上跟hibernate很像。

四、实体模型:

     pojo类型,User包含以下字段:

[java] view
plaincopy





public class User {  

        

    private int id;  

    private String userName;  

    private int userAge;  

    private String userAddress;  

  

    //get 、set 方法略  

}  

五、定义接口:    

[java] view
plaincopy





public interface IUserOperation {  

    /* 

     * 这里面有一个方法名 selectUserByID 必须与 User.xml 里面配置的 select 的id 对应(<select 

     * id="selectUserByID") 

     */  

    public User selectUserByID(int id);  

      

          

}  

    跟普通的接口没有两样。

六、映射文件:

User.xml内容如下:

[html] view
plaincopy





<?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="com.tgb.mybatis.inter.IUserOperation">  

  

<!-- com.yihaomen.mybatis.model.UserMapper -->  

  

    <!-- resultType的值要和Configuration.xml中的实体User的别名相同 -->  

    <select id="selectUserByID" parameterType="int" resultType="User">  

        select * from `user` where id = #{id}  

    </select>  

      

</mapper>  

配置文件是Mybatis的核心,需要遵循下面的规则:

    接口中的方法名和参数和配置文件中的id和parameterType分别对应,sql写在配置文件中,参数和调用的类test中的方法一致。sql语句中的参数和实体中的字段名一致,大小写敏感。

  

七、测试:

[java] view
plaincopy





package com.tgb.test;  

  

import java.io.Reader;  

import java.util.List;  

  

import org.apache.ibatis.io.Resources;  

import org.apache.ibatis.session.SqlSession;  

import org.apache.ibatis.session.SqlSessionFactory;  

import org.apache.ibatis.session.SqlSessionFactoryBuilder;  

import com.tgb.mybatis.inter.IUserOperation;  

import com.tgb.mybatis.model.User;  

  

  

public class Test {  

  

    private static SqlSessionFactory sqlSessionFactory;  

    private static Reader reader;  

  

    static {  

        try {  

            // 最终实现了从配置文件中配置工厂的初始化  

            reader = Resources.getResourceAsReader("Configuration.xml");  

            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);  

        } catch (Exception e) {  

            e.printStackTrace();  

        }  

    }  

  

    public static SqlSessionFactory getSession() {  

        return sqlSessionFactory;  

    }  

  

      

    public static void main(String[] args) {      

  

        //测试接口返回用户list列表  

         Test testUser=new Test();  

         testUser.selectUserByID(1);              

        

  

    }  

  

}  

八、总结:

    这里重点是搭建一个Mybatis的环境,相关的jar包可以从这里下载,下篇文章会对具体的语法进行解释,并会展示增删改查的操作。

    配置文件是核心,需要遵循如下规则: 接口中的方法名和参数和配置文件中的id和parameterType分别对应,sql写在配置文件中,参数和调用的类test中的方法一致。sql语句中的参数和实体中的字段名一致,大小写敏感。

    另外,Mybatis也支持非接口的编程,因为在开发中一般都会面向接口,所以,这里就不再赘述。

版权声明:本文为博主原创文章,未经博主允许不得转载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息