Java에서 애플릿과 서블릿은 모두 Java 환경에서 실행되는 프로그램 또는 응용 프로그램입니다. 두 프로그램의 주요 차이점은 처리가 서로 다른 환경에서 수행된다는 점입니다.
다음은 애플릿과 서블릿의 중요한 차이점입니다.
Sr. 아니요. | 키 | 애플릿 | 서블릿 |
---|---|---|---|
1 | 실행 | 애플릿은 클라이언트 측에서 실행됩니다. 즉, 애플릿은 클라이언트 시스템의 웹 브라우저 내에서 실행됩니다. | 서버 측에서 실행되는 반면에 서블릿은 서버의 웹 페이지에서 실행됩니다. |
2 | 상위 패키지 | 애플릿의 상위 패키지에는 java.applet.* 및 java.awt.*가 포함됩니다. | 서블릿의 상위 패키지에는 javax.servlet.* 및 java.servlet.http.*가 포함되어 있습니다. |
3 | 메소드 | 애플릿의 중요한 메소드는 init(), stop(), paint(), start(), destroy()를 포함합니다. | 서블릿의 라이프사이클 메소드는 init( ), service( ), destroy( )입니다. |
4 | 사용자 인터페이스 | 애플릿 실행을 위해서는 AWT나 스윙과 같은 사용자 인터페이스가 필요합니다. | 서블릿 실행에는 이러한 인터페이스가 필요하지 않습니다. |
5 | 필요한 대역폭 | 애플릿은 실행을 위해 클라이언트 시스템에 사용자 인터페이스가 필요하므로 더 많은 대역폭이 필요합니다. | 반면 서블릿은 서버에서 실행되므로 대역폭이 덜 필요합니다. |
6 | 보안 | 애플릿은 클라이언트 시스템에서 실행되기 때문에 위험에 더 취약합니다. | 서블릿은 서버 보안 하에 실행되므로 더 안전합니다. |
애플릿과 서블릿의 예
AppletDemo.java
import java.applet.Applet; import java.awt.Graphics; public class AppletDemo extends Applet { // Overriding paint() method @Override public void paint(Graphics g){ g.drawString("AppletDemo", 20, 20); } }
출력
AppletDemo
예
ServletDemo.java
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class ServletDemo extends HttpServlet { private String message; public void init() throws ServletException{ // Do required initialization message = "Servlet Demo"; } public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{ response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println(message); } }
출력
Servlet Demo