Springboot引入Mybatis 部署后可能出现的连接不了数据库问题
当你满心欢喜的把打好的war包部署到tomcat里,远程测试的时候发现怎么也连不了数据库。然后看下tomcat的输出日志,我们可以发现存在下面的问题
Logging initialized using 'class org.apache.ibatis.logging.stdout.StdOutImpl' adapter.
Class not found: org.jboss.vfs.VFS
JBoss 6 VFS API is not available in this environment.
Class not found: org.jboss.vfs.VirtualFile
VFS implementation org.apache.ibatis.io.JBoss6VFS is not valid in this environment.
Using VFS adapter org.apache.ibatis.io.DefaultVFS
Find JAR URL: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/domain/
Not a JAR: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/domain/
Reader entry: User.class
Listing file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/domain/
Find JAR URL: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/domain/User.class
Not a JAR: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/domain/User.class
Reader entry: 漱壕 4 K 6
Checking to see if class domain.User matches criteria [is assignable to Object]
Find JAR URL: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/dao/
Not a JAR: file:/C:/apache-tomcat-9.0.35/webapps/webApp/WEB-INF/classes/dao/
Reader entry: UserDao.class
Reader entry: UserDao.xml
分析上面的日志 ,我们可以发现是你创建的.class文件里,可能是你的Mybatis的配置文件里面没有指定实体类
解决这个问题
我们需要在application.properties配置文件中配置以下内容
mybatis.typeAliasesPackage=com.jmu.javaweb_jibite.domain
注:typeAliasesPackage是实体类的包路径;
做完这些以后 就可以重新打包部署 然后重新测试 发现问题解决了