티스토리 뷰
# 준비
- Visual Studio Code : 개발에 사용할 IDE. IDE는 본인에게 편한 게 가장 좋다고 생각합니다.
- Gradle 설치 : https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_gradle_%EC%84%A4%EC%B9%98
- Jdk 설치 : https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_OpenJDK_11_%EC%84%A4%EC%B9%98
- VS Code에서 단축키 ( Ctrl + Shift + X )로 확장 프로그램 마켓 플레이스를 연 뒤 Java Extension Pack을 설치합니다.
- VS Code에서 단축키 ( Ctrl + , )로 Settings에 진입하고 'Edit in setting.json'를 검색하여 연 뒤 아래처럼 입력합니다.
{
"java.home": "C:/Program Files/ojdkbuild/java-1.8.0-openjdk-1.8.0.222-1"
}
경로는 위에서 설치했던 jdk의 경로입니다.
(필수는 아니지만 개인 설정에 따라 하지 않을 경우 에러가 나는 경우도 있어서 하는 게 좋습니다. 경로의 '\'를 '/'로)
# SpringBoot 설치
VSCode를 실행한 뒤 View -> Command Palette (Ctrl + Shift + P)를 실행하고 아래와 같이 선택해서 진행.
Spring Initializr: Generate a Gradle Project
↓
java
↓
com.graphql
↓
blog
↓
2.1.7
↓
아래의 의존성을 모두 선택합니다.
-Spring Boot DevTools
-Spring Web Starter
-Spring Security
-Spring Data Jpa
-Lombok
↓
탐색기에서 프로젝트를 생성할 경로로 이동하여 MyBlog 디렉토리
생성한 뒤 Generate
↓
생성한 Spring 프로젝트 경로로 이동 후 VScode 실행
# 사전 작업
src/main/resources/application.properties 파일을 열고 아래와 같이 수정합니다.
#Server Configuration
server.port=8000
spring.main.banner-mode=off
/build.gradle 파일을 열어보면 아래와 같을 겁니다. 아래와 같이 jpa 부분을 주석 처리해줍니다.
//implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
# Config 파일 생성
com/graphql/blog에 config 디렉토리를 생성한 후 아래 2개의 파일을 생성합니다.
WebMvcConfig.java
package com.graphql.blog.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
@EnableWebMvc
public class WebMvcConfig implements WebMvcConfigurer {
// Cors 정책을 모두 허용으로 설정
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**");
}
}
WebSecurityConfig.java
로그인 기능을 구현하기 전까지 Security 설정은 모든 요청에 대해 허용하도록 설정.
package com.graphql.blog.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/**").permitAll()
.anyRequest().authenticated()
.and()
.httpBasic();
http.cors().and();
http.csrf().disable();
}
}
# 실행
터미널을 연 뒤 ( Ctrl + ` ) 아래 명령어를 입력합니다.
$ gradle bootRun
그 후 http://localhost:8000으로 접속했을 때 404 에러 페이지가 뜨면 정상입니다.
# 마치며
이상으로 Spring Boot 설치를 완료하였습니다.
다음 포스팅에서는 PostgreSQL를 생성하고 이번에 생성했던 SpringBoot에 연동해보겠습니다.
# GitHub
https://github.com/eonnine/MyBlog
'프로젝트 > 나만의 블로그' 카테고리의 다른 글
React & Parcel 개발 환경 구성 [FE] (0) | 2019.08.24 |
---|---|
Spring Boot & GraphQL (2) [BE] (2) | 2019.08.18 |
Spring Boot & GraphQL (1) [BE] (0) | 2019.08.18 |
Spring Boot & PostgreSQL [BE] (0) | 2019.08.18 |
[나만의 블로그]시작 (0) | 2019.08.16 |
- Total
- Today
- Yesterday
- 프로그래머스[해시]
- 프로그래머스[Lv1]
- 실행 문맥
- graphql
- javascript
- 동적계획법
- 프로그래머스[이분탐색]
- 프로그래머스[정렬]
- Spring Boot
- react
- 프로그래머스[스택/큐]
- PostgreSQL
- 웹 사이트 최적화
- Handshake
- 알고리즘
- typescript
- 프로그래머스
- CD
- execution context
- Jenkins
- Pipeline
- JPA
- CI
- Nashorn
- 프로그래머스[힙]
- Apollo
- Web
- CRP 최적화
- Kubernetes
- Docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |