当前位置: 首页 > news >正文

SpringBoot企业级开发之【文章分类-新增文章分类】

看一下新增文章的需求:

接口文档:

开发思路:

先在controller下去创建add方法,方法内导入Service类获取add的结果;再在Service接口下去创建add的方法;然后在Service实现类下去实现方法的作用,且导入Mapper类去执行要对数据库执行的操作。

实操:

1.controller

先创建在controller包下去创建属于分类的controller类

package org.huangyingyuan.controller;import org.huangyingyuan.pojo.Category;
import org.huangyingyuan.pojo.Result;
import org.huangyingyuan.service.CategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/category")
public class CategoryController {@Autowiredprivate CategoryService categoryService;@PostMapping("/add")public Result add(@RequestBody Category category) {categoryService.add(category);return Result.success();}
}

2.Service接口

package org.huangyingyuan.service;import org.huangyingyuan.pojo.Category;
import org.springframework.stereotype.Service;@Service
public interface CategoryService {// 新增分类void add(Category category);
}

3.ServiceImpl

package org.huangyingyuan.service.impl;import org.huangyingyuan.mapper.CategoryMapper;
import org.huangyingyuan.pojo.Category;
import org.huangyingyuan.service.CategoryService;
import org.huangyingyuan.utils.ThreadLocalUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Map;@Service
public class CategoryServiceIpml implements CategoryService {@Autowiredprivate CategoryMapper categoryMapper;@Overridepublic void add(Category category) {//新增属性值category.setCreate_time(LocalDateTime.now());category.setUpdate_time(LocalDateTime.now());//获取idMap<String,Object> map=ThreadLocalUtil.get();Integer id=(Integer)map.get("id");category.setCreate_user(id);categoryMapper.add(category);}
}

4.Mapper

package org.huangyingyuan.mapper;import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.huangyingyuan.pojo.Category;@Mapper
public interface CategoryMapper {@Insert("insert into category (category_name,category_alias,create_user,create_time,update_time)" +" values (#{category_name},#{category_alias},#{create_user},#{create_time},#{update_time})")void add(Category category);
}

结果如下:

测试:

成功结果:

参数校验

我们前面是开发完了,但是一些参数条件没有制约,现在我们来看一下

那么我们只需要这么两步操作:
 

在pojo实体类下去接入注解:

然后在controller引入的参数时去加入【@Validated】注解

http://www.dtcms.com/a/138305.html

相关文章:

  • Delphi Ini文件对UTF8支持不爽的极简替代方案
  • uniapp h5接入地图选点组件
  • 用 Deepseek 写的uniapp油耗计算器
  • CentOS 7 安装教程
  • VS-Code创建Vue3项目
  • 医院处方外流对接外部药房系统(合规python代码版)
  • ROS ROS2 机器人深度相机激光雷达多传感器标定工具箱
  • 编解码器vs容器
  • webpack理解与使用
  • 方德桌面操作系统V5.0-G23 vim无法复制粘贴内容
  • 李飞飞团队新作WorldScore:“世界生成”能力迎来统一评测,3D/4D/视频模型同台PK
  • 【论文精读】COLMAP-Free 3D Gaussian Splatting
  • [linux] vim 乱码
  • C++ 哈希表
  • Qt QML实现Windows桌面歌词动态播放效果
  • QtApplets-实现应用程序单例模式,防止重复运行
  • 2025年Q2(流动式)起重机司机考试题
  • 【Windows本地部署n8n工作流自动平台结合内网穿透远程在线访问】
  • Ubuntu利用docker搭建Java相关环境记录(二)
  • Vision Transformer项目分析与介绍
  • 压缩包网页预览(zip-html-preview)
  • Apache Atlas构建安装(Linux)
  • Python 深度学习 第8章 计算机视觉中的深度学习 - 卷积神经网络使用实例
  • YOLO训练多评价指标曲线画图
  • 【2025“华中杯”大学生数学建模挑战赛】选题分析 A题 详细解题思路
  • k8s报错kubelet.go:2461] “Error getting node“ err=“node \“k8s-master\“ not found“
  • 【秣厉科技】LabVIEW工具包——OpenCV 教程(20):拾遗 - imgproc 基础操作(下)
  • Python实例题:Python自动化开发-考勤处理
  • iptables防火墙
  • 深入浅出 Redis:核心数据结构解析与应用场景Redis 数据结构