Java 休眠通配符,只返回表上的第一项

Java 休眠通配符,只返回表上的第一项,java,hibernate,Java,Hibernate,在我的项目中,我需要按书名搜索这本书。。 下面的代码仅给出表中的第1项,而不是具有相同字符的所有项 Query query = session.createQuery("from Book b where str(b.name) like :title"); query.setParameter("title",title+"%"); books=query.list(); 只需在开头添加通配符。目前,它显示表中以参数开头的项 query.se

在我的项目中,我需要按书名搜索这本书。。 下面的代码仅给出表中的第1项,而不是具有相同字符的所有项

Query query = session.createQuery("from Book b where str(b.name) like :title");
            query.setParameter("title",title+"%");
            books=query.list();

只需在开头添加通配符。目前,它显示表中以参数开头的项

 query.setParameter("title",("%" +title+"%"));

检查是否区分大小写。数据库中的数据区分大小写。使用查询式
(“出自b书,其中upper(str(b.name))类似upper(:title”)这将使您的搜索不区分大小写。

所有数据都是小写的