Java业务方法结构

1、代码示例

在Java业务方法中,通常会按照一定的顺序执行多个步骤,以确保代码的可维护性和可读性。以下是一个典型的业务方法结构,包含了你提到的五个步骤:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class BusinessService {

    private static final Logger logger = LoggerFactory.getLogger(BusinessService.class);

    public BusinessResult executeBusinessLogic(BusinessRequest request) {
        // 1. 打印日志
        logger.info("开始执行业务逻辑,请求参数: {}", request);

        try {
            // 2. 参数校验
            validateRequest(request);

            // 3. 规则校验
            validateBusinessRules(request);

            // 4. 业务处理
            BusinessResult result = processBusiness(request);

            // 5. 返回数据
            logger.info("业务逻辑执行成功,返回结果: {}", result);
            return result;

        } catch (IllegalArgumentException e) {
            logger.error("参数校验失败: {}", e.getMessage());
            throw e;
        } catch (BusinessRuleException e) {
            logger.error("业务规则校验失败: {}", e.getMessage());
            throw e;
        } catch (Exception e) {
            logger.error("业务处理过程中发生异常: {}", e.getMessage(), e);
            throw new RuntimeException("业务处理失败", e);
        }
    }

    private void validateRequest(BusinessRequest request) {
        if (request == null) {
            throw new IllegalArgumentException("请求参数不能为空");
        }
        // 其他参数校验逻辑
    }

    private void validateBusinessRules(BusinessRequest request) {
        // 业务规则校验逻辑
        if (!isValidBusinessRule(request)) {
            throw new BusinessRuleException("业务规则校验失败");
        }
    }

    private BusinessResult processBusiness(BusinessRequest request) {
        // 业务处理逻辑
        BusinessResult result = new BusinessResult();
        // 处理业务逻辑并设置结果
        return result;
    }

    private boolean isValidBusinessRule(BusinessRequest request) {
        // 业务规则校验逻辑
        return true; // 假设校验通过
    }
}

2、代码说明:

  1. 打印日志:在方法的开始和结束处打印日志,记录请求参数和返回结果,便于后续排查问题。
  2. 参数校验:对传入的参数进行校验,确保参数的有效性。如果参数不合法,抛出IllegalArgumentException
  3. 规则校验:根据业务规则对请求进行校验,确保请求符合业务规则。如果不符合,抛出BusinessRuleException
  4. 业务处理:执行核心的业务逻辑,处理请求并生成结果。
  5. 返回数据:返回处理结果,并在返回前打印日志。

3、异常处理:

  • try-catch块中捕获异常,并根据不同的异常类型打印不同的日志信息。
  • 如果发生异常,可以选择抛出运行时异常或自定义异常,以便上层调用者处理。

4、日志记录:

  • 使用SLF4JLog4j等日志框架记录日志,确保日志信息清晰、可追踪。

5、自定义异常:

  • BusinessRuleException是一个自定义异常类,用于表示业务规则校验失败的情况。
public class BusinessRuleException extends RuntimeException {
    public BusinessRuleException(String message) {
        super(message);
    }
}

通过这种结构化的方式编写业务方法,可以提高代码的可读性、可维护性,并且便于后续的调试和问题排查。

posted @   吴川华仔  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示