<select id="getToBePaidByDataStatus" parameterType="String" resultMap="DigitalBaohanResult"> select count(*) from DIGITAL_BAOHAN where DATA_STATUS = #{dataStatus} </select> 报错 java.lang.IllegalStateException: Ambiguous handler methods mapped for '/digitalBaohan/getToBePaidByDataStatus': {public com.ruoyi.common.core.web.domain.AjaxResult com.baohan.controller.DigitalBaohanController.getToBePaidByDataStatus(java.lang.Long), public com.ruoyi.common.core.web.domain.AjaxResult com.baohan.controller.DigitalBaohanController.getInfo(java.lang.Long)} at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:432) at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:383) at org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:125) at org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:67) at org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:498) at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1264) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1046) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
时间: 2023-10-10 12:08:47 浏览: 129
这个报错提示有两个处理方法被映射到了同一个URL,一个是`com.baohan.controller.DigitalBaohanController.getToBePaidByDataStatus(java.lang.Long)`,另一个是`com.baohan.controller.DigitalBaohanController.getInfo(java.lang.Long)`。你需要检查一下这两个方法的RequestMapping注解的value值是否有重复或者有其他问题。另外,建议你将这两个方法的参数类型改成 `String` 类型,因为你的 SQL 语句`where DATA_STATUS = #{dataStatus}`中传入的是一个字符串类型的参数。
相关问题
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.phonemarket.mapper.BannerMapper"> <resultMap type="Banner" id="BaseResultMap"> <id property="bannerId" column="banner_id" /> <result property="bannerName" column="banner_name" /> <result property="bannerUrl" column="banner_url" /> <result property="bannerImg" column="banner_img" /> <result property="bannerState" column="banner_state" /> </resultMap> <insert id="addBanner" parameterType="Banner"> insert into banner(banner_name,banner_url,banner_img) values(#{bannerName},#{bannerUrl},#{bannerImg}) </insert> <update id="deleteBanner" parameterType="java.lang.Integer"> update banner set banner_state=-1 where banner_id=#{id} </update> <update id="changeBannerState" parameterType="java.lang.Integer"> update banner set banner_state=#{0} where banner_id=#{1} </update> <update id="updateBanner" parameterType="Banner"> update banner <set> <if test="bannerName!=null"> banner_name=#{bannerName}, </if> <if test="bannerUrl!=null"> banner_url=#{bannerUrl}, </if> <if test="bannerImg!=null"> banner_img=#{bannerImg} </if> </set> where banner_id=#{bannerId} </update> <select id="findBannerById" parameterType="java.lang.Integer" resultMap="BaseResultMap"> select * from banner where banner_id=#{id} </select> <select id="findAllBanner" resultMap="BaseResultMap"> select * from banner where banner_state > 0 </select> <select id="findAllBannerByLikeName" parameterType="java.lang.String" resultMap="BaseResultMap"> select * from banner where banner_state > 0 and banner_name like '%${value}%' </select> <select id="findAllShowBanner" resultMap="BaseResultMap"> select * from banner where banner_state=1 </select> </mapper>
这是一个 MyBatis 的 XML 配置文件,用于映射 Banner 对象和 banner 数据库表之间的关系。文件中定义了一个 namespace 为 com.phonemarket.mapper.BannerMapper 的 Mapper,并包含了一些 SQL 语句,如插入、删除、更新和查询等。括号中的参数类型表示 SQL 语句中的参数类型,resultMap 定义了查询结果与 Banner 对象之间的映射关系。其中BaseResultMap是一个标识符,表示基本的结果映射,对应了Banner类中的属性名称。在 SQL 语句中,#{param} 表示参数占位符,${value} 表示变量占位符。
<select id="getQueryBook" parameterType="String" resultMap="bookResult"> select * from book where book_name = #{bookName} </select>改为模糊查询
可以将SQL语句修改为:
```
<select id="getQueryBook" parameterType="String" resultMap="bookResult">
select * from book where book_name like CONCAT('%',#{bookName},'%')
</select>
```
这样就可以进行模糊查询,匹配包含关键字的书籍名称。
阅读全文
相关推荐















