MyBatis Динамический запрос с аннотациями в Java

У меня есть метод интерфейса получения для получения данных из БД. Но у меня есть несколько "параметров фильтра", которые могут быть нулевыми. Это можно легко реализовать в Java, но я не хочу фильтровать список с сотнями тысяч объектов внутри.

Я понятия не имею, почему этот метод не работает. IntelliJ отмечает меня почти на каждой строчке. Делали ли вы это раньше, и можете ли вы показать мне, как это должно быть реализовано?

Я основал это на какой-то другой проблеме со стеком, но, к сожалению, это было неправильно.

@Select("<script>" +
            " SELECT * FROM usage_counter WHERE " +
            "<set>" +
            "<if test="apiConsumerId!=null">api_consumer=#{apiConsumerId},</if> " +
            "<if test="serviceId!=null">service=#{serviceId},</if> " +
            "<if test="rateplanId!=null">rateplan=#{rateplanId},</if> " +
            "<if test="status!=null">counter_status=#{status}</if> " +
            "</set>")
    @Results({
            @Result(property = "id", column = "id"),
            @Result(property = "date", column = "date"),
            @Result(property = "apiConsumer", column = "api_consumer", one = @One(select = "getApiConsumer")),
            @Result(property = "service", column = "service", one = @One(select = "getService")),
            @Result(property = "rateplan", column = "rateplan", one = @One(select = "getRateplan")),
            @Result(property = "counterStatus", column = "counter_status"),
            @Result(property = "ratingProcessId", column = "rating_process_id"),
            @Result(property = "value", column = "value"),
            @Result(property = "createdDate", column = "created_date"),
            @Result(property = "modifiedDate", column = "modified_date")
    })
    List<UsageCounter> getUsageCounterList(@Param("apiConsumerId") Integer apiConsumerId, @Param("serviceId") Integer serviceId, @Param("rateplanId") Integer rateplanId, @Param("status") UsageCounterDetailsDto.Status status);

0 ответов

Другие вопросы по тегам