반응형
이곳에서는 Docker을 통한 MariaDB를 선행적으로 구현하였다.
Mybatis를 통해 연동하는 방법이다.
build.grandle에 dependencies를 수정해준다.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
compile("org.springframework.boot:spring-boot-starter-jdbc")
compile("org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1")
runtime("mysql:mysql-connector-java")
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
이와 같은 과정(Spring boot starter jdbc)은 DataSource, ConnectionFactory등 복잡할 설정을 간단하게 마칠 수 있도록 한다.
Maria DB 연결을 위한 yml 파일 작성
src - main - resources 에 application.yml을 작성하였다.
spring:
datasource:
driver-class-name: "com.mysql.cj.jdbc.Driver"
url: "jdbc:mysql://localhost:3306/shdb"
username: "shdb"
password: "12345678"
IDEA내부에 DataGrip과 동일한 DB와 연결하는 툴이 내장되어 있다.
CORS 설정
REST API를 postman 같은 툴로 테스트할 때는 CORS 문제가 생기지 않지만 리액트, 뷰와 같은 프레임웍을 사용해서 브라우저에서 API를 호출시 만일 프런트서버와 백엔드 서버가 각각 존재한다면 cross domain 이슈가 발생한다고 한다.
따라서 CORS 필터를 설정해 주었다.
@Bean
public FilterRegistrationBean corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
config.addAllowedOrigin("*");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
FilterRegistrationBean registrationBean = new FilterRegistrationBean();
registrationBean.setFilter(new CorsFilter(source));
registrationBean.setOrder(0);
return registrationBean;
}
반응형
'웹서비스 개발 > Spring Rest API' 카테고리의 다른 글
Board 목록 보기, 상세보기 API (0) | 2021.05.13 |
---|---|
DB의 Board 생성 API 작성 (0) | 2021.05.12 |
Get, Post 사용하기 (0) | 2021.04.17 |
웹기능, 정적 리소스 추가하기 (0) | 2021.04.16 |
intelliJ IDEA를 통한 Project 생성 (0) | 2021.04.16 |
댓글