客户服务实施
package com.application.service.impl;
@Service
public class CustomerServiceImpl implements CustomerService {
@Autowired
private CustomerRepository custRepo;
@Autowired
private CustomerMapper mapper;
@Autowired
private HMergeMapper mergeMapper;
@Override
public CustomerViewData addCustomer(CustomerData custData) {
Customer cr = this.mapper.customerDataToCustomer(custData);
cr = this.custRepo.save(cr);
return this.mapper.fromCustToCustViewData(cr);
}
}
客户服务界面
package com.application.service;
@Component
public interface CustomerService {
CustomerViewData addCustomer(CustomerData custData);
}
客户映射器
package com.application.mapper;
@Mapper(componentModel = "spring")
public interface CustomerMapper {
CustomerMapper INSTANCE = Mappers.getMapper(CustomerMapper.class);
CustomerViewData fromCustToCustViewData(Customer entity);
}
主类
package com.application;
@EnableSwagger2
@SpringBootApplication
@ComponentScan(basePackages = { "com.application", "com.application.mapper" })
@EnableJpaRepositories(basePackages = {"com.application.repository"})
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
错误-
应用程序启动失败
说明:
com中的字段映射器。应用服务实施。CustomerServiceImpl需要“com”类型的bean。应用映射器。找不到CustomerMapper“”。
措施:
考虑定义“com”类型的bean。应用映射器。配置中的CustomerMapper。
Note - Package structure is Main Class in com.appliaction,
Mapper class in com.application.mapper,
CustomerService class in com.application.service,
CustomerServiceImpl class in com.application.service.impl
这是固定的,问题是maven插件。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.3.0.Final</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
删除CustomerMapper实例=映射器。getMapper(CustomerMapper.class) 内部CustomerMapper。班在我看来,这就像是递归的地狱。
您在CustomerMapper中。class,只需使用此操作即可
在CustomerMapper.class
之外,只需使用自动装配即可使用映射器类。
您已经定义了组件模型="Spring"
,因此它将绑定到Spring上下文。不要将映射器的手动检索与Spring上下文混合使用。
这可能会导致不创建实例,然后spring抛出错误。
在spring Boot1.5.9上创建spring boot应用程序时,我收到以下错误消息。有谁能帮忙吗?提前道谢。 Oracle 11g数据库。 请找到我在pom.xml中使用的以下类: Java代码-应用程序: Java代码存储库: Java代码服务:
例如,我有以下接口映射器: 在代码中,您可以看到映射和一些默认方法,其中包含其他映射。如何在Mapstruct映射中使用这些方法,以便Mapstruct使用这些方法在字段中填充值?
我的Spring Boot MVC REST应用程序有问题。我试图自己解决这个问题几天,但还没有找到解决方案。希望你能帮我:) 我的主应用程序: 我的配置类: TestTableRepository.java: IVectorData: 这里是: 问题是Spring找不到“testTableRepository”Bean。 错误代码: 但有一件有趣的事是,第二个自动连线的候选者“IVectorDa
问题内容: 如果发现某些文档不包含排序条件中使用的字段,Elasticsearch会在解析时引发查询。 SearchParseException:解析失败[未找到[价格]的映射以进行排序] 即使缺少某些字段,如何才能成功搜索这些文档? 问题答案: 在深入研究之后,我找到了下面给出的解决方案。应该在sort子句中明确设置为。 有关更多信息,请查看Elasticsearch参考: 缺失值 忽略未映射的
如果发现某些文档不包含排序条件中使用的字段,Elasticsearch在分析查询时抛出。 SearchParseException:解析失败[找不到[价格]的映射以便对其进行排序] 如何成功搜索这些文档,即使有些文档缺少字段?
我还在学习ReactJS。我正在挑战自己写一个非常基本的待办事项应用程序(就像一个人一样),我有一个问题,调用onhtml函数。 这里的问题是不能调用,因为它不在render函数的返回调用中 要从map函数内部访问handleClick,我需要做什么?