JavaWeb学习程序员我爱编程

mapper.xml的使用

2018-05-26  本文已影响27人  幻影翔

<?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="mapper.UserMapper">
注意:namesqace命名空间,为了对sql语句进行隔离。方便管理,mapper开发dao方式,使用namespace有特俗作用
mapper代理开发时,namespace指定为mapper接口的全限代理名

id:唯一标识 一个statement
#{}:表示 一个占位符,如果#{}中传入简单类型的参数,#{}中的名称随意
parameterType:输入 参数的类型,通过#{}接收parameterType输入 的参数
resultType:输出结果 类型,不管返回是多条还是单条,指定单条记录映射的pojo类型

查询用户

<select id="findUserById" parameterType="int" resultType="user">
            select * from user where id=#{id}
 </select>

<select id="findUserByname" parameterType="java.lang.String" resultType="pojo.User">
          select * from user where username like concat('%',#{value},'%')
</select>

添加用户

parameterType:输入 参数的类型,User对象 包括 username,birthday,sex,address
#{}接收pojo数据,可以使用OGNL解析出pojo的属性值
#{username}表示从parameterType中获取pojo的属性值
selectKey:用于进行主键返回,定义了获取主键值的sql
order:设置selectKey中sql执行的顺序,相对于insert语句来说
keyProperty:将主键值设置到哪个属性
resultType:select LAST_INSERT_ID()的结果 类型

<insert id="InserUser" parameterType="pojo.User" >
    <selectKey keyProperty="id" order="AFTER" resultType="int">
        select LAST_INSERT_ID()
    </selectKey>
    insert into user(username,sex,birthday,address) values(#{username},#{sex},#{birthday},#{address})
</insert>

删除用户

<delete id="deleteUser" parameterType="int">
     delete from user where id=#{id}
</delete>

用户更新

要求:传入的user对象中包括 id属性值

<update id="updateUser" parameterType="pojo.User" >
     update user set
     username=#{username},sex=#{sex},birthday=#{birthday},address=#{address}
     where id=#{id}
</update>
上一篇 下一篇

猜你喜欢

热点阅读