求助,SpringBoot+mybatis框架搭建的问题

求助各位大佬,我搭了一个SpringBoot+mybatis的框架,目前跑的时候出现了点问题,异常提示的是Controller层里没有成功将StudentMapper注入,但是我确定注解啥的应该是都写上的,而且配置文件也应该是全的吧。。。我自己感觉是没问题的。然后我对异常一层层分析下去,最后定位到应该是在注入dao层时没有成功解析mapper.xml,最后我直接对源码进行打断点进行debug,发现是执行到这里出了问题,然后就被catch后抛出异常了 。求问大佬能不能帮我看看是不是配置文件上出的问题还是哪里的问题,我把比较关键可能出错的地方都贴一下,包括控制台的关键异常信息

先给控制台抛出的异常:
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'studentMapper' defined in file [D:\Documents\Desktop\hjs\target\classes\com\hjs\graduation\mapper\StudentMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is org.springframework.core.NestedIOException: Failed to parse config resource: class path resource [generatorConfig.xml]; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.lang.NullPointerException

可能有点长,我摸索了半天最后猜测可能问题是最后出在对mapper文件的解析上,我通过对框架源码进行打断点,debug后发现当执行到源码的这个位置时抛出了异常:

下面给一下项目的架构和关键部分的代码,求各位牛客大佬分析下哪里出了错,小弟真的不胜感激,都弄了好久了55
dao层:


controller层:



SpringBoot项目入口:



application.yml配置文件:


对应dao的mapper.xml文件



项目架构:


#Spring#
全部评论
顶一下,大佬们能看下这是什么问题么?
点赞
送花
回复
分享
发布于 2019-10-26 11:33
代码没有截全,都是截的可能会带来注入失败的问题。
点赞
送花
回复
分享
发布于 2019-10-26 11:38
滴滴
校招火热招聘中
官网直投
generatorConfig.xml贴一下。大概是这个文件配置有问题,没有配properties。
点赞
送花
回复
分享
发布于 2019-10-26 11:44
把respos注解换成mapper
点赞
送花
回复
分享
发布于 2019-10-26 11:45
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"         "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <!--上面URL可能报错,但不影响--> <generatorConfiguration>     <!--导入属性配置-->     <properties resource="generator.properties"/>     <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包-->     <classPathEntry             location="C:\Users\asus\.m2\repository\mysql\mysql-connector-java\5.1.29\mysql-connector-java-5.1.29.jar"/>     <context id="DB2Tables"  targetRuntime="MyBatis3">         <!--注释-->         <commentGenerator>             <property name="suppressDate" value="true"/> <!-- 是否生成注释代时间戳 true:是 : false:否 -->             <property name="suppressAllComments" value="true"/>  <!--是否去除自动生成的注释 true:是 : false:否-->         </commentGenerator>         <!--数据库链接URL,用户名、密码 -->         <jdbcConnection driverClass="${driver}"                         connectionURL="${url}"                         userId="${username}"                         password="${password}">         </jdbcConnection>         <!--类型转换-->         <javaTypeResolver>             <property name="forceBigDecimals" value="false"/> <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->         </javaTypeResolver>         <!-- 生成模型的包名和位置-->         <javaModelGenerator targetPackage="${modelPackage}"                             targetProject="${modelProject}">         </javaModelGenerator>         <!-- 生成映射文件的包名和位置-->         <sqlMapGenerator targetPackage="${sqlPackage}"                          targetProject="${sqlProject}">         </sqlMapGenerator>         <!-- 生成DAO的包名和位置-->         <javaClientGenerator targetPackage="${mapperPackage}"                              targetProject="${mapperProject}"                              type="XMLMAPPER">         </javaClientGenerator>         <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->         <table schema=""                tableName="${table}"                enableCountByExample="false"                enableUpdateByExample="false"                enableDeleteByExample="false"                enableSelectByExample="false"                selectByExampleQueryId="false">         </table>     </context> </generatorConfiguration>
点赞
送花
回复
分享
发布于 2019-10-26 11:47
driver = com.mysql.jdbc.Driver url = jdbc:mysql://localhost:3306/gra?useUnicode=true&characterEncoding=utf-8 username=root password=root #entity包名和目录 modelPackage=com.hjs.graduation.model modelProject=src/main/java #sqlmap包名 和 resources目录 sqlPackage=sqlmap sqlProject=src/main/resources #mapper包名 和 java目录 mapperPackage=com.hjs.graduation.mapper mapperProject=src/main/java table=student
点赞
送花
回复
分享
发布于 2019-10-26 11:48
求牛客大佬帮帮忙呀
点赞
送花
回复
分享
发布于 2019-10-26 13:05

相关推荐

点赞 3 评论
分享
牛客网
牛客企业服务