간단한 CRUD 기능을 가진 API 서버를 설계부터 해서 한번 만들어 보겠습니다
만들기 앞서 어떤걸 만들고자 하는지 그리고 사용하는 환경에 대해 한번 정리하고 가겠습니다
🎈목표
🎈테이블
🎈환경
😎개발자가 되고싶니?
무작정 코드만 줄줄 치는 코더가 아닌 개발자로 성장하려면 무작정 코드를 치는 것이 아닌 설계부터 탄탄하게 잡고 가는 것이 좋다고 어디서 본 기억이 있어서 한번 만들어봤는데 ERD 나 다른 문서들이 필요할 만큼 큰 프로젝트가 아니기에 간단하게 만들어 보았습니다 그럼 이제 본격적으로 시작해보죠
패키지 구성하기
yml 설정하기
#1
spring:
datasource:
url: jdbc:mariadb://localhost:3306/api
username: api
password: api
driver-class-name: org.mariadb.jdbc.Driver
#2
mvc:
pathmatch:
matching-strategy:ant_path_matcher
server:
port: 8080
servlet:
context-path: /
#3
mybatis:
type-aliases-package: com.model
mapper-locations: classpath:repository/*.xml
configuration:
map-underscore-to-camel-case: true
#4
logging:
config: classpath:logback-local.xml
- #1. DB 연결
- #2. Spring boot 2.6.2 버전 이후 sping.mvc.pathmatch.matching-strategy의 값이 ant_path_matcher -> path_pattern_parser로 변경되면서 라이브러리(swagger포함) 내부에 오류가 발생함. 이 설정을 해줘야 swagger-ui 가 동작함 자세한 내용은 기존 작성해둔 요 글을 https://newstartdodo.tistory.com/91 보시면 감사합니다
- #3. caml 설정
- #4. logback 설정
logback-local.xml 설정
😭어디서 에러가 나는지 알아야 에러를 잡지!!
API Test를 위한 swagger-ui 설정
@Configuration
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.OAS_30)
.useDefaultResponseMessages(false)
.select()
.apis(RequestHandlerSelectors.withClassAnnotation(RestController.class))
.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("API 01 Project Swagger")
.build();
}
'예제를 만들자 뚱땅뚱땅' 카테고리의 다른 글
API 만들기 연습 #6 유효성 검증 (0) | 2022.08.30 |
---|---|
API 만들기 연습 #5 CustomException (0) | 2022.08.29 |
API 만들기 연습 #4 페이징 (0) | 2022.08.26 |
API 만들기 연습 #3 update , delete (0) | 2022.08.25 |
API 만들기 연습 #2 등록을 해보자 (0) | 2022.08.24 |