MyBatis入门

本文详细介绍MyBatis配置文件的各个元素,包括属性、别名、环境设置、数据源和映射器,并通过具体案例展示如何配置和使用MyBatis进行数据库操作。

一、配置文件详解

<?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 resource="jdbc.properties"></properties>



    <!--方法二、配置属性资源路径,网络路径-->

    <!--<properties url="file:/d:\\jdbc.properties"></properties>-->

    <!--<properties url="http://www.baidu.com"></properties>-->;

    <!--配置别名,简化mapper文件的结果类型以及参数类型-->

    <!--方法三、直接写-->

    <!--<properties>-->

    <!--<property name="driver" value="${driver}"/>-->

    <!--<property name="url" value="${url}"/>-->

    <!--<property name="username" value="${username}"/>-->

    <!--<property name="password" value="${password}"/>-->

    <!--</properties>-->

    <!--<typeAliases>-->

    <!--&lt;!&ndash;<typeAlias type="pojo.User" alias="user"></typeAlias>&ndash;&gt;-->

    <!--&lt;!&ndash;配置当前包下所有类,简化名称为类名称简化为小写,效果同上&ndash;&gt;-->

    <!--<package name="pojo"></package>-->

    <!--</typeAliases>-->



    <!--配置sqlsessionFactory的环境,default对于环境id-->

    <environments default="development">



        <environment id="development">

            <!--事务管理器,JDBC默认使用jdbc默认事务管理配置,Manager则放弃事务管理,由其他事务管理代替,如Spring-->

            <transactionManager type="JDBC"/>

            <!--数据源:UNPOOLED不使用连接池,POOLED:使用默认连接池,JNDI:自定义连接池,用于web项目中,通过在web容器(tomcat,jboos)中而配置获取数据源-->

            <dataSource type="POOLED">

                <!--value与配置文件名称相同-->

                <property name="driver" value="${driver}"/>

                <property name="url" value="${url}"/>

                <property name="username" value="${username}"/>

                <property name="password" value="${password}"/>

            </dataSource>

        </environment>



        <!--环境,id可以自己写-->

        <environment id="development">

            <transactionManager type="JDBC"/>

            <dataSource type="POOLED">

                <!--value与配置文件名称相同-->

                <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="mapper/UserMapper.xml"/>

        <!--可以直接在接口上面用注释方式写SQL语句,则可以不需要配置文件-->

        <!--<mapper class="mapper.IUserMapper"></mapper>-->

    </mappers>

</configuration>

 

二、案例

前提:

1、准备jdbc.properties文件(内容为jdbc配置);2、以及数据库内容;3、数据库驱动jar包;4、mybaties的jar包;5、Juntil单元测试jar包

1、mybatis-config.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>

    <!--路径规则:包名/文件名-->

    <properties resource="configs/jdbc.properties"></properties>

    <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="configs/jobs.xml"/>

    </mappers>

</configuration>

2、Jobs.java

普通Javabean

3、Jobs.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="mapper.JobsMapper">

<!--路径规则:包路径-->

    <select id="selectAll" resultType="pojo.Jobs">

    select * from jobs where id = #{id}

    </select>

</mapper>

4、JobsMapper.java

package mapper;

import pojo.Jobs;

import java.util.List;

public interface JobsMapper {

    public List<Jobs> selectAll(Jobs jobs);

}

5、testJobs.java

public class TestJobs {

    SqlSession sqlSession=null;

    @Before

    public void myinit(){

        //相对路径,packages显示

        String resource = "configs/mybatis-config.xml";

        try {

            InputStream inputStream = Resources.getResourceAsStream(resource);

            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

            sqlSession = sqlSessionFactory.openSession(true);

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

    @Test

    public void test(){

        JobsMapper jobsMapper = sqlSession.getMapper(JobsMapper.class);

        Jobs jobs = new Jobs();

        jobs.setId(1);

        List<Jobs> jobss = jobsMapper.selectAll(jobs);

        System.out.println(jobss);

    }

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值