在照着网上一些教程搭建时,集百家之经验,虽然项目能更好,但是也会出现很多“恶心”的问题(查不到原因)
1、该有的注解都要加好。
在application。这里我没加@MapperScan。因为加了一直在service那报错,不清楚有没有关联。
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
在service层,想用接口实现类,在control层声明service,然后serviceImpl实现service,并记得在serviceImpl类上边注解@Service。@Resource 和 @Autowired 有人说两者一样,后者提示警告,于是我用了前者。
@Resource
private UserService userService;
在mapper层。划重点!!!在service里调用mapper时这里一直提示我 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) apper-locations: classpath:mapping/*.xml 是不是自己resource下的mapper映射文件路径。 2、检查mapper.java 有没有加@Mapper 或者在 apllication那里@MapperScan("xxxx")指明路径。 3、检查mapper.xml namespace的值是不是对映的mapper类。 然鹅,我的错是出在pom.xml。我有这么一段依赖,这会导致我在application里配置的mybatis.mapper-locations失效,可以删掉,也可以改成mybatis-plus.mapper-locations,但是我改了不行,就删掉了它。
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>2.3</version>
</dependency>