@Service
public interface DatabaseConnector {
public Model getModel();
}
@Configuration
@Profile({"!test"})
public class DatabaseConnectorT implements DatabaseConnector {
private final Model model;
@Autowired
public DatabaseConnectorT(@Value("${assemblerFile}") String assemblerFile) {
model = TDBFactory.assembleModel(assemblerFile);
}
}
我收到错误,这个 bean 类无法实例化,应该给出一个默认构造函数。为什么需要这样的?我有两种不同的接口实现,应该根据活动配置文件加载。配置应使用注释完成。
默认构造函数是没有参数的构造函数。
根据错误消息,我认为该类是通过反射创建的。因此,您必须提供一种通过反射创建类的方法。
我假设构造函数中汇编程序文件的值无法通过反射确定,因此调用了默认构造函数,但没有提供。