springboot项⽬问题总结
⼀、web访问问题
先上图:
操作:直接在浏览器访问url,controller中只返回⼀个字符串。拓落
问题:⼤概意思就是映射错误,实际就是没扫描到什么东西,我这个项⽬中呢,每个模块都是⼀个jar,所以应该是没有引⼊bean,rvice,controller 以及mapper。
解决:上图水彩画图片大全
还有两步,⼀是在rviceImpl类上⾯加上@rvice,⼆就是要在web的l中添加依赖项⽬rvice和rviceImpl,两个不加任何⼀个都会出错,可以测试。过渡句是什么
经过上⾯的操作,发现还是有错,那是因为没有index.html,如果是controller,他返回的是⼀个页⾯,把@Controller改成RestController,将返回字符串。居无求安
狂人日记好词好句⼆、调⽤API问题
操作:调⽤该⽅法,报错是空指针,指⽰36⾏。
问题:扫描不到l的配置⽂件(两个java类)。
河南地质博物馆解决:在上图启动⽅法中,加上“com.ant.fig”,也就是上图被注释的那句。
@Configuration
public class MyBatisConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource(){
return new at.jdbc.pool.DataSource();
}
@Bean(name = "sqlSessionFactory")
public SqlSessionFactory sqlSessionFactoryBean() throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.tDataSource(dataSource());
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
sqlSessionFactoryBean.Resources("classpath:com/banry/pscm/tenant/persist/mapper/*.xml"));
Object();
}
}
MyBatisConfig
修鞋师傅@Configuration
@AutoConfigureAfter(MyBatisConfig.class)
public class MyBatisMapperScannerConfig {
public MapperScannerConfigurer mapperScannerConfigurer(){
MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer();
mapperScannerConfigurer.tSqlSessionFactoryBeanName("sqlSessionFactory");
mapperScannerConfigurer.tBaPackage("com.ant.persist.dao");
逃的成语return mapperScannerConfigurer;
}
}
MyBatisMapperScannerConfig
三、xml⾥的sql⽆效问题
问题描述:测试controller,如果sql写在l⽂件中的⽅法就说是绑定⽆效,如果sql是⽤注解写在mapper⾥的,就可以。
解决:第⼀步:选中web项⽬,右击Run As > Run Configurations,找到Spring Boot App下⾯运⾏的该项⽬,选择右侧classpath,如下图:
第⼆步:把l在的那个包,复制⼀份到web中,就可以了。
最后:项⽬中的bean的名称最好和数据库相同,以及l中import的bean名称要和项⽬中⾃动⽣成的bean相同。因为我遇到了,所以标注⼀句。
以上问题的解决办法只是粗略的解决,出现其他问题,还需具体分析,这只是我⽬前遇到的。