我试图让用户搜索用户名并输出结果,我想我几乎所有的东西我只是不确定我是否正确地使用了正确的类;
目前我在视图中
<p:inputText id="search" value="#{bean.userToDelete.getUsername}" />
<p:commandButton value="Search" action="#{bean.searchUser}" update="group" />
应该允许用户输入搜索词
然后转到“bean”,它是一个控制器 这是我目前所有的
public void searchUser() {
}
但在我的UserService(在我的业务层中)我有
public String usernameSearch(String username) {
List<User> usernameSearch = this.userFacade.usernameSearch(username);
return "/index";
}
我认为应该能够搜索db?
但是也有一个带
的UserFacade bean public List<User> usernameSearch(String searchString) {
Query q = em.createQuery("SELECT u FROM USERS U WHERE u.username = :search");
q.setParameter("search", searchString);
return q.getResultList();
}
我想我的问题是我是否拥有运行搜索查询所需的所有内容,如何将它们全部放在一起以使其正常工作?
对不起,我是新手,因为我用来做所有这一切的方法结果是错误的,目的是一旦我能理解这是如何工作我将能够做更多,但它只是理解如何处理工作atm
答案 0 :(得分:1)
JPQL使用实体和字段/属性名称。它永远不会使用表和列名称。而类,字段和别名都区分大小写,就像Java一样。
您的查询应该是:
select u from User u where u.name = :search
(假设映射的字段或getter为name
/ getName()
)