장점XML 기반의 구성이므로 사람이 읽기 쉽습니다.프로젝트의 전체 생애주기를 관리할 수 있습니다.라이브러리 의존성 관리가 효과적입니다.대규모 프로젝트에 적합하고, 안정적입니다.단점XML이 복잡해질 수 있으며, 가독성이 떨어질 수 있습니다.빌드 시간이 상대적으로 느립니다
JDBCJDBC template / SQL mapper : 기존 순수 jdbc보다 개발 코드는 줄어들었지만, SQL은 모두 작성해야하는 단점 JPA : Java Persistence API \- SQL query 필요없음개발자 대신 적절한 sql을 실행하고 데이터베이

클라이언트에서 서버로 HTTP Request를 보냄Request Line : method 종류, 경로Request Headers Request Message Body : 파라미터 형식, 서버에 전송할 데이터를 body에 담음, get과 같은 형식에는 body가 없을 수
implementation프로젝트의 컴파일 시간과 실행 시간 모두에 의존성 추가apiimplementation과 유사하지만, 프로젝트에 의해 노출되어 해당 프로젝트를 의존하는 다른 프로젝트에서도 사용할 수 있게 함compileOnly컴파일 시간에만 필요한 의존성 추가,
데이터가 정해진 조건이나 규칙에 맞는지 확인하는 작업ex) 데이터 형식, null 여부, 예상 범위 내에 있는 지 등...// build.gradle=> 다시 build 필요!@NotBlank@Email@Pattern@NotEmpty@NotBlank유효성 검사에서 실패