Java 5-3、用户模块-Mapper.xml的SQL整理

5-3 用户模块-Mapper.xml的SQL整理

一、SQL总结

三个 select SQL

  • login
  • findUserById
  • findUserByAccount

一个 insert SQL

  • register

一个 update SQL

  • updateUser

总共5条SQL,SQL id要和mapper层接口方法名一一对应。
从生成的mapper.xml中移除非必要原有SQL

二、修改点

  1. SQL的value类型可以省略,删除以下 jdbcType 字段及前面的逗号
#{phone,jdbcType=INTEGER}
#{password,jdbcType=VARCHAR}
#{createDate,jdbcType= TIMESTAMP}
  1. String类型字段还需判断是否为空字符串
<if test="password != null and password != ''">
    password = #{password},
</if>
  1. 注释掉不需要和不允许通过SQL修改的字段名及字段值

注册用户sql内的:

createDatelastLoginTimeenable

更新用户信息sql内的:

username
authenticationTime
registerProvince
registerCity
registerFrom
createDate

三、注意点

  1. xml内SQL id一定要和mapper接口内的方法名一一对应
  2. xml内SQL paramsTyperesultType 的类型与mapper接口一一对应 (实际发现编译只会对java.lang.xxx包下的数据类型做校验,自定义对象不会)
  3. 写 update sql时,String类型字段根据需求判空空字符串
  4. 写 update sql时,where条件一定不要忘记,包括service层调用前对必要参数的空检查
  5. 删除不能被修改字段时,应该同时删除 field 和 value

版权声明:本文为qq_39420519原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。