gpt4 book ai didi

java - 问题!实体数据未使用数据访问对象 (dao) 和 JPA 获取?

转载 作者:行者123 更新时间:2023-12-01 12:50:34 26 4
gpt4 key购买 nike

我有这个 Dao,它根据用户 ID 获取事件。它返回事件对象。

public enum Dao {
INSTANCE;
public List<EventsDetail> getevents(String userId) {
EntityManager em = EMFService.get().createEntityManager();
Query q = em.createQuery("select t from EventsDetail t where t.MemberId = :userId");
q.setParameter("userId", userId);
@SuppressWarnings("unchecked")
List<EventsDetail> events = q.getResultList();
return events;
}
}

这里我有一个jsp页面,它调用dao,因为我已经导入了dao类。在这里,我使用了 try 和 catch 来抛出异常,其中我得到了空指针异常。

<%
Dao dao = Dao.INSTANCE;
UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
List<EventsDetail> events = new ArrayList();
if (user != null) {
pageContext.setAttribute("user", user);
events = dao.getevents(user.getUserId());
%>
}....

<%
try{
for (EventsDetail event : events) {
pageContext.setAttribute("title", event.Title());
pageContext.setAttribute("place", event.getPlace());
pageContext.setAttribute("category", event.Category());
pageContext.setAttribute("cdate", event.Cdate());
%>
<div class="row">
<span class="r1"><%=count%></span>
<span class="r2">${fn:escapeXml(cdate)}</span>
<span class="r2">${fn:escapeXml(place)}</span>
<span class="r3">${fn:escapeXml(title)}</span>
<span class="r4">${fn:escapeXml(category)}</span>

</div>
<% }
} catch (Exception e)
{
System.out.println("Exception:" + e);
}
%>

问题是我从数据存储中仅获取空数据,其中数据已经存在于数据存储中。

最佳答案

我认为问题出在您的 getEvents 方法上。

您可以尝试执行以下操作:

public enum Dao {
INSTANCE;
public List<EventsDetail> getevents(String userId) {
EntityManager em = EMFService.get().createEntityManager();
Query q = em.createQuery("select t from EventsDetail t where t.MemberId = " + userId);
q.setParameter("userId", userId);
@SuppressWarnings("unchecked")
List<EventsDetail> events = q.getResultList();
return events;
}
}

并确保您传递了正确的 userId。

关于java - 问题!实体数据未使用数据访问对象 (dao) 和 JPA 获取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24242871/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com