xiaoao

一、准备条件:

       1.依赖jar包:mybatis核心包(必须)、lombok插件包(非必须)以及MySQL数据库连接驱动包(必须)

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.2</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.12</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.25</version>
        </dependency>

     2.jdk1.8及以上

     3.其他

二、配置启动mybatis项目

     1.核心配置文件(请放到项目的classpath路径下):

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

    <!--属性-->
    <properties>
        <!--数据库连接属性-->
        <property name="driver" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/xiao"/>
        <property name="username" value=""/>
        <property name="password" value=""/>
    </properties>


    <!--环境配置信息-->
    <environments default="development">
        <environment id="development">
            <!--事务管理,采用JDBC事务-->
            <transactionManager type="JDBC"/>

            <!--dataSource连接管理,采用需要连接池的链接-->
            <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="UserMapper.xml"/>
    </mappers>
</configuration>

    2.启动。使用mybatis的核心代码就是操作一个SqlSession对象,对数据库进行增删改查操作,那么一个SqlSession对象是如何生成的呢?先读取核心配置文件(参考上面),然后用工厂模式创建。

        //使用xml文件来加载mybatis启动项
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

        try (SqlSession sqlSession = sqlSessionFactory.openSession()) {
        
        }

   3.映射。将对数据库表的操作,放入一个xml配置文件中,并在mybatis-config文件中引入。并且将每一个配置文件都与一个类一一对应。

     在mybatis-config中引入映射文件

<!--映射配置文件-->
    <mappers>
        <mapper resource="UserMapper.xml"/>
    </mappers>

   具体的映射配置文件:注意,namespace(命名空间)一定与具体的Java类的全路径保持一致,这样mybatis在加载的时候,会自动将xml文件与对应的Java类绑定。在老版本的mybatis中,只需要配置文件便可以访问sql,但是需要用string类型的id和配置文件的进行匹配

这样就可能在编码过程中出现错误。现在将配置文件与一个具体的类接口绑定之后,就不会出错。

<!DOCTYPE  mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lv.bean.UserBeanMapper">
    <resultMap id="UserMap" type="com.lv.bean.UserBean">
        <id property="id" column="uid"/>
        <result property="user_name" column="userName"/>
        <result property="user_password" column="userPassword"/>
        <result property="createTime" column="createTime"/>
        <result property="updateTime" column="updateTime"/>
    </resultMap>

    <!-- 可以将sql语句独立出来,然后引用 -->
    <sql id="selectMap">
         u.username, u.address ,c.campany_name
     </sql>

    <!-- 根据id查询用户 -->
    <select id="getUserInfo" parameterType="int" resultType="com.lv.bean.UserBean">
        SELECT * FROM user u WHERE u.uuid = #{uuid}
    </select>
</mapper>

    与上面的配置文件绑定的Java类(接口),其中方法名与上面的映射配置文件的id对应。

public interface UserBeanMapper {
    public UserBean getUserInfo(int dd);
}

 

分类:

技术点:

相关文章: