Java后端接口编写流程

💗wei_shuo的个人主页

💫wei_shuo的学习社区

🌐Hello World !


Java后端接口编写流程

Java后端接口编写流程,更具业务逻辑编写Java后端接口,提供给前端访问

实现逻辑流程

  • POJO:实体类编写
java 复制代码
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("merchant_mcc")
public class MerchantMcc {
    /**
     * null | merchant_mcc.id | @mbg.generated
     */
    @ApiModelProperty("null")
    @TableId
    private Long id;

    /**
     * MCC字段Code | merchant_mcc.code | @mbg.generated
     */
    @ApiModelProperty("MCC字段Code")
    private String code;

    /**
     * MCC字段Description | merchant_mcc.description | @mbg.generated
     */
    @ApiModelProperty("MCC字段Description")
    private String description;
}

实体类字段的工具类编写:字段常量编写

java 复制代码
package com.wei.gen.po;

public class MerchantMccCol {

	public static final String ID = "id";

	public static final String CODE = "code";

	public static final String DESCRIPTION = "description";

}
  • DAO:数据库访问层编写
java 复制代码
public interface MerchantMccRepo extends IService<MerchantMcc> {

    /**
     * MCC 根据Code查询Description
     *
     * @param queryWrapper
     * @return
     */
    MerchantMcc selectOne(QueryWrapper<MerchantMcc> queryWrapper);

}
  • 实现类Impl编写
java 复制代码
@Slf4j
@Repository
public class MerchantMccRepoImpl extends ServiceImpl<MerchantMccMapper, MerchantMcc> implements MerchantMccRepo {

    private final MerchantMccMapper merchantMccMapper;

    public MerchantMccRepoImpl(MerchantMccMapper merchantMccMapper) {
        this.merchantMccMapper = merchantMccMapper;
    }

    @Override
    public MerchantMcc selectOne(QueryWrapper<MerchantMcc> queryWrapper) {
        return merchantMccMapper.selectOne(queryWrapper);
    }
}

Mapper编写:实现对数据库的操作

java 复制代码
@Mapper
public interface MerchantMccMapper extends BaseMapper<MerchantMcc> {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table merchant_mcc
     *
     * @mbg.generated
     */
    MerchantMcc selectByPrimaryKey(Long id);
}

Mapper.xml编写:自定义编写SQL语句,业务逻辑
id属性:指定Mapper.xml文件中的SQL语句对应的Java接口方法名称,这个方法将会执行相应的SQL语句,并返回执行结果

type属性:指定Mapper.xml文件中的Java类对应的实体类名称,这个实体类包含了与SQL语句相对应的属性和方法,用于将执行结果转换为Java对象

java 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.wei.gen.dao.MerchantMccMapper">
  
</mapper>

Service层:业务逻辑编写

java 复制代码
 /**
     * MCC 根据Code查询Description
     */
    public String getDescriptionByCode(String code) {
        if (code == null || code.isEmpty()){
            throw new ManageException("Code不能为空");
        }

        MerchantMcc merchantMcc = merchantMccRepo.selectOne(new QueryWrapper<MerchantMcc>().eq("code", code));

        if (merchantMcc == null) {
            throw new ManageException("Code不存在");
        }
        return merchantMcc.getDescription();
    }

Controller层:接口编写

java 复制代码
@RestController
@Slf4j
@RequestMapping("common")
public class SystemCommonEndpoint {
    
    @Resource
    private CommonService commonService;

    /**
     * MCC 根据Code查询Description
     */
    @GetMapping("/search")
    @ApiOperation("MCC根据Code查询Description")
    public Result<String> searchDescription(@RequestParam("code") String code) {
        String description = commonService.getDescriptionByCode(code);
        return Result.succ(description);
    }
}

🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请------点赞👍收藏⭐️评论📝


相关推荐
数字化顾问11 小时前
Flink ProcessFunction 与低层级 Join 实战手册:实时画像秒级更新系统
java·开发语言
计算机学姐12 小时前
基于微信小程序的垃圾分类管理系统【2026最新】
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis
Mr_hwt_12312 小时前
spring boot框架中本地缓存@Cacheable原理与踩坑点详细解析
java·spring boot·后端·缓存
qq_3391911412 小时前
go win安装grpc-gen-go插件
开发语言·后端·golang
疯狂吧小飞牛12 小时前
Lua中,表、元表、对象、类的解析
开发语言·junit·lua
zl97989912 小时前
SpringBoot-自动配置原理
java·spring boot·spring
owCode12 小时前
3-C++中类大小影响因素
开发语言·c++
兮动人12 小时前
Java 单元测试中的 Mockito 使用详解与实战指南
java·开发语言·单元测试
豆沙沙包?12 小时前
2025年--Lc186--64. 最小路径和(多维动态规划,矩阵)--Java版
java·矩阵·动态规划
武子康12 小时前
Java-151 深入浅出 MongoDB 索引详解 性能优化:慢查询分析 索引调优 快速定位并解决慢查询
java·开发语言·数据库·sql·mongodb·性能优化·nosql