从编写到上线带你搞定springboot博客之编辑博客时新增标签02

1 首先,设置断点追寻在哪可以找到新增的标签
在这里插入图片描述
2 发现如下报错:java.lang.NumberFormatException
在这里插入图片描述
3 再次设置断点,捕捉数据
在这里插入图片描述
4 发现数据位置
在这里插入图片描述
5 变更代码
存在问题:新增数据有三种情况,一种是字符串,一种是数字,一种是数字和id相同(暂且不允许是数字),但现在只能解决第一种

     //将id放入list
    private List<Long> convertToList(String ids) {
        List<Long> list = new ArrayList<>();
        List<Tag> tags = tagRepository.findAll();
        if (!"".equals(ids) && ids!=null) {
            String[] idarr = ids.split(",");
            for (int i=0; i<idarr.length; i++) {
                if(StringHandler.stringtoLongException(idarr[i])) { //判断是否为数字
                    //将数据封装为tag对象,调用save放入数据库
                    Tag newTag = new Tag();
                    newTag.setName(idarr[i]);
                    saveTag(newTag);
                    idarr[i] = tagRepository.findByName(idarr[i]).getId().toString();
                }
                list.add(new Long(idarr[i]));
            }
        }
        return list;
    }
package com.lh.daily.handler;
//String异常类
public class StringHandler {
    public static boolean stringtoLongException(String str) { //出现字符串转换异常,说明输入的是新增数据
        try {
            new Long(str);
        } catch (NumberFormatException e) {
            return true;
        }
        return false;
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章