Avatar ·

Wie Servlets funktionieren: Erstellung, Sessions, gemeinsame Variablen und Multithreading

Hallo zusammen! Ich habe gerade erst angefangen, mich mit Java EE und Servlets zu beschäftigen, und ich habe völliges Durcheinander im Kopf. Ich habe ein einfaches Servlet geschrieben, um Seitenaufrufe zu zählen, aber es verhält sich seltsam. Hier ist mein Code:\n\n```java\n@WebServlet("/counter")\npublic class CounterServlet extends HttpServlet {\n private int counter = 0; // Instanzvariable\n \n @Override\n protected void doGet(HttpServletRequest req, HttpServletResponse resp) \n throws ServletException, IOException {\n counter++;\n resp.getWriter().println("Visits: " + counter);\n }\n}\n```\n\nWenn ich die Seite in zwei verschiedenen Browser-Tabs öffne, erhöht sich der Zähler plötzlich um 2 oder sogar mehr. Ich dachte, dass für jeden Benutzer eine eigene Instanz des Servlets erstellt wird, aber anscheinend ist das nicht der Fall.