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

dw制作asp网站模板下载外贸seo

dw制作asp网站模板下载,外贸seo,wordpress 门户,官方网站的域名📖 模块概述 文章分类模块包括 新增文章分类、文章分类列表、获取文章分类详情、更新文章分类、删除文章分类 功能。本篇对于原项目进行了代码优化,将原先写在 Controller 层的业务逻辑代码迁移至了 Service 层。 🛠️ 技术实现要点 分组校…

📖 模块概述

  • 文章分类模块包括 新增文章分类、文章分类列表、获取文章分类详情、更新文章分类、删除文章分类 功能。
  • 本篇对于原项目进行了代码优化,将原先写在 Controller 层的业务逻辑代码迁移至了 Service 层。

🛠️ 技术实现要点

  • 分组校验
    • 定义分组:在实体类内部定义接口
    • 对校验项进行分组:通过 groups 属性指定
    • 校验时指定分组:给 @Validated 注解的 value 属性赋值
    • 校验项默认属于:Default 分组

⚙️ 各层职责与代码规范

🔗 Controller 层

@RestController
@RequiredArgsConstructor
@RequestMapping("/category")
public class CategoryController {...
}

🔗 Service 层

public interface CategoryService {...
}
@Service
@RequiredArgsConstructor
public class CategoryServiceImpl implements CategoryService {...
}

🔗 Mapper 层

@Mapper
public interface CategoryMapper {...
}

🔗 层间交互与依赖注入

@Service
@RequiredArgsConstructor
public class CategoryServiceImpl implements CategoryService {private final CategoryMapper categoryMapper;...
}
@RestController
@RequiredArgsConstructor
@RequestMapping("/category")
public class CategoryController {private final CategoryService categoryService;...
}

🔍 功能实现详解

🎯 新增文章分类

🧩 Controller 层

请求路径:/category
请求方式:POST
接口描述:该接口用于新增文章分类

@PostMapping
public Result addCategory(@RequestBody @Validated(Category.Add.class) Category category) {categoryService.addCategory(category);return Result.success();
}

🧩 Service 层

  • 接口
// 新增分类
void addCategory(Category category);// 根据分类名称查询分类信息
Category findCategoryByName(String categoryName);// 根据分类别名查询分类信息
Category findCategoryByAlias(String categoryAlias);
  • 实现
/*** 添加分类** @param category 分类对象*/
@Override
public void addCategory(Category category) {// 补充属性值category.setCreateTime(LocalDateTime.now());category.setUpdateTime(LocalDateTime.now());Map<String, Object> map = ThreadLocalUtil.get();Integer userId = (Integer) map.get("id");category.setCreateUser(userId);// 判断分类名称是否已存在Category categoryByName = findCategoryByName(category.getCategoryName());if (categoryByName != null) {throw new RuntimeException("分类名称已存在");}// 判断分类别名是否已存在Category categoryByAlias = findCategoryByAlias(category.getCategoryAlias());if (categoryByAlias != null) {throw new RuntimeException("分类别名已存在");}categoryMapper.addCategory(category);
}/*** 根据分类名称查询分类对象** @param categoryName 分类名称* @return 分类对象*/
@Override
public Category findCategoryByName(String categoryName) {return categoryMapper.findCategoryByName(categoryName);
}/*** 根据分类别名查询分类对象** @param categoryAlias 分类别名* @return 分类对象*/
@Override
public Category findCategoryByAlias(String categoryAlias) {return categoryMapper.findCategoryByAlias(categoryAlias);
}

Mapper 层

// 新增文章分类
@Insert("insert into category(category_name, category_alias, create_user, create_time, update_time) " +"values(#{categoryName}, #{categoryAlias}, #{createUser}, #{createTime}, #{updateTime})")
void addCategory(Category category);// 根据分类名称查询分类
@Select("select * from category where category_name = #{categoryName}")
Category findCategoryByName(String categoryName);// 根据分类别名查询分类
@Select("select * from category where category_alias = #{categoryAlias}")
Category findCategoryByAlias(String categoryAlias);

🎯 文章分类列表

🧩 Controller 层

请求路径:/category
请求方式:GET
接口描述:该接口用于获取当前已登录用户创建的所有文章分类

@GetMapping
public Result<List<Category>> getCategoryList() {List<Category> categoryList = categoryService.getCategoryList();return Result.success(categoryList);
}

🧩 Service 层

  • 接口
// 列表查询
List<Category> getCategoryList();
  • 实现
/*** 查询分类列表** @return 分类列表*/
@Override
public List<Category> getCategoryList() {Map<String, Object> map = ThreadLocalUtil.get();Integer userId = (Integer) map.get("id");return categoryMapper.getCategoryList(userId);
}

🧩 Mapper 层

// 查询某用户的所有文章分类
@Select("select * from category where create_user = #{userId}")
List<Category> getCategoryList(Integer userId);

🎯 获取文章分类详情

🧩 Controller 层

请求路径:/category/detail
请求方式:GET
接口描述:该接口用于根据ID获取文章分类详情

@GetMapping("/detail")
public Result<Category> getCategoryDetail(Integer id) {Category category = categoryService.findCategoryById(id);return Result.success(category);
}

🧩 Service 层

  • 接口
// 根据 id 查询分类信息
Category findCategoryById(Integer id);
  • 实现
/*** 根据id查询分类对象** @param id 分类id* @return 分类对象*/
@Override
public Category findCategoryById(Integer id) {Category category = categoryMapper.findCategoryById(id);return category;
}

🧩 Mapper 层

// 根据 id 查询文章分类
@Select("select * from category where id = #{id}")
Category findCategoryById(Integer id);

🎯 更新文章分类

🧩 Controller 层

请求路径:/category
请求方式:PUT
接口描述:该接口用于更新文章分类

@PutMapping
public Result updateCategory(@RequestBody @Validated(Category.Update.class) Category category) {categoryService.updateCategory(category);return Result.success();
}

🧩 Service 层

  • 接口
// 更新文章分类
void updateCategory(Category category);
  • 实现
/*** 修改分类** @param category 分类对象*/
@Override
public void updateCategory(Category category) {category.setUpdateTime(LocalDateTime.now());categoryMapper.updateCategory(category);
}

🧩 Mapper 层

@Update("update category " +"set category_name = #{categoryName}, category_alias = #{categoryAlias}, update_time = #{updateTime} " +"where id = #{id}")
void updateCategory(Category category);

🎯 删除文章分类

请求路径:/category
请求方式:DELETE
接口描述:该接口用于根据ID删除文章分类

🧩 Controller 层

@DeleteMapping
public Result deleteCategory(Integer id){categoryService.deleteCategoryById(id);return Result.success();
}

🧩 Service 层

  • 接口
// 删除文章分类
void deleteCategoryById(Integer id);
  • 实现
/*** 根据id删除分类** @param id 分类id*/
@Override
public void deleteCategoryById(Integer id) {categoryMapper.deleteCategoryById(id);
}

🧩 Mapper 层

@Delete("delete from category where id = #{id}")
void deleteCategoryById(Integer id);
http://www.dtcms.com/wzjs/228692.html

相关文章:

  • 网站开发职业要求百度推广客服电话24小时
  • 买网站做淘宝客北京专业seo公司
  • 过年wordpress主机桔子seo
  • 简单的美食网站模板太原建站seo
  • 网站页脚模板it教育培训机构
  • 做网站的zk啥网络广告推广
  • 不懂代码可以做网站吗宽带营销案例100例
  • 灯饰模板网站网站收录什么意思
  • 怎么做局域网asp网站网站推广多少钱一年
  • 安庆集团网站建设优化网站页面
  • 免费网站在线客服系统下列哪些店铺适合交换友情链接
  • 2018做网站前景如何2022最新新闻
  • 高端网站建设 案例网站seo技术能不能赚钱
  • 网站做多大尺寸上海关键词推广公司
  • 餐厅网站建设计算机培训班培训费用
  • 徐州专业网站制作公司网站排名优化培训哪家好
  • 网页设计跳转链接怎么制作seo岗位
  • 电子商务网站开发教程课后答案惠州seo网站推广
  • 兰州市门户网站营销自动化工具
  • 河北搜恒不给做网站大专网络营销专业好不好
  • 去泰国做赌博发网站可口可乐软文范例
  • 网站建设设计设计吸引顾客的营销策略
  • 网站换空间上怎么办啊营销技巧第三季
  • 网站建设需求公司内部调查青岛网站设计微动力
  • 网站上传附件大小限制厦门百度快照优化排名
  • 做英语教具的网站广州十大营销策划公司
  • 乐云seo网站优化要做哪些
  • 国家卫生计生委和能力建设中心网站seo是搜索引擎营销
  • 用liferay做的网站黄页88网官网
  • 动态网站开发思考建议seo服务方案