对于我的大学项目,我必须构建一个自定义 JSP/Servlet MVC 应用程序,因此我不能使用诸如 Struts 或 Spring 之类的框架。我已经有了 FrontController、Command、Service、DAO、业务层。
假设我想创建一个带有侧边栏的网站,并且在侧边栏中有以下小部件:Members
, Who's Online
, Recent Comments
. 每个小部件通过Command
-> Service
->访问数据库Dao
。
我希望信息在整个应用程序中不断显示在侧边栏中。问题是我不知道该怎么做。我知道如何通过处理 GET/POST 请求来显示信息,但如果有意义的话,我不知道如何在没有 GET/POST 请求的情况下显示信息(来自数据库)?
我尝试过的几种方法不起作用:
1)在加载homepage
和调用HomeCommand
调用ListUsers
时UserDao
,然后将它们存储到会话中。但是如果用户从不同的 URL 进入站点,ListUsers 将不会被存储到会话中。
2) 创建一个单独的Command
: MembersCommand
, WhosOnlineCommand
, RecentCommentsCommand
. 然后使用JSTL
include
to includeFrontController
并让它调用Command
. 但包括想要一个.jsp
<jsp:include page="FrontController/members" />
Fragment "FrontController/members" was not found at expected path /MyApplication/WebContent/WEB-INF/FrontController/memmbers
.jsp's
3) 使用 Java 代码为每个小部件 ( members.jsp
, ) 创建个人whosonline.jsp
以访问Dao
. 然后使用JSTL include
. 但是我怎样才能让它通过FrontController
jsp中的Java不是一个很大的禁忌吗?
4)使用<jsp:forward page="" />
,但这给了我一个空白页?
我没主意了?