# Servlet व HTTP — एडवांस्ड जावा

Source: https://www.geekswithgeeks.com/hi/advanced-java/adv-servlets

> Tomcat जैसे कंटेनर में servlet जीवनचक्र समझें, एक साझा इंस्टेंस कई रिक्वेस्ट थ्रेड क्यों संभालता है, और doGet / doPost HTTP कैसे हैंडल करते हैं।

## जीवनचक्र

कंटेनर एक ही servlet इंस्टेंस बनाता है, `init()` एक बार, फिर कई थ्रेड पर `service()` समानांतर चलाता है। इसलिए फ़ील्ड में प्रति-रिक्वेस्ट स्टेट न रखें।

## न्यूनतम servlet

`HttpServletRequest` से पढ़ें, `HttpServletResponse` पर लिखें। सेशन, फ़िल्टर, लिसनर ऊपर बनते हैं।

```java
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    protected void doGet(HttpServletRequest req, HttpServletResponse res)
            throws IOException {
        res.setContentType("text/plain");
        res.getWriter().write("Hi " + req.getParameter("name"));
    }
}
```
