Java 使用EntityManager.createQuery在DAO实现中制定sql查询时遇到问题
我在我的数据库中有一个方法,该方法旨在从数据库中获取属于特定用户的所有书籍的列表。。。方法如下所示:Java 使用EntityManager.createQuery在DAO实现中制定sql查询时遇到问题,java,spring-boot,hibernate-entitymanager,Java,Spring Boot,Hibernate Entitymanager,我在我的数据库中有一个方法,该方法旨在从数据库中获取属于特定用户的所有书籍的列表。。。方法如下所示: @Override public List<>BooksList> findListsOf(String userId) { Query query = em.createQuery("SELECT * from BooksList where booksListOwner = unserid"); List<BooksList>
@Override
public List<>BooksList> findListsOf(String userId) {
Query query = em.createQuery("SELECT * from BooksList where booksListOwner = unserid");
List<BooksList> resultsList = query.getResultList();
if (resultsList.isEmpty()) throw new NotFoundException();
return resultsList;
}
@覆盖
公共ListBooksList>findListsOf(字符串用户ID){
Query Query=em.createQuery(“从BooksList中选择*,其中booksListOwner=unseid”);
List resultsList=query.getResultList();
如果(resultsList.isEmpty())抛出新的NotFoundException();
返回结果列表;
}
IntelliJ正在向我显示此错误:
应为表达式或独立表达式,获取“*”
我的sql语句在这里有什么问题
比尔,
Mic您需要指定一个标识变量,而不是SQL卡
List<BooksList> resultsList = em.createQuery(
"SELECT b from BooksList b where booksListOwner = :userId")
.setParameter("userId", userId)
.getResultList();
List resultsList=em.createQuery(
“从BookListOwner=:userId的BookListB中选择b”
.setParameter(“userId”,userId)
.getResultList();