我已经检查过了没有任何问题,mybatisX插件也正常提示跳转,但是就是会报这个错误,但是使用@Select注解后又没有任何问题,我的路径是没有错误的,正常放在application.yml同级的mappers文件夹下
LoginMapper.java的代码
@Mapper
public interface LoginMapper {
/**
* 登录成功或失败
* @param loginDto 登录对象
* @return 返回loginDto对象
*/
LoginDto login(@Param("loginDto") LoginDto loginDto);
}
LoginMapper.xml的代码
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.guli.collegemanagetrailing.mapper.LoginMapper">
<resultMap id="loginMap" type="com.guli.collegemanagetrailing.dto.LoginDto">
<result property="username" column="username" />
<result property="password" column="password" />
<result property="jurisdictionId" column="jurisdiction_id" />
<result property="status" column="status" />
</resultMap>
<select id="login" resultMap="loginMap">
SELECT `username`,`password`,`jurisdiction_id`,`status` FROM `member` WHERE `username` = #{loginDto.username}
</select>
</mapper>
启动类上也加入了mapperscan
@SpringBootApplication
@MapperScan("com.guli.collegemanagetrailing.mapper")
@EnableWebSecurity
public class CollegeManageTrailingApplication {
public static void main(String[] args) {
SpringApplication.run(CollegeManageTrailingApplication.class, args);
}
}
把你的 @Mapper 注解去了试试
你这个mapper.xml没有编译进target文件夹,在Pom.xml设置一下吧
不知道你这个问题是否已经解决, 如果还没有解决的话:尝试解决这个问题的第一步是检查映射文件路径。请确保映射文件(LoginMapper.xml
)位于application.yml
的同级目录下的mappers
文件夹中。
然后,检查映射文件的文件名和路径是否与LoginMapper.java
中的注解和方法名匹配。这是为了确保映射文件可以正确加载到Mybatis中。
接下来,请检查application.yml
中的mapperscan
配置。确保指定了正确的包路径,以便Mybatis能够正确加载并扫描到映射文件。
如果以上步骤都没有解决问题,接下来可以检查映射文件中的绑定语句。确保映射文件中的<select>
语句的id与LoginMapper.java
中的方法名匹配。还要确保映射文件中的命名空间(namespace)已正确配置为com.guli.collegemanagetrailing.mapper.LoginMapper
。
最后,请检查application.yml
中的Mybatis配置是否正确。确保数据库配置正确无误。
如果以上解决方案都不能解决问题,那么可能需要进一步了解错误信息和相关代码,以便进行更深入的分析和帮助。