Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在应用程序启动时触发servlet执行?_Java_Jsp_Servlets_Model View Controller - Fatal编程技术网

Java 如何在应用程序启动时触发servlet执行?

Java 如何在应用程序启动时触发servlet执行?,java,jsp,servlets,model-view-controller,Java,Jsp,Servlets,Model View Controller,[使用JEE、MVC、servlet和JSP] 在web.xml中,我指定home.jsp页面作为应用程序入口点: <welcome-file-list> <welcome-file>/home.jsp</welcome-file> </welcome-file-list> /home.jsp 在我的应用程序中,我有下一个servlet: @WebServlet("/show") public class ShowPostsContr

[使用JEE、MVC、servlet和JSP] 在
web.xml
中,我指定
home.jsp
页面作为应用程序入口点:

<welcome-file-list>
    <welcome-file>/home.jsp</welcome-file>
</welcome-file-list>

/home.jsp
在我的应用程序中,我有下一个servlet:

@WebServlet("/show")
public class ShowPostsController extends HttpServlet {

   private static final long serialVersionUID = 1L;

   @EJB
   private PostDAOLocal postDao;

   protected void doGet(HttpServletRequest request, HttpServletResponse response)  
   throws ServletException, IOException 
   {

         List<Post> posts = null;

         String sort = request.getParameter("sort"); 
         // current page number
         int page = Integer.parseInt(request.getParameter("page")); 
         // the number of entries to show on a "page" 
         int postsPerPage = Integer.parseInt(request.getParameter("postsPerPage")); 

         if(sort.equals("byVisitors"))
          posts = postDao.getMostVisitedPosts();
         else if(sort.equals("byComments"))
          posts = postDao.getMostCommentedPosts();
         else
              posts = postDao.getNewestPosts(page, postsPerPage);  

        request.setAttribute("posts", posts);
        RequestDispatcher dispatcher = request.getRequestDispatcher("home.jsp");
        dispatcher.forward(request, response);
    }
@WebServlet(“/show”)
公共类ShowPostsController扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
@EJB
私人邮政局本地邮政局;
受保护的void doGet(HttpServletRequest请求、HttpServletResponse响应)
抛出ServletException、IOException
{
列表帖子=null;
String sort=request.getParameter(“sort”);
//当前页码
int page=Integer.parseInt(request.getParameter(“page”);
//“页面”上显示的条目数
int postsPerPage=Integer.parseInt(request.getParameter(“postsPerPage”);
if(排序等于(“按访客”))
posts=postDao.getMostVisitedPosts();
else if(sort.equals(“byComments”))
posts=postDao.getMostCommentedPosts();
其他的
posts=postDao.getNewestPosts(第页,postsPerPage);
request.setAttribute(“posts”,posts);
RequestDispatcher=request.getRequestDispatcher(“home.jsp”);
转发(请求、响应);
}

现在,在应用程序启动时,如何在加载
home.jsp
页面之前调用此servlet?(因为我想在
home.jsp
上显示从数据库提取的一些数据,并在servlet的
doGet
方法中设置为请求属性)

在应用程序启动时加载servlet吗?您需要编辑web.xml

<servlet>
<servlet-name>******</servlet-name>
<display-name>******</display-name>
<servlet-class>******</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet> 

******
******
******
1.

在应用程序启动时加载servlet您需要编辑web.xml吗

<servlet>
<servlet-name>******</servlet-name>
<display-name>******</display-name>
<servlet-class>******</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet> 

******
******
******
1.

在应用程序启动时加载servlet您需要编辑web.xml吗

<servlet>
<servlet-name>******</servlet-name>
<display-name>******</display-name>
<servlet-class>******</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet> 

******
******
******
1.

在应用程序启动时加载servlet您需要编辑web.xml吗

<servlet>
<servlet-name>******</servlet-name>
<display-name>******</display-name>
<servlet-class>******</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet> 

******
******
******
1.
现在,在应用程序启动时,如何在加载home.jsp页面之前调用这个servlet

如果“在应用程序启动时”的意思是“当用户使用默认路径首次访问应用程序时”,并且您只希望在默认情况下调用servlet而不是jsp,那么请尝试在
欢迎文件列表中用
/show
替换
/home.jsp
,例如:

<welcome-file-list>
    <welcome-file>/show</welcome-file>
</welcome-file-list>
现在,在应用程序启动时,如何在加载home.jsp页面之前调用这个servlet

如果“在应用程序启动时”的意思是“当用户使用默认路径首次访问应用程序时”,并且您只希望在默认情况下调用servlet而不是jsp,那么请尝试在
欢迎文件列表中用
/show
替换
/home.jsp
,例如:

<welcome-file-list>
    <welcome-file>/show</welcome-file>
</welcome-file-list>
现在,在应用程序启动时,如何在加载home.jsp页面之前调用这个servlet

如果“在应用程序启动时”的意思是“当用户使用默认路径首次访问应用程序时”,并且您只希望在默认情况下调用servlet而不是jsp,那么请尝试在
欢迎文件列表中用
/show
替换
/home.jsp
,例如:

<welcome-file-list>
    <welcome-file>/show</welcome-file>
</welcome-file-list>
现在,在应用程序启动时,如何在加载home.jsp页面之前调用这个servlet

如果“在应用程序启动时”的意思是“当用户使用默认路径首次访问应用程序时”,并且您只希望在默认情况下调用servlet而不是jsp,那么请尝试在
欢迎文件列表中用
/show
替换
/home.jsp
,例如:

<welcome-file-list>
    <welcome-file>/show</welcome-file>
</welcome-file-list>


好的,我已经在@WebServlet中添加了
loadOnStartup=1
作为参数(我正在使用注释)。但现在,如果您查看servlet内容,我正在从数据库读取一些数据(
posts
),将其作为
request.setAttribute(“posts”,posts)添加到请求中
并转发到
home.jsp
。如何在应用程序启动时执行相同的操作?因为在
home.jsp
上,我正在显示那些
帖子
数据。为什么不在servlet上设置会话中需要的任何内容。此外,在home.jsp上,您可以在应用程序启动时从会话访问所需的数据上面没有
请求
那么我如何使用会话呢?是的。你到底需要做什么?我肯定会有另一种方法来做。如果你查看servlet
doGet
方法内容,我想在appstart上调用
DAO
对象上的方法
getNewestPosts
,并以某种方式传递结果到我正在读取这些数据的
home.jsp
页面。好的,我在@WebServlet中添加了
loadOnStartup=1
作为参数(我正在使用注释)。但现在,如果您查看servlet内容,我正在从数据库读取一些数据(
posts
),将其作为
request.setAttribute(“posts”,posts)添加到请求中
并转发到
home.jsp
。如何在应用程序启动时执行相同的操作?因为在
home.jsp
上,我正在显示那些
帖子
数据。为什么不在servlet上设置会话中需要的任何内容。此外,在home.jsp上,您可以在应用程序启动时从会话访问所需的数据上面没有
请求
那么我如何使用会话呢?是的。你到底需要做什么?我肯定会有另一种方法来做。如果你查看servlet
doGet
方法内容,我想在appstart上调用
DAO
对象上的方法
getNewestPosts
,并以某种方式传递结果到我正在读取这些数据的
home.jsp
页面。好的,我在@WebServlet中添加了
loadOnStartup=1
作为参数(我使用ann