SSM框架中的Mapper.xml文件中的增删改查等操作

Posted 挨踢小子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSM框架中的Mapper.xml文件中的增删改查等操作相关的知识,希望对你有一定的参考价值。

挨踢小子陪您一起成长!



—start—


<?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标签开始,由/mapper结束,可以把它想成一个空间,是映射文件

属性namespace:空间名,主要在代理中使用。这个namespace是唯一的。

这里把mapper标签和接口联系在一起了,namespace=写接口路径,映射文件要和接口在同一目录下

 -->

<mapper namespace="com.dao.UserinfoDAO">

    <!-- =============映射关系标签=============

    属性type:写po类的包名类名,由于之前定义了po类的别名,这里就写这个别名

    属性id:是这个映射标签的唯一标识

    id标签是查询结果集中的唯一标识

    属性column:查询出来的列名

    属性property:是po类里所指定的列名

    通常会在原列名后面加下划线,这是固定的,这里就是id后面_

     -->

    <resultMap type="com.po.UserinfoPO" id="userinfoMap">

        <result column="userid" property="userid"/>

        <result column="loginname" property="loginname"/>

        <result column="loginpass" property="loginpass"/>

        <result column="username" property="username"/>

        <result column="upower" property="upower"/>

        <result column="birthday" property="birthday"/>

        <result column="sex" property="sex"/>

    </resultMap>

    <!-- ==================定义sql片段==============

    sql:是sql片段标签属性id是该片段的唯一标识 -->

    <sql id="zd">

        userid,loginname,loginpass,username,upower,birthday,sex

    </sql>

    <!-- 增删改查标签里的id:一定要和接口里对应的方法名一致,

         resultMap输出类型里写映射标签里的id 

         parameterType:输入类型,规范输入数据类型,指明查询时使用的参数类型-->

    <!-- 验证登录 -->

    <select id="login" resultMap="userinfoMap" parameterType="com.po.UserinfoPO">    

        <!-- 用include标签引入sql片段,refid写定义sql片段的id,where标签不要写在片段里 -->

        select <include refid="zd"/> from userinfo

        <where>            

                loginname=#{loginname} and loginpass=#{loginpass}

        </where>

    </select>

    

    <!-- 查询用户列表 -->

    <select id="userList" resultMap="userinfoMap" parameterType="com.po.UserinfoPO">

        <!-- 用include标签引入sql片段,refid写定义sql片段的id,where标签不要写在片段里 -->

        select <include refid="zd"/> from userinfo

    </select>

    

    <!-- 查询修改用户信息的id -->

    <select id="updateid" resultMap="userinfoMap" parameterType="com.po.UserinfoPO">

        <!-- 用include标签引入sql片段,refid写定义sql片段的id,where标签不要写在片段里 -->

        select <include refid="zd"/> from userinfo

        <where>userid=#{userid}</where>

    </select>

    

    <!-- 修改用户信息 -->

     <update id="update" parameterType="com.po.UserinfoPO">

         update userinfo 

         set loginname=#{loginname},loginpass=#{loginpass},username=#{username},

             upower=#{upower},birthday=#{birthday},sex=#{sex}

         where userid=#{userid}     

     </update>

     

    <!-- 添加用户信息 -->

    <insert id="insert" parameterType="com.po.UserinfoPO">

        insert into userinfo(<include refid="zd"/>) 

        values

        (#{userid},#{loginname},#{loginpass},#{username},#{upower},#{birthday},#{sex})

    </insert>

        

    <!-- 增删改查标签里的id:一定要和接口里对应的方法名一致 -->

    <delete id="delete" parameterType="int">

        delete from userinfo where userid=#{userid}

    </delete>

    

    <!-- 根据用户名模糊查询,根据权限查询 -->

    <select id="select" resultMap="userinfoMap" parameterType="java.util.Map">

        <!-- 用include标签引入sql片段,refid写定义sql片段的id,where标签不要写在片段里 -->

        select <include refid="zd"/> from userinfo

        <!-- 当页面没有输入用户名和选择权限,就让它的条件永远为真,就变成全查询了 -->

        <where>

            <if test="username == null and username = '' and upower == -1">

                and 1=1

            </if>

            <if test="username != null and username !=''">

                and username LIKE '%${username}%' 

            </if>        

            <if test="upower != -1">

                and upower=#{upower} 

            </if>            

        </where>

    </select>

</mapper>


—end—


关注【挨踢小子】,让我们一起成长


适合分享 | 值得留言



以上是关于SSM框架中的Mapper.xml文件中的增删改查等操作的主要内容,如果未能解决你的问题,请参考以下文章

基于maven+ssm的增删改查之使用mybatis逆向工程生成相关文件

使用纯Java配置SSM框架实现基本的增删改查(不使用spring XML)

mybatis 怎么调用mapper.xml中的方法

[java]整合SSM框架实现简单的增删改查

[java]整合SSM框架实现简单的增删改查

ssm表格形式的增删改查点击修改按钮获取修改时间