m0_68396682 2023-11-23 16:25 采纳率: 80%
浏览 7
已结题

前后端分离上传歌手信息提示空指针

本人在做前后端分离的音乐网页中,尝试在管理页中添加新歌手时提示了空指针异常,请问要怎么解决


    @ResponseBody
    @RequestMapping(value = "/add",method = RequestMethod.POST)
    public JSONObject addSinger(HttpServletRequest request){
        JSONObject jsonObject = new JSONObject();
        String name = request.getParameter("name").trim();
        String sex = request.getParameter("sex").trim();
        String pic = request.getParameter("pic").trim();
        String birthday = request.getParameter("birthday").trim();
        String location = request.getParameter("location").trim();
        String introductionParam = request.getParameter("introduction");
        System.out.println("Introduction parameter value: " + introductionParam);
        String introduction = (introductionParam != null) ? introductionParam.trim() : "";
        System.out.println("Introduction after trim: " + introduction);
        //将生日转换为Date格式
        Singer singer = new Singer();
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        Date birthDate = new Date();
        try {
            birthDate = dateFormat.parse(birthday);
        }catch (Exception e){
            e.printStackTrace();
        }

        singer.setName(name);
        singer.setSex(new Byte(sex));
        singer.setPic(pic);
        singer.setBirthday(birthDate);
        singer.setLocation(location);
        singer.setIntroduction(introduction);
        boolean res = singerService.insert(singer);
        if(res){
            jsonObject.put(Consts.CODE,1);
            jsonObject.put(Consts.MSG,"添加成功");
            return jsonObject;
        }else{
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG,"添加失败");
            return jsonObject;
        }
    }

2023-11-23 16:17:02.580 ERROR 2360 --- [nio-8888-exec-5] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause

java.lang.NullPointerException: null
    at com.javassm.music.controller.SingerController.addSinger(SingerController.java:33) ~[classes/:na]
33为String name = request.getParameter("name").trim();

        addSinger(){
            let d = this.registerForm.birthday;
            let datetime = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
            let params = new URLSearchParams();
            params.append('name',this.registerForm.name);
            params.append('sex',this.registerForm.sex);
            params.append('pic','/img/singerPic/abc.jpg');
            params.append('birthday',datetime);
            params.append('location',this.registerForm.location);
            params.append('introduction',this.registerForm.introduction);

            setSinger({params})
            .then(res => {
                if(res.code == 1){
                    this.getData()
                    this.registerForm = {}
                    this.notify("添加成功","success")
                }else{
                    this.notify("添加失败","error")
                }
            })
            .catch(err =>{
                console.log(err);
            });
            this.centerDialogVisible=false;
        },

api中所调用的方法
export const setSinger = (params) => post('singer/add', params);

若需要更多代码我可以提供,或者远程控制也行

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2023-11-23 16:27
    关注
    request.getParameter("name")
    

    获取name属性值时结果为空,导致调用trim方法报空指针。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月24日
  • 已采纳回答 11月23日
  • 创建了问题 11月23日

悬赏问题

  • ¥15 微软硬件驱动认证账号申请
  • ¥15 有人知道怎么在R语言里下载Git上的miceco这个包吗
  • ¥15 GPT写作提示指令词
  • ¥20 如何在cst中建立这种螺旋扇叶结构
  • ¥20 根据动态演化博弈支付矩阵完成复制动态方程求解和演化相图分析等
  • ¥20 关于DAC输出1.000V对分辨率和精度的要求
  • ¥20 想写一个文件管理器,加载全部子文件夹后,要一级一级返回
  • ¥15 华为超融合部署环境下RedHat虚拟机分区扩容问题
  • ¥15 哪位能做百度地图导航触点播报?
  • ¥15 请问GPT语言模型怎么训练?