<?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">
<!--命名空间 对SQL进行隔离-->
<mapper namespace="test">
<!--在映射文件中配置SQL-->
<!--id:标识映射文件中的SQL称为statement的id
将来SQL语句会封装到mapperStatement中-->
<!--parameterType指定输入参数类型 resultType表示sql输出所映射的Java对象类型
select指定resultType表示将单条记录映射成的Java对象-->
<select id="findUserById" parameterType="int" resultType="wh.h.mybatis.domain.User">
<!--#{}标识占位符 #{id}其中的id表示接收输入的参数 参数名称为id
如果输入的参数是简单类型,#{}中的参数名可以任意
-->
select *from users where id=#{id}
</select>
<!--${}表示拼接SQL,将接受到的参数不加任何修饰拼接在SQL中。
但是可能会出现SQL注入。${value}接收的参数是简单类型则大括号里面必须是value-->
<select id="findUserByName" parameterType="java.lang.String" resultType="wh.h.mybatis.domain.User">
select *from users where username like '%${value}%'
</select>
<!--parameterType:指定的输入参数类型是pojo(JavaBean对象)
#{}中指定pojo属性名,mybatis通过ONGL获取对象的属性值-->
<insert id="insertUser" parameterType="wh.h.mybatis.domain.User">
insert into users(username,password) values (#{username},#{password})
</insert>
</mapper>
版权声明:本文为An_person原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。