Maven项目中使用Mybatis框架

一 .准备一个空的Maven项目。

二. 配置pom文件,引入相关依赖。

       <!--版本建议换成提示的更安全的版本-->
        <!-- mybatis插件 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.6</version>
        </dependency>
        <!--mysql相关依赖  -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.33</version>
        </dependency>
        <!--单元测试依赖  -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.1</version>
            <scope>test</scope>
        </dependency>
        <!--lombok插件-->
        <!--写实体类时方便生成相关的get/set/构造器等方法-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.18</version>
        </dependency>
    </dependencies>

三. mybatis配置文件编写。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
     <!--空着,待会儿补充 -->
    </settings>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/数据库名字"/>
                <property name="username" value="用户名"/>
                <property name="password" value="密码"/>
            </dataSource>

        </environment>
    </environments>

    <mappers>
<!--空着,待会儿补充 -->

</mappers>

</configuration>

四.这里按照实体类-Mapper-Mapper.xml的顺序写,并非固定的。

1.写一个实体类

1 @Data
2 public class Owner {
3     private Integer id;//业主id
4     private String  OwnerName;//业主姓名
5     private String  OwnerSex;//业主性别
6     private String  OwnerTel;//业主电话
7 }

2.编写OwnerMapper接口

1 public interface OwnerMapper {
2     //写一个作为例子
3     //添加一个业主
4     void addAOwner(Owner Owner);
5 }

3.编写OwnerMapper.xml文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace写你刚刚编写的mapper接口,类似于之前的实现这个接口-->
<mapper namespace="com.wsl.wuye.mapper.OwnerMapper">

  <!-- 对应接口里的方法名字,添加namespace后可以点击接口里的提示自动在这里面创建,类似于自动生成实现接口方法-->
    <insert id="addAOwner">
        insert into owner(owner_name,owner_sex,owner_tel)
        values (#{ownerName},#{ownerSex},#{ownerTel})
    </insert>

</mapper>

五.将xml文件添加进mybatis的配置文件

<!-- 现在你可以在刚刚空着的部分添加以下配置-->

 <settings>
     <!-- 解决实体类的属性跟数据库字段名的映射问题,下划线会帮你对映驼峰命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
       <!-- 内置日志,配置可以查看你的sql语句,你也可以使用其他的日志框架-->
 <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

<mappers>
        <!-- 刚刚你编写xml文件的路径 写了框架才能帮你找到-->
        <mapper resource="mappers/OwnerMapper.xml"/>
    </mappers>

六.编写测试类,测试一下上面的方法

 1 public class OwnerMapperTest {
 2     private SqlSession sqlSession;
 3     private OwnerMapper mapper;
 4 
 5     @Before //表示在测试方法执行前执行
 6     public void init() {
 7         //1.获取配置文件mybatis-config.xml的流对象
 8         InputStream stream;
 9         try {
//注意别导错包了,是apache下那个
10 stream = Resources.getResourceAsStream("mybatis-config.xml"); 11 } catch (IOException e) { 12 throw new RuntimeException(e); 13 } 14 15 //2. 获取一个SqlSessionFactory对象 16 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(stream); 17 18 //3.通过工厂类SqlSessionFactory生成SqlSession对象 19 sqlSession = sqlSessionFactory.openSession(); 20 21 //4.获取OwnerMapper的代理 22 mapper = sqlSession.getMapper(OwnerMapper.class); 23 } 24 @After //测试方法后执行 25 public void commit() { 26 //6.提交事务 27 sqlSession.commit(); 28 } 29 @Test 30 public void testAddAOwner() { 31 //5.测试添加一个业主对象的方法 32 Owner m = new Owner(); 33 m.setId(50); 34 m.setOwnerName("齐虎"); 35 m.setOwnerSex("男"); 36 m.setOwnerTel("15665457345"); 37 mapper.addAOwner(m); 38 } 39 }

总结:这里已经算是成功完成了一个插入操作,想进行其他的操作只需在mapper接口里添加方法,再在对应的xml文件里写sql语句就行了。注意的是有的时候你不止一个实体类,这时候你编写新的mapper接口和新的xml文件后一定不要忘记在mybatis的配置文件还要配置一下(上面第五点)。下面看下项目的一般结构。

 

热门相关:有个人爱你很久   神算大小姐   金粉   锦庭娇   裙上之臣