Mybatis环境搭建与测试

mybatis测试

环境搭建
1.创建maven工程导入坐标

         <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
        </dependency>

2.创建实体类(与数据库对应)和Dao接口
Dao接口代码

public interface IUserDao { 
    //查询所有操作
    List<User> findAll();

    //注解
    //@Select( "select * from user")
    //List<User> findAll();
}

3.创建Mybatis主配置文件

<!-- mybatis的主配置文件 -->
<configuration>
    <!-- 配置环境 -->
    <environments default="development">
        <!-- 配置mysql 的环境 -->
        <environment id="development">
            <!-- 配置事务的类型 -->
            <transactionManager type="JDBC"></transactionManager>

            <!-- 配置数据源 (连接池) -->
            <dataSource type="POOLED">
                <!-- 配置数据库的四个基本信息 -->
                <!-- 链接数据库的信息 ,有了它就能创建Connection对象-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3308/mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>

    <!-- 指定映射配置文件的位置,映射配置文件指的是每个dao 独立的配置文件 -->
    <!-- 有了它就有了映射配置信息-->
    <mappers>
        <mapper resource="com/ittest/dao/IUserDao.xml"/>
    </mappers>
</configuration>

4.创建映射配置文件(即与上文中Dao接口对应的配置文件)


<!--接口的权限定类名-->
<mapper namespace="com.ittest.dao.IUserDao">
<!--    配置查询所有-->
<!--    有了它就有了执行的sql语句  就可以获取PrepareSatement-->
<!--    此配置中还有封装实体类的权限定类名-->
    <select id="findAll" resultType="com.ittest.domain.User">
        select * from user
    </select>

</mapper>

5.写个测试类测试一下

public class MybatisTest {

    public static void main(String[] args)throws Exception{
//        1.读取配置文件
        InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
// 绝对路径:D:/xxx/xxx.xml  不用
// 相对路径:src/java/main/xxx.xml 不用

//        2.创建SqlSessionFactory工厂
        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
        SqlSessionFactory factory =builder.build(in);
//        3.使用工厂生产SqlSession对象
        SqlSession session = factory.openSession();
//        4.使用SqlSession创建dao接口的代理对象
        IUserDao userDao =session.getMapper(IUserDao.class);
//        5.使用代理对象执行方法
        List<User> users =userDao.findAll();
        for (User user:users){
            System.out.println(user);
        }
//        6.释放资源
        in.close();
    }
}

说明:
mybatis中把持久层的操作接口名称和映射文件也叫做:Mapper

mybatis的映射配置文件(也就是mapper文件)位置必须和对应的 Dao接口的包结构相同
映射配置文件的mapper标签的namespace属性必须是Dao接口的全限定类名
映射配置文件的操作配置(select insert update 等)id属性的取值必须是dao接口的方法名

(在开发中不用再写Dao接口的实现类,由mybatis实现)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值