Applet
- รันฝั่ง Client (Client-side)
- ทำงานภายใน Web Browser
- รันบนเครื่อง Client
- Package หลัก:
java.applet.*,java.awt.* - Life-cycle methods:
init(),start(),paint(),stop(),destroy() - ต้องการ UI (AWT/Swing) บนฝั่ง Client
- ใช้ Bandwidth มาก (โหลดโค้ดไปรันฝั่ง Client)
- ความปลอดภัยต่ำ (รันบนเครื่องผู้ใช้)
Servlet
- รันฝั่ง Server (Server-side)
- ทำงานบน Web Server / Servlet Container
- Package หลัก:
javax.servlet.*,javax.servlet.http.* - Life-cycle methods:
init(),service(),destroy() - ไม่ต้องการ UI
- ใช้ Bandwidth น้อย (ส่งแค่ HTML/Response)
- ปลอดภัยกว่า (อยู่ภายใต้ความปลอดภัยของ Server)
สรุป
| คุณสมบัติ | Applet | Servlet |
|---|---|---|
| รันที่ | Client-side (Browser) | Server-side (Container) |
| UI | ต้องการ (AWT/Swing) | ไม่ต้องการ |
| Bandwidth | มาก | น้อย |
| ความปลอดภัย | ต่ำ | สูง |
| สถานะปัจจุบัน | Deprecated (Java 9+) | มาตรฐาน Enterprise |