Skip to content

3. 通用的增删改查(CRUD)

使用<select><insert><update><delete> 分别执行 查询、新增、修改、删除的sql

  • insert、update、delete三种sql不用特殊别名,返回类型,默认返回影响行数,整形。

  • select需要指定返回类型, resultType 表示单条结果集映射的类型

    • 实体VO、Map、基础类型
  • 当需要参数的时候 parameType,表示需要的参数类型

    • 实体VO、Map、基础类型(Integer、String)

3.1 查询sql语句

使用select标签表示执行查询类型的sql

  • id:给MapperdStatement命名, 配合namespace 使用,表示全局唯一的一个SQL语句。
  • resultType: 表示单条结果集映射的类型
  • parameterType: 参数类型
xml
    <select id="selectById" resultType="java.util.Map" parameterType="java.lang.Integer">
            select * from upload_files where id = #{id}
    </select>

3.2 更新、插入、查询sql语句

  • id:给MapperdStatement命名, 配合namespace 使用,表示全局唯一的一个SQL语句。
  • parameterType: 参数类型
xml
<insert id="saveUploadFile" parameterType="java.util.Map">
        INSERT INTO upload_files (  origin_name,  path, upload_time, size,  ip  )
            VALUES   (  #{origin_name},  #{path},  #{upload_time},  #{size},  #{ip}  )

    </insert>


    <update id="update" parameterType="java.util.Map">
        UPDATE
          upload_files
        SET
          origin_name= #{origin_name},
          path= #{path},
          upload_time= #{upload_time},
          size= #{size},
          ip= #{ip}
        WHERE id= #{id}

    </update>

    
    <delete id="delete"  parameterType="java.lang.Integer">
        delete from upload_files  WHERE id= #{id}
    </delete>

3.3 绑定变量

使用#{key}代表绑定变量,如果参数类型是Map,key就是Map的key,如果是实体key实体的属性,如果参数是基础类型(String),可以自定义。使用ognl表达式从作用域中获取数据,ONGL也可以参与运算,

root对象 map

​ ip:ssss,

​ size:555

root对象 uploadFile

​ ip:ssss,

​ size:555

Released under the MIT License.