w Javie Konstruktora służy do inicjowania dlatego potrzebujemy init() dla inicjalizacji .... To pytanie było zadawane w wywiadzieDlaczego potrzebujemy metody Init() w serwletach, gdy serwlety mają to Construtor?
Odpowiedz
konstruktor jest dla normalnego inicjalizacji Java obiektu (choć oczekuje się zazwyczaj Servlet
realizacja mieć konstruktor no-arg).
Metoda init()
jest metodą dostarczaną przez interfejs Servlet
, który uruchamia kontener serwletu w celu skonfigurowania Servlet
. Kontener serwletu udostępnia obiekt ServletConfig
, który daje instancji Servlet
dostęp do ServletContext
i innych elementów konfiguracji z deskryptora wdrażania.
Konstruktor nie jest częścią cyklu życia serwletu.
Jak na Javadocs
startowych i niszczą, zarządzanie zasobami, które są przeznaczone dla życia serwletu
i
Przedmiotem ServletConfig można nadal pobierane przez getServletConfig().
Init()
metoda jest wywoływana przez kontener serwletu, aby wskazać serwletowi, że serwlet jest uruchamiany.
Kontener serwletu wywołuje metodę init dokładnie jeden raz po utworzeniu serwletu. Metoda init musi zakończyć się pomyślnie, zanim serwlet będzie mógł odbierać żądania. Z tego powodu potrzebujemy metody init()
.
sprawdź te linki:
http://www.tutorialspoint.com/servlets/servlets-life-cycle.htm
http://docs.oracle.com/javaee/5/api/javax/servlet/Servlet.html
metoda init()
jest częścią Servlet
i ServletConfig
protokołu. możesz zrobić to, co jest związane z kontekstem sieciowym w init()
i co jest prywatne w klasie Servlet w konstruktorze.
1) są używane przez konstruktorów „Web pojemnika (np Tomcat'a, WebSphere itp) do wystąpienia GenericServlet/HttpServlet.
2) rolę "Servlet.init()", metoda wstrzykiwać zdefiniowane w web.xml. Tak, możesz także zdefiniować parametry poziomu serwletu w konstruktorze, ale potem, jako programista, będziesz niepotrzebnie inwestować czas w robienie tych samych rzeczy, które mogą być wykonane niejawnie dla ciebie przez (Container + Servlet API)
3) Ponadto, "Servlet.init()" is also used by web container to inject "ServletContext" object gdzie nie można użyć nstructor w tym celu.
- 1. Dlaczego potrzebujemy metody ContinueWith?
- 2. Metoda równoważnika metody init() w JAX-RS
- 3. Dlaczego potrzebujemy tego specjalnego operatora ===?
- 4. Dlaczego "Init" w std :: ios_base :: Init uppercase?
- 5. Dlaczego metody nie mają równości odniesienia?
- 6. Dlaczego metody ruby mają zakres leksykalny?
- 7. Dlaczego potrzebujemy włókna
- 8. dlaczego potrzebujemy ClassMethods i InstanceMethods?
- 9. Serwlety asynchroniczne vs. Serwlety synchroniczne
- 10. Dlaczego potrzebujemy ng-click?
- 11. Dlaczego potrzebujemy wirtualnego stołu?
- 12. Dlaczego potrzebujemy klauzuli GLOB w SQLite?
- 13. Dlaczego użyjesz konstruktora metody klasowej w porównaniu z alokacją/init?
- 14. Dlaczego funkcja HttpServletRequest.getRemoteAddr() nie działa w serwletach Java?
- 15. MIPS: Dlaczego potrzebujemy bajta obciążenia, gdy mamy już słowo load?
- 16. Metody LINQ to metody rozszerzeń?
- 17. Dlaczego potrzebujemy "algebraicznych typów danych"?
- 18. Dlaczego potrzebujemy utworzyć zapytanie natywne?
- 19. W JavaScript dlaczego obiekty Date mają obie metody valueOf i getTime, jeśli robią to samo?
- 20. Dlaczego potrzebujemy ZooKeeper w stosie Hadoop?
- 21. Dlaczego potrzebujemy globalnych wyjątków w tłumie?
- 22. Flexbox kontra tabele, dlaczego potrzebujemy flexbox?
- 23. Dlaczego potrzebujemy root i logger w log4j.xml
- 24. Dlaczego niektóre metody mają .prototype, a inne nie?
- 25. Java - dlaczego klasy System i Runtime mają identyczne metody?
- 26. Dlaczego potrzebujemy czwartego konstruktora dla Lollipopa?
- 27. co robi tf.app.flags? dlaczego potrzebujemy tego?
- 28. dlaczego nadal potrzebujemy konstruktora macierzystego, gdy klasa kontrolera rozszerza kontroler nadrzędny?
- 29. Dlaczego potrzebujemy narzędzi do budowania stron trzecich?
- 30. Dlaczego potrzebujemy, jakie korzyści wykorzystać mangusta
podoba mi się ten sposób obejrzenia, plus wygląda jak cykl życia Androida: D – jycr753