【发布时间】:2014-08-06 05:30:50
【问题描述】:
我有这个根据用户 ID 获取事件的 Dao。它返回事件对象。
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;
}
}
这里我有一个调用 dao 的 jsp 页面,因为我已经导入了 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);
}
%>
问题是我从数据存储中获取的只是空数据,其中数据已经存在于数据存储中。
【问题讨论】:
-
有什么理由使用 ENUM 吗?只是好奇... :)
-
我只是初学者,从这个链接(vogella.com/tutorials/GoogleAppEngineJava/article.html)创建这种项目。因为他使用了枚举。所以我用来学习一些新东西。