当前位置: 首页 > 编程笔记 >

详解Mybatis(五)Mapper接口

龙霖
2023-03-14
本文向大家介绍详解Mybatis(五)Mapper接口,包括了详解Mybatis(五)Mapper接口的使用技巧和注意事项,需要的朋友参考一下

(1)Mapper接口和原理

Mapper组建

  1. 1、Mapper文件和Mapper接口应该放在同一个接口中
  2. 2、Mapper文件中的namespace应该设置为Mapper接口的全限定名称
  3. 3、Mapper文件中的操作元素ID对应Mapper接口的方法名称

Mapper原理
动态代理

(2)配置文件

userMapper.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">
<!-- 为这个mapper指定一个唯一的namespace,namespace的值习惯上设置成包名+sql映射文件名,这样就能够保证namespace的值是唯一的
例如namespace="me.gacl.mapping.userMapper"就是me.gacl.mapping(包名)+userMapper(userMapper.xml文件去除后缀)
 -->
<mapper namespace="Mybatis.domain.Mapper.UserMapper">

  <resultMap type="User" id="BaseResultMap">
  	<result column="t_id" property="id"/>
  	<result column="t_name" property="name"/>
  	<result column="t_salary" property="salary"/>
  </resultMap>
  
  <!-- 保存操作 -->
  <insert id="save" useGeneratedKeys="true" keyProperty="id">
	  INSERT INTO t_user (name , salary) 	VALUES (#{name},#{salary}) 	
  </insert>
  
  <!-- 更改操作 -->
  <update id="update">
  	update t_user where name=#{name},salary=#{salary} where id=#{id}
  </update>
  
  <!-- 删除操作 -->
  <delete id="delete" >
  	delete from t_user where id=#{id}
  </delete>
  
  <!-- 查询单个操作 --> 
  <select id="select" parameterMap="java.lang.Long" resultType="Mybatis.domain.User">
    select * from t_user where id = #{id}
  </select>

	<!-- 查询多个操作 -->
	<select id="selectAll" resultType="User">
		select id,name,salary from t_user
	</select>  
</mapper>

UserMapper.java

import java.util.List;

import Mybatis.domain.User;

public interface UserMapper {
	void save(User u);
	
	void update(User u);
	
	void delete(Long id);
	
	User select(User u);
	
	List<User> selectAll();
}

以上所述是小编给大家介绍的Mybatis Mapper接口详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 本文向大家介绍MyBatis Mapper代理使用方法详解,包括了MyBatis Mapper代理使用方法详解的使用技巧和注意事项,需要的朋友参考一下 MyBatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和J

  • 1. 前言 本小节,我们将一起学习 MyBatis mapper。 在上一节中我们以 JDBC 的方式使用了 MyBatis,但在实际应用中是不会选择这种方式来执行 SQL 的,MyBatis提供了 mapper 这种优雅且易维护的方式来帮助我们更好地去使用 SQL。 2. 定义 慕课解释:mapper 是 Java 方法和 SQL 语句之间的桥梁。 Java 接口方法与 SQL 语句以及 map

  • 项目地址:https://mapper.mybatis.io 介绍 这是一个不需要任何配置就可以直接使用的通用 Mapper,通过简单的学习就可以直接在项目中使用。 1.1 主要目标 1. 开箱即用,无需任何配置,继承基类 Mapper 即可获得大量通用方法; 2. 随心所欲,通过复制粘贴的方式可以组建自己的基类 Mapper; 3. 全面贴心,提供 Service 层的封装方便业务使用和理解 M

  • Mybatis-mapper Mapper 继承 CrudMapper 后,无需编写 mapper.xml 文件,即可获得 CRUD 功能 MyBatis 的 sql 默认加载规则 MyBatis通过xml、SqlProvider两种方式获取sql,xml的优先级高于SqlProvider,且xml、SqlProvider中的sql不允许出现同名 mapper 调整后的 sql 加载规则 sql的

  • 本文向大家介绍Mybatis中Mapper映射文件使用详解,包括了Mybatis中Mapper映射文件使用详解的使用技巧和注意事项,需要的朋友参考一下 紧接上文所述,在这篇文章中我将对Mapper映射文件进行详细的说明。 Mapper映射文件是一个xml格式文件,必须遵循相应的dtd文件规范,如ibatis-3-mapper.dtd。我们先大体上看看支持哪些配置?如下所示,从Eclipse里截了个

  • 本文向大家介绍Mybatis mapper动态代理的原理解析,包括了Mybatis mapper动态代理的原理解析的使用技巧和注意事项,需要的朋友参考一下 前言 在开始动态代理的原理讲解以前,我们先看一下集成mybatis以后dao层不使用动态代理以及使用动态代理的两种实现方式,通过对比我们自己实现dao层接口以及mybatis动态代理可以更加直观的展现出mybatis动态代理替我们所做的工作,有