SpringBoot项目URL访问异常的问题处理
作者:小chen爱学java
SpringBoot项目URL访问异常
一,启动类与所在包的组件的位置,一定要在同一个包并行,不能直接在java下;
二,访问路径问题,要与Controller一致;
三,是不是项目本身的问题呢,访问URL后
{ "timestamp": "2023-06-16 13:13:21", "status": 500, "error": "Internal Server Error", "message": "Invalid bound statement (not found): com.atguigu.yygh.hosp.mapper.HospitalSetMapper.selectList", "path": "/admin/hosp/hospitalSet/findAll" }
问题在于:
"Invalid bound statement (not found): com.atguigu.yygh.hosp.mapper.HospitalSetMapper.selectList",
原因:
依赖放在父模块的pom.xml文件中,子模块没有继承到父模块的依赖
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>最新版本</version> </dependency>
SpringBoot项目中数据库的url 突然不能用
原因
我在启动springboot项目的时候,突然报了一个错误
***************************
APPLICATION FAILED TO START
***************************Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
Reason: Failed to determine a suitable driver class
Action:Consider the following:
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).
找了老半天,才发现bug所在,是因为我在之前为了引入java包下的mybatis的mapper.xml文件,在pom,xml中引用了一下的代码
<build> <resources> <resource> <!-- java文件中一般会忽略,因为我们的xml文件是放在java文件下 所以我们要将它忽略,也就是要打包--> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
所以说 在resources文件夹下的yaml文件没有能够打包进入
解决办法
<build> <resources> <resource> <!-- java文件中一般会忽略,因为我们的xml文件是放在java文件下 所以我们要将它忽略,也就是要打包--> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.yaml</include> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
这是我所遇到的问题的答案,下面是一些其他的解决方案。
其他解决方案
排除数据源的自动配置类
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
检查配置文件中的信息是否填写正确
datasource: # mysql数据库连接 type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql:///alibaba?serverTimezone=GMT%2B8&characterEncoding=utf-8 username: root password: root
剩下还有比如 符号转义,在properties和yaml文件中是不需要符号转义的,这也是它所强大的一点
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。