Java Spring Mongo-从我的自定义存储库实现访问存储库接口方法
我正在定义Spring Mongo存储库接口,如下所示:Java Spring Mongo-从我的自定义存储库实现访问存储库接口方法,java,spring,mongodb,Java,Spring,Mongodb,我正在定义Spring Mongo存储库接口,如下所示: public interface FooRepository extends MongoRepository<Foo, String>, FooRepositoryCustom { Foo findByMyField(String myField); } 在我的自定义存储库实现中,我希望通过调用findByMyField方法来定义findByMyObject。比如: public class FooRepositor
public interface FooRepository
extends MongoRepository<Foo, String>, FooRepositoryCustom {
Foo findByMyField(String myField);
}
在我的自定义存储库实现中,我希望通过调用findByMyField方法来定义findByMyObject。比如:
public class FooRepositoryImpl implements FooRepositoryCustom {
public Foo findByMyObject(MyObject obj) {
return new Foo(<repository>.findByMyField(obj.getId()));
}
}
公共类FooRepositoryImpl实现FooRepositoryCustom{
public Foo findByMyObject(MyObject对象){
返回新的Foo(.findByMyField(obj.getId());
}
}
关于如何获取对该存储库接口的引用的任何线索?您可以尝试以下方法
public class FooRepositoryImpl implements FooRepositoryCustom {
@Autowired
private FooRepository fooRepository;
public Foo findByMyObject(MyObject obj) {
return new Foo(fooRepository.findByMyField(obj.getId()));
}
}
你也可以试试
@Autowired
private MongoRepository<Foo, String> fooRepository;
@Autowired
私有MongoRepository存储库;
不确定泛型是否会按类型触发autowire
@Autowired
private MongoRepository<Foo, String> fooRepository;