我一直在尝试注册我自己的写自定义转换器来更改默认ID值.
但它实际上从未打过电话.
这是我的自定义转换器
public class EventKeyConverter implements Converter
这里是我注册客户转换器的地方
@Override
@Bean
public CustomConversions customConversions() {
List
当我保存一些对象时,这个转换器永远不会被调用.
编辑1:
我需要将默认对象Id更改为所有存储库中的某个自定义Id(UUID随机密钥).这就是我尝试使用mongo转换器的原因.
编辑2:
刚刚发现了这个问题.在包含customConversion()的类中将@Configuration更改为@Component,它可以正常工作.但还是想知道这里发生了什么?
最佳答案
@Configuration定义了一个Spring上下文片段,该片段包含如果使用@Bean注释返回新bean并将它们放在上下文中的方法.
@Component是一种说“这个Pojo是一个Spring bean”的方式.然后,您需要@ComponentScan注释或XML等效项来扫描@Component注释bean的包.
所以在你的情况下,你创建转换器很好,但是在你添加@Component之前它没有被注册为Spring bean,所以它最初不起作用.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。