头像上传 —— 持久,控制层

上传头像

1.持久层

1.1sql语句的规划

update t_user set avatar = ? where uid = ?

1.2编写接口和实现类
/**
    * param("sql文件#{}中的占位符"):解决sql语句占位符和映射接口不一样,来一个强转
    * @param uid
    * @param avatar
    * @return
    */
   Integer updateAvatar(@Param("uid") Integer uid,
                        @Param("avatar") String avatar);
 <update id="updateAvatar">
       update t_user set avatar = #{avatar} where uid = ${uid}
</update>
1.3测试类
@Test
   public void updateAvatar()
  {
       userMapper.updateAvatar(6,"dljashda");
       System.out.println(userMapper.findByUid(6));
  }

 

2.业务层

2.1规划异常

用户名不存在,更新时候未知异常

2.2接口开发和抽象类的实现
void updateAvatar(Integer uid,String avatar);

 

    @Override
   public void updateAvatar(Integer uid, String avatar) {
       User byUid = userMapper.findByUid(uid);

       if(byUid == null || byUid.getIsDelete() == 1)
      {
           throw new UserNotFoundEx("用户名没有找到");
      }

       Integer integer = userMapper.updateAvatar(uid, avatar);

       if(integer != 1)
      {
           throw new updateException("更新头像时候产生未知异常");
      }

  }

 

2.3测试
    @Test
   public void changavatar()
  {
       iUserService.updateAvatar(7,"666@");

  }

 

java基础学习(12)RuntimeException和Exception - 知乎 (zhihu.com)

posted @   爽爽子的秃头生活  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
点击右上角即可分享
微信分享提示