注册——持久层

3.1 先编写mapper接口:

创建一个mapper文件下面再创建一个UserMapper接

 

 

 

 

然后再编写sql语句

3.2在整体的项目中配置一个MapperScan("com.cy.store.mapper")
3.3定义xml映射文件,与接口做相应的关联

1.映射文件必须放在resource文件下,创建一个mapper,然后再写Mapper映射

2.映射文件和接口名称保持一致

 

 

<?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.cy.store.mapper.UserMapper">
   
</mapper>

insert

<insert id="insert" useGeneratedKeys="true" keyProperty="uid">
      insert into t_user(
      username,password,salt,
phone,email,gender,avatar,is_delete,created_user,created_time,modified_user,modified_time
      )value (#{username},#{password},#{salt},
#{phone},#{email},#{gender},#{avatar},#{isDelete},#{createdUser},#{createdTime},#{modifiedUser},#{modifiedTime})
   </insert>

有几个注意事项:

1.mybaits并不能直接实现某个字段自增,要先开启一下用useGeneratedKeys,然后keyProperty是设置他的值

2.value中(#{username})

3.最后不能有,;

 

select

<!--自定义映射规则-->
<resultMap id="UserEntityMap" type="com.cy.store.entity.User">
   <!--定义的时候主键是不能少的-->
   <id column="uid" property="uid"></id>
   <result column="is_delete" property="isDelete"></result>
   <result column="created_user" property="createdUser"></result>
   <result column="created_time" property="createdTime"></result>
   <result column="modified_user" property="modifiedUser"></result>
   <result column="modified_time" property="modifiedTime"></result>
</resultMap>

<!--
   resultType:要求sql中的名字和User中的名字一一对应的
   resultMap:自定义映射规则
   -->
   <select id="findByUsername" resultMap="UserEntityMap">
      select * from t_user where username = #{username}
   </select>
3.4单元测试!!!!

先在test中建包按照上面

 

 

 

package com.cy.store.mapper;


import com.cy.store.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
//不用打包
@SpringBootTest
//启动test
@RunWith(SpringRunner.class)
public class UserMapperTests {

   @Autowired
   private UserMapper userMapper;
//嗨害
   @Test
   public void insert()
  {
       User user = new User();
       user.setUsername("ss");
       user.setPassword("123");
       Integer insert = userMapper.insert(user);

       System.out.println(insert);
  }

   @Test
   public void findByUsername()
  {
       User ss = userMapper.findByUsername("ss");

       System.out.println(ss);
  }
}

 

posted @   爽爽子的秃头生活  阅读(161)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示