У меня есть таблица информации о студентах с колонкой Имя, пол, класс, курс, класс и т. Д. Я хотел бы реализовать фильтр, требующий поиска по имени, по классу, по курсу, по классу ....
Я использую mybatis, запрашивая БД .. запрос очень прост.Но мне нужно написать несколько запросов для реализации этих функций поиска.
Select * FROM TB where name =#{name} ,
Select * FROM TB where class =#{class},
Select * FROM TB where course =#{course},
Select * FROM TB where grade =#{grade}
....
На уровне сервиса необходимо реализовать несколько функций.
List<Student> getStudentByName(String name);
List<Student> getStudentByCourse(String course);
... bla bla ...
Вопрос:
Это простой способ реализовать это требование?
то, что я ожидал, это:
на уровне @service, функция может обрабатывать все параметры передачи, например:
Поиск по списку (someParam);
У меня возникла идея использовать mybatis.
SELECT * FROM TB WHERE 1 =1
<if name!=null>
AND name = #{name}
</if>
Я не уверен, что это хорошая практика для приближения.