我正在尝试使用spring自定义存储库实现。我用的是春季数据卡桑德拉1.5 m1。问题是自定义实现方法没有被执行。
下面是代码片段。
public interface JobRepositoryCustom{
public Job getJobById(String id );
}
@Component
public class JobRepositoryCustomImpl implements JobRepositoryCustom{
@Autowired
CassandraOperations template;
public Job getJobById(String job ) {
System.out.println("Some custom implementation");
return job;
}
}
public interface JobRepository extends TypedIdCassandraRepository<Job,String>, JobRepositoryCustom {
}同样的驱动程序如下
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class);
}
@Bean
public CommandLineRunner demo( JobRepository repository) {
Job job = new Job();
job.setId("1817086421");
job.setDescription("My job2 description");
job.setOneMoreField("Just a new field");
job.setTitle("Technical Engineer job");
repository.save(job);
//The getJobById is custom method declared in JobRepositoryCustom
repository.getJobById("My String");
System.out.println("This after the job");
System.out.println("repository = [" + repository+ "]");
return null;
}
}我是不是漏掉了什么?
发布于 2016-11-12 13:07:58
将JobRepositoryCustomImpl重命名为JobRepositoryImpl:
下面是我的代码中的一个示例:
public interface ProductRepository extends JpaRepository<Product, Long>, ProductRepositoryCustom {
}
interface ProductRepositoryCustom {
public String anyFunction();
}
@Repository
class ProductRepositoryImpl implements ProductRepositoryCustom {
@Override
public String anyFunction(){
return "Hello";
}
}https://stackoverflow.com/questions/40560436
复制相似问题