com.dao.impl.EnvironmentPropertyRepositoryImpl中的构造函数的参数0需要找不到类型为'java.lang.Class'的bean

时间:2019-03-06 10:29:30

标签: hibernate spring-boot

我有一个实体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的指示错误

我无法弄清楚我在做什么错。任何帮助表示赞赏。

1 个答案:

答案 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);

}