映射器

映射器是由Java接口和XML文件(或注解)共同组成的,作用如下:

①   定义参数类型。

②   描述缓存。

③   描述SQL语句。

④   定义查询结果和POJO的映射关系。

以下用两种方式进行Mapper的实现。

1、 XML文件配置方式实现Mapper

第一步:给出Java接口。

package com.mapper;

import com.entity.User;

public interface UserMapper(){

         public User getUser(int id);

}

第二步:给出一个关于User的映射文件。

<?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=”com.mapper.UserMapper”>

<!—此处是说明,映射所对应的Java类是哪个 -->

         <select id=”getUser” parameterType=”int” resultType=”user”>

<!—此处的id属性值需要与上一步的UserMapper的方法名一致 -->

<!—parameterType表示传进值的类型,resultType表示输出值的类型,此处的user是之前在mybatis-config.xml文件中已经说明过的了,是User类的别名-->

                   select id, username from user_info where id=#{id}

<!-- 此处的id属性的值需要与POJO中的属性名称对应-->

         </select>

</mapper>

第三步,使用Mybatis进行查询。

//获取映射器Mapper

UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

User user = userMapper.getUser(1);

System.out.println(user.getUserName());

2、  Java注解方式实现Mapper

使用Java注解方式实现映射关系并不难,只需要在接口中使用Java注解并注入SQL即可。但是如果需要的SQL比较复杂,用注解的方式就会比较吃力(因为SQL需要整合各种注解)。

package com.mapper;

import org.apache.ibatis.annotations.Select;

import com.entity.User;

public interface UserMapper2{

         @Select(value=”select id, username from user_info where id=#{id}”)

         public User getUser(int id);

}

(八)mybatis之映射器的更多相关文章

  1. (十一)mybatis之映射器(select)

    映射器 映射器的主要元素有八种: 元素名称 描述 select 查询语句,可自定义参数 insert 插入语句,执行后返回插入的条数 update 更新语句,执行后返回更新的条数 delete 删除语 ...

  2. 深入浅出mybatis之映射器

    目录 概述 XML映射器 定义xml映射器 配置xml映射器 使用xml映射器 接口映射器 定义接口映射器 配置接口映射器 使用接口映射器 总结与对比 概述 映射器是MyBatis中最核心的组件之一, ...

  3. MyBatis中映射器Mapper概述

    MyBatis真正强大之处在于它的映射器.因为它异常强大并且编写相对简单,不仅比传统编写SQL语句做的更好并且能节省将近95%的代码量 XML中顶级元素汇总 cache: 给定命名空间的缓存配置 ca ...

  4. Mybatis中映射器实现方式总结

    一种是通过XML文件方式(由一个java接口和一个XML文件构成) RoleMapper rm = session.getMapper(RoleMapper.class); List<Role& ...

  5. 第六章 mybatis注入映射器

    为了代替手工使用 SqlSessionDaoSupport 或 SqlSessionTemplate 编写数据访问对象 (DAO)的代码,MyBatis-Spring 提供了一个动态代理的实现:Map ...

  6. mybatis学习——映射器(mappers)

    在定义 SQL 映射语句之前,我们需要告诉 MyBatis 到哪里去找到这些语句. 在自动查找资源方面,Java 并没有提供一个很好的解决方案,所以最好的办法是直接告诉 MyBatis 到哪里去找映射 ...

  7. Mybatis结果映射器resultMap的基本用法

    <mapper namespace="全局唯一的名称空间"> <resultMap id="本namespace下唯一" type=" ...

  8. mybatis映射器配置细则

    前面三篇博客我们已经多次涉及到映射器的使用了,增删查基本上都用过一遍了,但是之前我们只是介绍了基本用法,实际上mybatis中映射器可以配置的地方还是非常多,今天我们就先来看看映射器还有哪些需要配置的 ...

  9. 【长文】Spring学习笔记(七):Mybatis映射器+动态SQL

    1 概述 本文主要讲述了如何使用MyBatis中的映射器以及动态SQL的配置. 2 MyBatis配置文件概览 MyBatis配置文件主要属性如下: <settings>:相关设置,键值对 ...

随机推荐

  1. PowerDesigner:导出SQL脚本以及问题解决

    在PowerDesigner中点击DataBase  -----------> Generate Datebase  -----(可以点击Preview预览sql语句)------->设置 ...

  2. dubbo项目中包的依赖说明

    依赖 (+) (#) 必需依赖 JDK1.5+ 理论上Dubbo可以只依赖JDK,不依赖于任何三方库运行,只需配置使用JDK相关实现策略. 缺省依赖 通过mvn dependency:tree > ...

  3. C - Bear and Five Cards

    Description A little bear Limak plays a game. He has five cards. There is one number written on each ...

  4. c/c++面试45-50之字符串

    45 使用库函数将数字转换为字符串,下面是常用库函数 (1) itoa():将整型转换为字符串 (2)ltoa():将长整形转换为字符串 (3)gcvt():将浮点转换为字符串 46 不使用库函数将整 ...

  5. CCF 201509-3 模板生成系统 (STL+模拟)

    问题描述 成成最近在搭建一个网站,其中一些页面的部分内容来自数据库中不同的数据记录,但是页面的基本结构是相同的.例如,对于展示用户信息的页面,当用户为 Tom 时,网页的源代码是 而当用户为 Jerr ...

  6. Lightoj1028 【数学-乘法原理】

    题意: 给你一个数,问你有多少种进制对n的表示,存在后导零: 比如30:用3进制表示: 1010 思路: 我们发现,就是一个数的约数就能对n表示最后存在后导零: 计算[2 ,n]之间的n的约数个数. ...

  7. Telnet 命令格式

    Telnet host 端口 如:Telnet 127.0.0.1 11211 执行命令进入后 ctr +] ,打开回显,并回车即可

  8. VR相关学习资源

    ptgui全景图制作工具 http://blog.csdn.net/xoyojank mems陀螺误差补偿的算法研究 http://www.docin.com/p-619540171.html 极客工 ...

  9. jzoj5989. 【北大2019冬令营模拟2019.1.6】Forest (set)

    题面 题解 为了一点小细节卡了一个下午--我都怕我瞎用set把电脑搞炸-- 观察一次\(1\)操作会造成什么影响,比如说把\(A[i]\)从\(x\)改成\(y\): \(D[x]\)会\(-1\), ...

  10. [Xcode 实际操作]一、博主领进门-(2)第一个工程项目:将导入的图片显示到屏幕上

    目录:[Swift]Xcode实际操作 本文将演示创建第一个工程项目. 在项目导航区,鼠标右键[Assets.xcassets]资源文件夹. 隔壁右侧区域左下角点击[+],打开资源文件管理菜单-> ...