SpringBoot (6) 썸네일형 리스트형 [Spring Boot] 스프링 웹 개발 방법 3가지 스프링 웹 개발하는 방법은 크게 3가지가 있다. 1. 정적 컨텐츠 html 파일을 가공없이 웹 브라우저에 그대로 전달해서 실행하는 것. resource/static 폴더에 저장하여 사용한다. 예시 정적 컨텐츠 예시! resources/static/hello-static.html 위치에 간단한 정적 컨텐츠 예시 파일을 만들어줬다. 웹 브라우저에 해당 파일로 접근하게되면, 코드에 적어둔 그대로 화면에 출력되는 것을 확인 할 수 있다. #정적 컨텐츠의 동작 원리 웹 브라우저에 정적 컨텐츠 주소로 접근하게 되면, 내장 톰켓 서버가 요청을 받아 스프링 컨테이너에 넘기게 된다. 그 다음 스프링 컨테이너에 해당 파일과 관련된 컨트롤러가 있는지 찾는다. 만약 해당 컨트롤러가 존재하지 않는다면 resources의 sta.. [Spring Boot] 간단한 예제로 스프링 부트(Spring Boot) 동작원리 알아보기 웹 브라우저에 localhost:8080/hello라고 주소를 던지게되면 스프링부트에서는 그 주소를 내장 톰켓 서버가 받게 된다. 그러면 톰켓은 스프링에게 주소를 전달하고, 스프링 컨테이너에서는 해당 관련 컨트롤러가 있는지 확인한다. 해당 관련 컨트롤러가 존재하면 컨트롤러에서 해당되는 메서드의 값을 return한다.(메서드가 실행된다.) *여기서는 /hello이기 때문에 hello관련 컨트롤러를 찾는다. helloController가 안에 해당 url과 같은 메서드(/hello)가 존재하기때문에(@GetMapping("hello")) 메서드가 실행된다. 그 다음 스프링에서 만든 model.addAttribute(data(K), "hello!!"(V));에서, model이 data(K)를 넘긴다. (여기서.. [SpringBoot] Controller 만들기 controller 패키지를 만든 후 HelloController라는 자바 파일을 만들어줬다. *controller 패키지 안에서는 controller 파일만 모아서 관리한다. controller 패키지안에 HelloController.java 파일을 만들고 코드를 적어줬다. Spring에서 컨트롤러는 @Controller 어노테이션을 적어줘야한다! 여기서 model.addAttribute("data", "hello!!");는 data(key)를 hello(value)라고 값을 넘길거라는 의미 return "hello" -> hello페이지를 출력하겠다. 이 값을 받을 html을 만들어보자 동적 페이지를 만들기 위해 resources/templates/hello.html 경로의 hello.html 파일을.. [Spring Boot] 메인 페이지 만들기(index.html) resources/static아래 index.html을 만들면 시작 페이지로 설정된다. 사진처럼 resources/static/index.html 파일을 만들어주고 *이 페이지는 정적 페이지이다.(서버에 미리 저장된 파일이 그대로 전달된다고 생각하면 됌) 코드를 적어주면 된다. 일단 간단하게ㅎㅎ 서버를 재시작하고 다시 웹 브라우저로 접근하면 메인 페이지가 바뀌어있을 것이다^^ 옆에 링크가 걸린 hello는 아직 만들어둔 게 없어 오류가 난다. [Spring Boot] 프로젝트 만들어보기 https://start.spring.io/ 이 사이트는 Spring에서 제공하는 Spring Boot 기반으로 Spring 관련 프로젝트를 만들어주는 사이트이다. 과거에는 maven을 썼지만 요즘엔 gradle을 많이 사용한다. (난 Maven만 써보고 gradle은 안써봐서 공부 많이 해야한다ㅜㅜ) Project - Gradle - Groovy (전에는 Maven과 Gradle 두개만 있었지만 업데이트됨 Gradle - Groovy로 사용하면된다해서 이걸로!) Spring Boot에서 SNAPSHOT은 아직 만들고 있는 중이라는 의미 웬만하면 스냅샷은 피하자!! Group은 보통 기업의 도메인 명 같은걸 적는다는데 나는 백수라 hello Artifact - 빌드될때 나오는 결과물(프로젝트 명) 이 부.. [SpringBoot] Spring Initializr 프로젝트 생성시 오류 Spring Initializr로 프로젝트를 생성하고 Intellij에 빌드를 하였는데 다음과 같이 오류가 났다. 오류 메세지 No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.0 was found. The consumer was configured to find a runtime of a library compatible with Java 11, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.5.1' but: 당황하지 말고 구글에 찾아.. 이전 1 다음