前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hmily框架提供的可扩展的接口或类,用于支持自定义业务逻辑的扩展

Hmily框架提供的可扩展的接口或类,用于支持自定义业务逻辑的扩展

原创
作者头像
一凡sir
发布2023-12-09 09:43:04
1450
发布2023-12-09 09:43:04
举报
文章被收录于专栏:技术成长技术成长

建议先关注、点赞、收藏后再阅读。

Hmily框架提供了以下可扩展的接口或类,用于支持自定义业务逻辑的扩展:

1. TCC接口(Try/Confirm/Cancel):

TCC接口是Hmily框架中最核心的扩展接口之一,用于定义业务逻辑的事务处理过程。开发者需要实现该接口,并在其中定义业务逻辑的Try、Confirm和Cancel方法。例如:

代码语言:java
复制
public interface OrderService {
    @Hmily
    boolean tryPay(Order order);

    boolean confirmPay(Order order);

    boolean cancelPay(Order order);
}

2. Hmily拦截器(HmilyTransactionInterceptor):

Hmily拦截器是通过AOP的方式在业务方法执行前后进行拦截,并进行事务处理的拦截器。开发者可以自定义拦截器,在其中实现自己的扩展逻辑。例如:

代码语言:java
复制
public class CustomHmilyInterceptor implements HmilyTransactionInterceptor {
    @Override
    public Object interceptor(MethodInvocation methodInvocation) {
        // 自定义扩展逻辑
        // ...
        return methodInvocation.proceed();
    }

    @Override
    public void setSerializer(HmilySerializer serializer) {
        // 设置序列化器
    }

    // ...
}

3. Hmily处理器(HmilyTransactionHandler):

Hmily处理器用于处理Hmily拦截器中拦截到的事务方法,并根据不同的事务阶段调用相应的业务逻辑。开发者可以自定义处理器,在其中实现自己的扩展逻辑。例如:

代码语言:java
复制
public class CustomHmilyTransactionHandler implements HmilyTransactionHandler {
    @Override
    public Object handle(HmilyTransactionContext context, MethodInvocation methodInvocation) {
        // 自定义扩展逻辑
        // ...
        return methodInvocation.proceed();
    }

    // ...
}

4. Hmily参与者(HmilyTransactionParticipant):

Hmily参与者是Hmily框架中的事务参与者,负责与事务协调者进行通信、参与事务的Try/Confirm/Cancel阶段的执行。开发者可以自定义参与者,在其中实现自己的扩展逻辑。例如:

代码语言:java
复制
public class CustomHmilyTransactionParticipant implements HmilyTransactionParticipant {
    @Override
    public void enlistParticipant(HmilyTransactionContext context) {
        // 自定义扩展逻辑
        // ...
    }

    @Override
    public int getExecuteOrder() {
        // 返回执行顺序
        return 0;
    }

    // ...
}

开发者可以根据实际业务需求,自定义这些接口或类,并在Hmily框架的配置文件中进行配置,以实现自定义业务逻辑的扩展。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Hmily框架提供了以下可扩展的接口或类,用于支持自定义业务逻辑的扩展:
    • 1. TCC接口(Try/Confirm/Cancel):
      • 2. Hmily拦截器(HmilyTransactionInterceptor):
        • 3. Hmily处理器(HmilyTransactionHandler):
          • 4. Hmily参与者(HmilyTransactionParticipant):
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档