Mybatis环境搭建

4 篇文章 0 订阅
3 篇文章 0 订阅

Mybatis环境搭建

在开始之前,先看一下官网对Mybatis的定义 : MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

现在我们开始搭建Mybatis环境,简单的对数据库进行操作

1.创建maven工程
在这里插入图片描述
在这里插入图片描述

如图,一直点击下一步,创建maven工程

2.配置pom.xml

配置依赖项标签

<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
 <packaging>jar</packaging>

最后配置完成后如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.woqiyounai</groupId>
<artifactId>BuildEnvironment</artifactId>
<version>1.0-SNAPSHOT</version>

<dependencies>
   <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.26</version>
   </dependency>

   <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>4.10</version>
   </dependency>

   <dependency>
       <groupId>log4j</groupId>
       <artifactId>log4j</artifactId>
       <version>1.2.12</version>
   </dependency>
</dependencies>
</project>

至此pom.xml配置完成

3.创建对象及接口,准备测试

数据库如图
在这里插入图片描述
User对象如图
在这里插入图片描述
UserDao如图
在这里插入图片描述
目录结构如图
在这里插入图片描述

4.创建UserDao.xml,配置SqlMapConfig.xml\

创建这俩个文件后的目录结构操作如图
在这里插入图片描述
在SqlMapConfig.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">

配置SqlMapConfig.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>
<!--配置数据库文件-->
<environments default="mysql">
   <environment id="mysql">
       <transactionManager type="JDBC"></transactionManager>
       <dataSource type="POOLED">
           <!--配置连接数据库的基本信息-->
           <property name="driver" value="com.mysql.jdbc.Driver"/>
           <property name="url" value="jdbc:mysql://localhost:3306/db"/>
           <property name="username" value="root"/>
           <property name="password" value="root"/>
       </dataSource>
   </environment>
</environments>

<!--映射到的路径-->
<mappers>
   <mapper resource="com/Rdao/UserDao.xml"></mapper>
</mappers>
</configuration>

5.配置UserDao.xml

在UserDao.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">

配置UserDao.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">
<!--namespace这里写要映射的接口路径-->
<mapper namespace="com.dao.UserDao">
<!--resultType这里写最后要封装成的类型-->
<select id="findAll" resultType="com.domian.User">
   <!--select标签里面写查询的sql语句-->
   SELECT * FROM user;
</select>
</mapper>

到此环境搭建完毕

6.测试

import com.dao.UserDao;
import com.domian.User;
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 org.junit.Test;

import javax.annotation.Resource;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class TestMybatis {
@Test
public void testFindAll() throws IOException {
   //创建输入流
   InputStream is = Resources.getResourceAsStream("SqlMapConfig.xml");
   //创建工厂
   SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
   SqlSessionFactory factory = builder.build(is);
   //创建SqlSession对象,并通过反射创对象
   SqlSession session = factory.openSession();
   UserDao userDao = session.getMapper(UserDao.class);
   //进行操作
   List<User> users = userDao.findAll();
   for (User user:users) {
       System.out.println(user);
   }
   //关闭资源
   session.close();
   is.close();
}
}

结果如图
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值