mybatis配置一四引入映射器的方法

本文介绍MyBatis中映射器的几种引入方式,包括通过文件路径、包名、类注册以及URL地址引入,并展示了如何定义接口及其XML配置文件。

      映射器是mybatis最复杂,最核心的组件,这篇主要讲解怎么引入映射器。

     在前面写过映射器定义命名空间的方法,命名空间对应的是一个接口的全路径,而不是实现类,比如下面定义的一个接口:

    

package org.mybatis.mapper;

import java.util.List;

import org.mybatis.pojo.Role;

//接口
public interface RoleMapper {
	// 通过id获取角色
	public Role getRole(Long id);

	// 插入角色
	public int insertRole(Role role);

	// 通过id删除角色
	public int deleteRole(Long id);

	// 通过角色名字,模糊查找
	public List<Role> findRole(String roleName);
}


     其次给出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="org.mybatis.mapper.RoleMapper">
   
   <resultMap type="role" id="roleMap">
     <!--定义结果类型转换标识,才能使用类型转换器  -->
     <id column = "id" property = "id" javaType ="long" jdbcType = "BIGINT"/>
     <result column ="role_name" property = "roleName" javaType = "string" jdbcType = "VARCHAR"/>
     <result column = "note" property = "note" typeHandler ="org.mybatis.handler.MyStringTypeHandler"/>
   </resultMap>

	<!-- 根据角色id查找角色 -->
	<select id="getRole" parameterType="long" resultMap="roleMap">
		select id,role_name as roleName,note from role where id = #{id}
	</select>
	<!-- 模糊匹配查找角色 -->
	<select id="findRole" parameterType = "string" resultMap="roleMap">
	  select id,role_name,note from role
	  where role_name like concat('%',#{roleName javaType=string, jdbcType=VARCHAR, typeHandler=org.mybatis.handler.MyStringTypeHandler},'%')
	</select>
	<!-- 插入角色 -->
	<insert id="insertRole" parameterType="role">
		insert into role(role_name,note) values(#{roleName},#{note})
	</insert>
	<!-- 删除角色 -->
	<delete id="deleteRole" parameterType="long">
	delete from role where id = #{id}
	</delete>
</mapper>


    namespace="org.mybatis.mapper.RoleMapper"是接口的全路径。

    引入映射器的方法一般有下面几种:

    1,用文件路径引入映射器,代码清单如下所示:

       

<mappers>
		<mapper resource="org/mybatis/mapper/RoleMapper.xml" />
		<mapper resource="org/mybatis/mapper/userMapper.xml" />
	</mappers>

      2,用包名引入映射器,代码如下:

     

<mappers>
		<package name="org.mybatis.mapper"/>
	</mappers>

        3,用类注册引入映射器,代码如下:

    

<mappers>
		<mapper class="org.mybatis.mapper.RoleMapper"/>
		<mapper class="org.mybatis.mapper.UserMapper"/>
	</mappers>

        4,用userMapper.xml引入映射器,代码如下

        

<mappers>
		<mapper url="E:\webworkspace\MyEclipse 2016\MybatisStudy2\src\org\mybatis\mapper\RoleMapper.xml"/>
	</mappers>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值