我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?

{ "timestamp": "2025-10-02T11:04:25.374+0000", "status": 500, "error": "Internal Server Error", "message": "Invalid bound statement (not found): com.daqin.demo251001.mapper.UserMapper.getByUserName", "path": "/goods/getByUserName" }我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?

错误分析

根据错误信息 `Invalid bound statement (not found): com.daqin.demo251001.mapper.UserMapper.getByUserName`,这是一个MyBatis绑定异常,表示找不到对应的SQL语句。

可能原因及解决方案

1. Mapper XML文件位置或命名问题

  • 确保 UserMapper.xml(file://D:\SUM\代码\demo251001\target\classes\generator\mapper\UserMapper.xml) 文件位于正确目录:`src/main/resources/mapper/`

  • 文件名必须与Mapper接口名一致:UserMapper.xml(file://D:\SUM\代码\demo251001\target\classes\generator\mapper\UserMapper.xml)

2. XML文件中缺少SQL定义

在 UserMapper.xml(file://D:\SUM\代码\demo251001\target\classes\generator\mapper\UserMapper.xml) 中添加 getByUserName(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\mapper\UserMapper.java#L16-L16) 方法对应的SQL语句:

```xml

<select id="getByUserName" parameterType="string" resultType="com.daqin.demo251001.vo.GoodsMsgVo">

SELECT * FROM user WHERE name = #{name}

</select>

```

3. 检查Mapper接口与XML的匹配

确保以下几点:

  • UserMapper(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\mapper\UserMapper.java#L14-L17) 接口中的 getByUserName(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\mapper\UserMapper.java#L16-L16) 方法签名与XML中定义一致

  • XML文件的 `namespace` 属性值为 com.daqin.demo251001.mapper.UserMapper(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\mapper\UserMapper.java#L14-L17)

  • XML中 `<select>` 标签的 id(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\domain\User.java#L14-L15) 属性值为 getByUserName(file://D:\SUM\代码\demo251001\src\main\java\com\daqin\demo251001\mapper\UserMapper.java#L16-L16)

4. 检查MyBatis配置

确认 application.yml(file://D:\SUM\代码\demo251001\src\main\resources\application.yml) 中的MyBatis配置正确:

```yaml

mybatis-plus:

mapper-locations: classpath:mapper/*.xml

```

完成以上检查和修改后重启应用,问题应该能够解决。

相关推荐
考虑考虑4 小时前
JDK26中的Map.ofLazy
java·后端·java ee
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天7 小时前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源