Bean Validation 도메인 로직에서 값을 검증할 수 있게 도와주는 인터페이스이다. (참고:Java와 Spring의 Validaiton) 주요 어노테이션들은 아래와 같다. /** * 직접 검증을 하고 싶을 때 사용 */ @AssertTrue @AssertFalse /** * 문자열을 다룰 때 사용 */ @NotNull // null 불가능 @NotEmpty // null, 빈 문자열(스페이스 포함X) 불가 @NotBlank // null, 빈 문자열, 스페이스만 포함한 문자열 불가 @Size(min=?, max=?) // 최소 길이, 최대 길이 제한 @Null // null만 가능 /** * 숫자를 다룰 때 사용 */ @Positive // 양수만 허용 @PositiveOrZero // 양수와..
BACKEND/스프링 Spring Boot
먼저 스프링 과 스프링 부트의 차이점 부트는 톰켓을 내장하고 있고 설정을 편리하게 할수있다는 점이 가장 큰 메리트 인것 같다 API 란 ? Application Programming Interface 의 줄임말 응용프로그램에서 사용할 수 있도록 다른 응용프로그램을 제어할 수 있게 만든 인터페이스 API를 사용하면 내부 구현 로직을 알지못해도 정의되어 있는 기능을 쉽게 사용할 수 있음 여기서 인터페이스란 어떤 장치간 정보를 교환하기 위한 수단이나 방법을 의미 대표적인 인터페이스 예로는 마우스 , 키보드 , 터치패드 등이 있음 REST API - 자원의 이름으로 구분하여 해당 자원의 상태를 교환 REST 는 서버와 클라이언트의 통신 방식 중 하나임 HTTP URI 를 통해 자원을 명시하고 HTTP Metho..
쇼핑몰을 만들기 위한 기본 DB 설계 1. 프로젝트 주제 프로젝트 도메인은 애완동물 용품을 파는 Online pet Shop 을 해보고 싶었다 스프링 프로젝트를 시작하기 위해 https://start.spring.io/ 으로 접속 해서 스프링 프로젝트를 구성 했다 Dependencies 의 경우 , 일단 필수적인 패키지만 구성 했고 , 나머지 Security , OAuth 같은 패키지는 필요에 따라 나중에 추가 할 계획이다. 2. project 빌드 문제 발생 No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.1 was found 버전 3.2.1 오류인것 같다 버전 다운 그레이드가 답이다. 버전을 2.7.7로 다운시..
Spring과 JPA를 활용한 간단한 쇼핑몰 웹 사이트 제작기 이론 한계 지속적으로 스프링을 배우는 동안 무엇인가 알 수 없는 회의감에 빠졌다 " 내가 지금 공부하고 있는 것이 실제 어떤 상황에서 어떻게 적용하는 것일까 ? " 결국 기술들을 계속해서 이론으로만 접하게 되면 머리로는 이해가 될지 모르지만 내가 직접 사용하며 체감하기는 어렵다는 명확한 한계점을 가지고 있었다 "백견불여일타" 백번 보는 것보다 한번 쳐보는 것, 즉 실제로 부딪혀가면서 습득하는 것은 그만큼 중요하다는 얘기다 학습의 3단계 1. 학습 : 강의 , 책 2. 체득 : 실무 적용 , 토이 프로젝트 3. 정리 : 노트 , 블로그 , 세미나 만들기 (출처 : '우아한 형제들' 최연소 기술이사 김영한 님의 "성장과 취업, 이직 이야기" 중에..
application.properties : 자신의 aws ec2 db ip 로 변경합니다 REST(REpresentational State Transfer) : 대표 상태 전송 분산 환경에서 시스템 간 통신을 위한 소프트웨어 아키텍쳐 자원에 고유한 식별자(URI) 부여하고 HTTP Method로 제어하는 소프트웨어 아키텍쳐 HTTP GET(조회) , POST(생성) , PUT(수정), DELELTE(삭제) Method를 통해 제어 참고) URI : Uniform Resource Identifier 네트워크 상 자원을 구분하는 식별자 ex) http://daum.net/index?pageNo=2 http://daum.net/product/77 URI 는 URL 을 포함하는 상위 개념이다 URL..
프로젝트 생성 pom.xml 4.0.0 com.sentilab sentilabHadoop 1.0-SNAPSHOT org.springframework.boot spring-boot-starter-parent 2.2.7.RELEASE org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-maven-plugin pom.xml을 다음과 같이 수정 (parent, dependencies, build)하여 스프링 부트 의존성을 추가 한다 pom.xml 은 필요한 라이브러리를 다운받게 된다 Run 버튼 누르면 Spring Boot 앱 실행 이제 실제 API 를 받을수 있는 상태를 만들어야 한다 ApiController..