본문 바로가기

SpringBoot

ch2 01. 원격 프로그램의 작성과 실행

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과 연결돼서 다른 컴퓨터에서 호출될 수 있게 된다. 

https://start.spring.io/

생성할 포로젝트의 환경을 설정해주고, 우리가 사용할 프로그램을 선택하기 위해 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