MyBatis & Spring boot & idea

MyBatis

MyBatis面向对象接口编程的两个一致

  1. 映射文件的namespace要和mapper接口的全类名保持一致
  2. 映射文件中sQL语句的id要和mapper接口中的方法名一致

MyBatis核心配置文件标签顺序

在这里插入图片描述

MyBatis获取参数的两种方法

推荐使用:#{}
在这里插入图片描述

MyBatis开启驼峰命名

第一种方法(推荐)
在这里插入图片描述

第二种方法
在这里插入图片描述

注解+配置混合版

在这里插入图片描述

resultType & resultMap

resultType:设置默认的映射关系,当数据库字段名与类型和实体类的名和属性一致时使用
resultMap :设置自定义的映射关系,当数据库字段名与类型和实体类的名和属性不一致时使用,当一对多,多对一时使用
在这里插入图片描述

获取参数的各种情况

在这里插入图片描述
在这里插入图片描述
使用@param标识参数

  • 可以通过@Param注解标识mapper接口中的方法参数,此时,会将这些参数放在map集合中
    1. 以@Param注解的value属性值为键,以参数为值;
    2. 以param1,param2…为键,以参数为值;
  • 只需要通过${}和#{}访问map集合的键就可以获取相对应的值,注意${}需要手动加单引号
<!--User CheckLoginByParam(@Param("username") String username, @Param("password") String password);-->
    <select id="CheckLoginByParam" resultType="User">
        select * from t_user where username = #{username} and password = #{password}
    </select>
@Test
public void checkLoginByParam() {
    
    
	SqlSession sqlSession = SqlSessionUtils.getSqlSession();
	ParameterMapper mapper = sqlSession.getMapper(ParameterMapper.class);
	mapper.CheckLoginByParam("admin","123456");
}

总结

  • 建议分成两种情况进行处理
    1. 实体类类型的参数
    2. 使用@Param标识参数

spring boot + Mybatis

spring boot + Mybatis流程

Controller-----调----->Servce-------调------->mapper

返回json数据注解

在这里插入图片描述

Spring boot+MyBatis 全类名起别名 (resultType)

默认别名为实体类名

<select id="test" resultType="com.common.pojo.User" parameterType="int">
   
</select>

配置文件中设置

扫描二维码关注公众号,回复: 14782723 查看本文章
  mybatis:
     type-aliases-package:com.common.pojo

就都可以直接用类名来代替全限定名

<select id="test" resultType="User" parameterType="int">
   
</select>

idea

idea配置文件模

在这里插入图片描述
在这里插入图片描述
创建文件如下
在这里插入图片描述
其他文件模板

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_48652345/article/details/123403136