映射器
映射器是由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); }
原文地址:https://www.cnblogs.com/NYfor2018/p/9102386.html
时间: 2024-11-06 07:47:36