Spring
[Spring Basic] 서블릿과 JSP
[Spring Basic] 서블릿과 JSP
2022.05.05클라이언트가 정적 리소스를 요청하는 경우 웹 서버가 바로 처리할 수 있다. 클라이언트가 동적 리소스를 요청하는 경우는 웹 서버만으로 처리하기 힘들다. 웹 서버는 WAS에게 클라이언트의 요청을 넘기고 WAS의 처리 결과를 클라이언트에게 반환한다. (WAS는 웹 서버 역할을 수행할 수 있기도 하다) WAS가 클라이언트의 동적 리소스 요청을 처리할 때 서블릿이 사용된다. 서블릿이 도입되기 전에는 CGI 방식으로 사용자의 요청을 처리했다. CGI는 클라이언트의 요청이 들어올 때 마다 새로운 프로세스를 생성하는 방식으로 동작하고, 동시에 많은 요청이 들어오는 경우 프로세스의 생성과 종료에 따른 오버헤드가 너무 크다는 단점이 있다. 이런 단점을 극복하기 위해 서블릿이 도입됐다. 서블릿은 WAS가 한 번 실행되면 메..
[Spring Basic] 서블릿과 출력
[Spring Basic] 서블릿과 출력
2022.04.13보통 자바의 main메서드 옆에는 String[] args가 붙어있는 경우가 많다. 여기서 args가 의미하는 바는 cmd에서 자바 인터프리터로 프로그램을 실행할 때 추가되는 문자열을 담기 위한 배열이다. (프로그램이 사용자로부터 입력을 받거나 다른 프로그램과 데이터를 주고받을 때 사용된다) java Main.java arg1 arg2 arg3 이런 식으로 프로그램을 실행하면 arg1은 arg[0] 에, arg2는 arg[1] 에.. 이런 방식으로 args 배열이 설정된다. 마찬가지로, 브라우저에서 URL을 통해 호출을 진행하면 Tomcat이 HttpServletRequest객체를 만들고 요청한 정보를 담은 후 main메서드의 매개변수로 넘겨준다. public void main(HttpServletReq..
[Spring Basic] Java Reflection API
[Spring Basic] Java Reflection API
2022.04.13import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Hello World"); } } 위와 같은 소스코드 파일이 주어졌을 때, cmd에서 실행시키려면 해당 파일이 위치한 위치에서 java Main.java 를 입력하면 된다. 여기서 앞에 위치한 java는 java.exe로 자바 인터프리터를 의미하며, 인터프리터가 Main.java의 main메서드를 호출해 소스코드가 실행된다. (mai..