1. 프로그램 등록(보안상 등록된 프로그램만 다른 컴퓨터에서 호출 가능)
2. URL과 프로그램을 연결
@Controller : 외부에서 호출할 수 있는 원격 프로그램이라는 것을 등록
URL과 실행 될 메소드를 연결
@Controller // 1. 프로그램 등록
public class Hello {
@RequestMapping("/hello") // 2. URL과 main()을 연결
public void main() {
System.out.println("Hello");
}
}
main()에 static이 없는 것을 확인할 수 있다. static이 없다는 것은 '객체 생성'이 필요하다는 뜻.
이렇게 @Controller로 등록된 프로그램은 Spring이 자동으로 객체를 생성해주기 때문에
이처럼 인스턴스 메소드(static이 안붙은 메소드)도 URL과 연결돼서 다른 컴퓨터에서 호출될 수 있게 된다.

생성할 포로젝트의 환경을 설정해주고, 우리가 사용할 프로그램을 선택하기 위해 ADD DEPENDENCIES를 클릭한다.

사용할 프로그램을 4개 선택했다.
- Spring Web은 Spring MVC다.
- Thymeleaf는 View에 사용할 템플릿 엔진으로 사용한다. Spring MVC에서 작성한 결과를 편리하게 보여줄 수 있다. (default)
설정 후 GENERATE를 누르면 zip파일이 다운로드 되고, 다운로드가 완료되면 실행 경로에 압축을 풀어준 후
인텔리제이에서 오픈한다.

-> 중간에 종속성 문제가 있었다..
찾아보니 설정에서 Maven 홈 경로를 바꿔주었더니 해결되었다..!
이제 원격프로그램을 하나 만들어보자.

원격 프로그램으로 등록된 클래스는 톰캣이 자동으로 생성해서 등록하고 있다가 생성해준다. -> static이 없어도 된다.

프로그램을 한 번 실행해보자.


에러가 났지만 콘솔 창에 Hello가 잘 찍힌 걸 확인할 수 있다.
메소드의 호출은 잘 된 것이다.

이번엔 다음과 같이 코드를 수정한 후 시작해보자.

응답을 hello로 브라우저가 받아서 보여주는 것을 확인 할 수 있다.
'SpringBoot' 카테고리의 다른 글
| ch2 05. 원격 프로그램으로 응답하기 (0) | 2023.07.04 |
|---|---|
| ch2 04. HTTP 요청과 응답 (0) | 2023.07.04 |
| ch2 03. 원격 프로그램에 데이터 전달하기 (0) | 2023.06.27 |
| ch2 02. 클라이언트와 서버 (0) | 2023.06.23 |
| ch1. 환경설정 (0) | 2023.06.09 |