@tranctional +@feighclient 注解的一些细节2022-11-23
rollbackfall 有异常 ,则回滚
该属性用于设置需要进行回滚的异常类数组,当方法中抛出指定异常数组中的异常时,则进行事务回滚,
指定单一异常类:
- @Transactional(rollbackFor=RuntimeException.class)
指定多个异常类:
- @Transactional(rollbackFor={RuntimeException.class, Exception.class
@Transactional(readOnly=true)
true:事务只读 false:代表可以读写
@FeignClient注解使用方法
声明接口时在代码中通过@Resource注入容器之后即可使用。@FeignClient注解的常用属性如下:
-
value/name:value和name的作用一样,用于指定FeignClient的名称;如果没有配置url,而且项目使用了Eureka 或者nacos,name属性会作为微服务的名称,用于服务发现。反之,只是一个名称。
-
url:一般用于调试,作用是指定@FeignClient调用的API地址,而非从服务中心获取。
-
decode404:当发生http 404错误时,如果该字段为true,会调用decoder进行解码;否则,抛出FeignException。
-
configuration:Feign配置类,作用是自定义Feign的Encoder、Decoder、LogLevel、Contract。
-
fallback:定义容错的处理类,当调用远程接口失败或超时时,会调用对应接口的容错逻辑,fallback指定的类必须实现@FeignClient标记的接口。
-
fallbackFactory:工厂类,用于生成fallback类实例,实现每个接口通用的容错逻辑,减少重复的代码。
-
path:定义当前FeignClient的统一前缀。(controller的访问地址)
@FeignClient(
name = "${logistics.feign.name.logistics-combine-order:combine-order}",【获取微服务的ip+端口】 冒号后面:微服务名称(从eureka或者nacos中获取地址)
url = "${logistics.feign.url.logistics-combine-order:}",
path = "/transportTaskInfo")
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)