接上篇博客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