我有一个实体EnvironmentProperty
,它有一个复合主键EnvironmentPropertyId
(我已经用@EmbeddedId
给出了)。我已经写了他们的Dao实现(下面的代码)。但是,当我尝试运行代码时,会出现错误:
Parameter 0 of constructor in com.visa.dp.ags.probe.api.server.dao.impl.EnvironmentPropertyRepositoryImpl required a bean of type 'java.lang.Class' that could not be found.
以下是Dao Interface的代码
public interface EnvironmentPropertyRepository extends JpaRepository<EnvironmentProperty, EnvironmentPropertyId> {}
以下是Dao实现的代码。
@Repository("environmentPropertyRepository")
public class EnvironmentPropertyRepositoryImpl extends SimpleJpaRepository<EnvironmentProperty, EnvironmentPropertyId> implements EnvironmentPropertyRepository {
public EnvironmentPropertyRepositoryImpl(Class<EnvironmentProperty> domainClass, EntityManager em) {
super(domainClass, em);
}
}
这是构造函数的第一个参数domainClass
的指示错误
我无法弄清楚我在做什么错。任何帮助表示赞赏。
答案 0 :(得分:0)
我使用了不同的方法。而不是实现接口并在类中编写查询,我仅在接口的@Query中提供了查询。没有针对上述问题的任何解决方案。
public interface EnvironmentPropertyRepository extends JpaRepository<EnvironmentProperty, EnvironmentPropertyId> {
@Query( value="SELECT * from {h-schema}TSIC_ENV_PROP where WEB_SVC_ID = ?1 and SVC_ID = ?2 and PARAM_ID = ?3", nativeQuery=true)
List<EnvironmentProperty> getEnvProp(int webSvcId, int svcId, String paramId);
}