0 امتیاز
قبل در برنامه نویسی توسط (45 امتیاز)
سلام به همه دوستان عزیز

سوالی داشتم اگر لطف بفرمایید راهنمایی کنید ممنون میشم

من یک war فایل از پروژه جاوای خودم ساختم و در tomcat گذاشتم و آن را اجرا کردم و بالا آمد ، اما سوال من اینجاس میخوام بعد از start tomcat و بالا آمدن war فایل چند کار به صورت خودکار در پروژه انجام بشه مثل استارت شدن thread به نظر شما چکار باید انجام بدم ؟

1 پاسخ

0 امتیاز
قبل توسط (596 امتیاز)

كافيه يك كلاس جديد از نوع ServletContextListener تعريف كنيد و متد contextInitialized رو همون جوري كه مي خواهيد override كنيد. اين متد وقتي اپليكيشن بالا مياد اجرا ميشه.

public class ExampleContextListener implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent servletContextEvent) {
        System.out.println("Starting up!");
    }

    @Override
    public void contextDestroyed(ServletContextEvent servletContextEvent) {
        System.out.println("Shutting down!");
    }
}

فراموش نشه كه اين كلاس بايد در web.xml تحت عنوان يك listener تعريف شود.

<listener>  
    <listener-class>
        com.test.ExampleContextListener
    </listener-class>
</listener>  

يا اينكه اگر از Servlet 3 به بعد استفاده مي كنيد از

@WebListener

بالاي تعريف كلاس استفاده كنيد

قبل توسط (45 امتیاز)
ممنونم از راهنمایی شما
روشی که معرفی کردین جواب کار منو میده اما نتوانستم داخلش اینترفیس که متد مورد نظرم داخلش هست Autoware  کنم در واقع مقدارش null میشه ،
در این روش چطور اینترفیس Autoware کنم ؟

ممنونم از لطف شما .
قبل توسط (596 امتیاز)
برای گرفتن یک bean در listener ها می تونید به جای Autowire مستقیم bean رو از spring بگیرید:
      WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(event.getServletContext());
      MyBean myBean = (MyBean)wac.getBean("myBean");

سوالات مشابه

0 امتیاز
2 پاسخ 1.0هزار بازدید
0 امتیاز
1 پاسخ 412 بازدید
+1 امتیاز
1 پاسخ 431 بازدید
0 امتیاز
1 پاسخ 409 بازدید
0 امتیاز
2 پاسخ 1.2هزار بازدید
سوال شده 8 سال قبل در برنامه نویسی توسط arsam (23 امتیاز)
0 امتیاز
1 پاسخ 289 بازدید
0 امتیاز
1 پاسخ 1.1هزار بازدید
+1 امتیاز
1 پاسخ 291 بازدید
0 امتیاز
1 پاسخ 403 بازدید
0 امتیاز
1 پاسخ 1.0هزار بازدید
...