Необходимо написать метод, который ищет содержание заданной подстроки в поле. Если использовать просто findByContent (к примеру) то ищется полное совпадение, когда как в моем случае, необходимо найти contains а не equals.
public interface EntryRepo extends CrudRepository<Entry, Integer> {
List<Entry> findByContent(String content);
List<Entry> findByTitle(String title);
List<Entry> findById(int id);
}
Если вы используете Spring Data JPA, то для создания нужного вам запроса из имени метода, нужно использовать такие ключевые слова как StartingWith, EndingWith и Containing. Т.е. ваш метод будет следующим:
List<Entry> findByContentContaining(String partOfContent);
StartingWith соответствует SQL where content like partOfContent%
EndingWith соответствует SQL where content like %partOfContent
Containing соответствует SQL where content like %partOfContent%
У Spring хорошая документация и обо всех ключевых словах для создания запросов из методов вы можете узнать из документации. Гуглить одно из самых важных умений программиста =)
Напишите свой запрос
@Query("SELECT * FROM Table WHERE name LIKE %:key% OR desc LIKE %:key%", nativeQuery = true)
List<Entry> findByKeyword(@Param("key") String key);
Что то в этом духе
Сборка персонального компьютера от Artline: умный выбор для современных пользователей