메이븐 프로젝트 생성메이븐 [Spring] Maven과 Gradle빌드 관리 도구빌드소스 코드 파일을 컴파일에서 실행할 수 있는 가공물로 변환하는 과정 또는 결과물우리가 작성한 소스코드(java), 프로젝트에서 쓰인 각각의 파일 및 자원 등(.xml, jpa, jpg, properbest11gh.tistory.com사용하는 프레임워크에 관계없이 앱의 빌드 프로세스를 쉽게 관리하는 데 사용하는 도구실제 시나리오에서 스프링 프로젝트에 가장 많이 사용되는 빌드 도구 중 하나이다.GroupId : 관련된 여러 프로젝트를 그룹화하는 데 사용ArtifactId : 현재 애플리케이션 이름Version : 현재 구현 상태의 식별자, 프로젝트를 설정할 때 버전 설정이 나오지 않는다면 생성 후 pox.xml 파일에서 설정..
RESTful API란?APIApplication Programming Interface의 약어두 애플리케이션이 서로 통신하는 방법을 정의RESTfulREST 아키텍처 스타일로 요청과 응답을 하는 APIREST 아키텍처의 탄생 배경HTTP 프로토콜REST의 기반이 된다.클라이언트와 서버 간의 데이터를 주고받기 위해 사용되는 표준 HTTP 프로토콜이 표준화되어있긴 하지만 이를 어떻게 구현해야할지 그 방식에 대해서는 유연하기 때문에 개발자마다 구현 방식이 달라지게 된다. → 내용이 복잡하고 유지보수가 어렵게 된다. → 웹(HTTP)의 장점을 최대한 활용할 수 있는 REST 아키텍쳐를 만들자 REST란?REpresentational State Trasfer(표현 상태 전달)의 약자= 자원을 이름(표현)으로..
순수 Jdbc와 동일한 환경설정을 하면 된다.스프링 JdbcTemplate과 MyBatis 같은 라이브러리는 JDBC API에서 본 반복 코드를 대부분 제거해준다. 하지만 SQL은 직접 작성해야 한다. public class JdbcTemplateMemberRepository implements MemberRepository { private final JdbcTemplate jdbcTemplate; @Autowired public JdbcTemplateMemberRepository(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource) } @Override public Mem..
JDBC란자바 언어를 이용해서 데이터베이스에 접근할 수 있도록 도와주는 자바 표준 API이다. 자바 언어를 사용해서 데이터베이스에 접근할 수도 있고 SQL 쿼리를 실행할 수도 있다. DB 접근 기술들 중 하나인 SQL Mapper, ORM 기술들 모두 로우 레벨단에서는 JDBC API가 동작하고 있다. 즉, 자바를 이용해서 접근하는 DB 접근 기술들은 JDBC API가 가히 필수적이다. JDBC(표준)가 왜 필요했을까 - 표준의 부재로 인한 문제점1. 새로운 데이터베이스의 사용법을 배워야 한다.각 데이터베이스마다 사용법이 다르다.학습의 몫은 개발자에게 있다.2. 프로덕션 코드의 변경 범위가 커질 수 있다.DIP(의존 역전 원칙) 위배기대하는 기능은 같아도, 코드 변경 범위가 클 수 있다. JDBC의 ..
Spring 생태계spring : 스프링 프로젝트들의 모음다양한 스프링 프로젝트들을 확인할 수 있다. 모든 스프링 프로젝트는 스프링 프레임워크를 기반으로 동작한다. Spring Framework스프링 프레임워크를 사용하면 자바 기반의 어플리케이션을 만들 수 있고 개발자들은 비즈니스 로직에 집중할 수 있다. EJB2000년대 초반 등장. 스프링 같은 프레임워크목적 : 비즈니스 로직과 앤터프라이즈 기술의 분리 → 편리한 애플리케이션 개발실제너무 비싸다비즈니스 로직보다 EJB를 사용하기 위한 코드가 너무 많다EJB에 너무 의존적이고 종속적인 개발 → 기존 JAVA의 장점 못 살림(객체지향) Spring초기 설정만 잘 해두면 EJB와 동일한 기능을 제공하며 JAVA의 최대 장점인 객체지향 살려서 개발 가능커..
빌드 관리 도구빌드소스 코드 파일을 컴파일에서 실행할 수 있는 가공물로 변환하는 과정 또는 결과물우리가 작성한 소스코드(java), 프로젝트에서 쓰인 각각의 파일 및 자원 등(.xml, jpa, jpg, properties)을 jvm이나 톰캣 같은 WAS가 인식할 수 있는 패키징하는 과정 및 결과물이라고 할 수 있다.컴파일된 코드를 실제 실행할 수 있는 상태로 만드는 일(Compile + 그 외 작업)빌드 관리 도구소스 코드를 컴파일하고 테스트하며 정적 분석 등을 수행하여 실행 가능한 애플리케이션을 자동으로 생성하는 프로그램이다.계속해서 늘어나는 라이브러리를 자동으로 추가 및 관리하고, 프로젝트를 진행하면서 시간이 지남에 따라 라이브러리의 버전을 자동으로 동기화한다.초기의 Java빌드 도구로는 Apach..