SpringBoot分类管理+标签管理

本文详细介绍了在SpringBoot项目中如何实现分类管理和标签管理。首先在TypeService接口和TypeServiceImpl实现类中添加相关操作,接着在TypeController中编写CRUD接口,并在前端页面types-input.html进行错误处理。分类管理完成后,通过类似步骤实现了标签管理,包括在po层创建tag实体类,Dao层的TagRepository,Service层的TagService接口和实现类TagServiceImpl,以及TagController。标签管理的实现主要借鉴了分类管理的代码,需要注意正确配置界面跳转。
摘要由CSDN通过智能技术生成

接上篇博客SpringBoot实体类创建+登录+类别分页展示等,笔者此篇博客将简单介绍分类管理+标签管理。

一.分类管理

1.在TypeService.java接口中新增如下方法:

    Type saveType(Type type);

    Type getTypeByName(String name);

    void delete(Long id);

    Type getType(Long id);

    Type updateType(Long id,Type type);

2.在TypeServiceImpl.java文件中具体实现上述方法:

 @Override
    public Type saveType(Type type){
   
        return typeRepository.save(type);
    }

    @Override
    public Type getTypeByName(String name){
   
        return typeRepository.findByName(name);
    }

    @Override
    public void delete(Long id) {
   
        typeRepository.deleteById(id);
    }

    @Override
    public Type getType(Long id) {
   
        return typeRepository.findById(id).orElse(null);
    }

    @Override
    public Type updateType(Long id, Type type) {
   
        Type type1 = typeRepository.findById(id).orElse(null);
        if(type1==null){
   
            System.out.println("未获得更新对象");
            return null;
        }
        BeanUtils.copyProperties(type,type1);
        return typeRepository.save(type1);
    }

3.在TypeController.java类中写入增加,删除,更新操作:

    @GetMapping("/types/input")
    public String input(Model model){
   
        model.addAttribute("type",new Type());

        return "admin/types-input";
    }

    @PostMapping("/types/add")
    public String add(@Valid Type type, BindingResult result, RedirectAttributes attributes){
   
        Type type1=typeService.getTypeByName(type.getName());
        if(type1!=null){
   
            result.rejectValue("name","nameError","不能添加重复的分类");
        }
        if(result.hasErrors()){
   
            return 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值