JAVA/JAVA개발자 양성과정

[SpringMVC] Maven/Spring Starter Project으로 SpringBoot를 만들기

👩‍💻 자바 개발자 양성과정 63일차

1. Maven으로 SpringBoot를 만들기

2. Spring Starter Project으로 SpringBoot를 만들기


🎁 Maven으로 SpringBoot를 만들기

 

1. Maven프로젝트 만들기

 

 

2. pom.xml 셋팅하기

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter</artifactId>
	<version>2.6.0</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
	<version>2.6.0</version>
</dependency>

 

spring-boot-starter-web
-spring boot로 web application을 만들 때 참조할 기본 library 정보를 설정한다.
-이렇게 쓰기만 해도 web application 제작에 필요한 spring framework 관련 library와 third-party 
library를 이용할 수 있게 된다.

 

 

2-1. Maven업데이트 할때마다 자바 버전 안바뀌게 하기

프로젝트 우클릭 > 메이븐 > 메이븐 업데이트

Force Update of snapshots/releases 체크 하기

 

 

 

3. Spring Boot 실행

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

}
package com.example.demo;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

	@GetMapping("/")
	public String hello() {
		return "hello";
	}

	//localhost:8080/hello?name1=소진
	@GetMapping("/hello")
	public String hello(String name1) {
		return "hello" + name1;
	}

}

@RestController
-이 annotation을 붙이면 web appication에서 request을 받아들이는 controller class임을 나타낸다.


@EnableAutoConfiguration
-이 annotation은 매우 중요하다.
-이 annotation을 붙이면 다양한 설정이 자동으로 수행되고 기존의 spring application에 필요했던 설정 file들
이 필요없게 된다.


@RequestMapping("/")
-이 annotation이 붙으면 이 method가 HTTP 요청을 받아들이는 method임을 나타낸다.
-@GetMapping도 가능
-@RequestMapping(value="/", method=RequestMethod.GET)과 @GetMapping은 동일하다.


return "Hello World!";
-HTTP 응답을 반환한다.
-@RestController annotation이 붙은 class에 속한 method에서 문자열을 반환하면 해당 문자열이 그대로
HTTP 응답이 되어 출력된다.


SpringApplication.run(App.clas, args);
-spring boot applicaton을 실행하는 데 필요한 처리를 main() 안에서 작성한다.
-@EnableAutoConfiguration annotation이 붙은 class를 SpringApplication.run()의 첫번째 인자로
지정한다

 

package com.example.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import com.example.vo.UserVO;

@RestController
public class UserController {
	//localhost:8080/getUser?userid=sojin&name=소진&gender=여&city=남양주
	@GetMapping("/getUser")
	public UserVO getUser() {
		UserVO user = new UserVO();
		user.setUserid("jimin");
		user.setName("한지민");
		user.setGender("여");
		user.setCity("서울");
		return user;
	}
}

🎁 Spring Starter Project로 SpringBoot를 만들기

첫번째 방법. 이클립스에서 프로젝트 만들기

 

두번째 방법. Spring웹에서 생성하기

Spring Initializr

728x90
반응형