목록웹 프로그래밍/Spring Boot (11)
코딩하는 문과생
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. [JPA] : 자바 표준 ORM 기술 관계형 DB는 어떻게 데이터를 저장할 지에 초점이 있고, 객체지향프로그래밍은 기능과 속성에 초점이 맞춰져 있다. 즉, 데이터베이스와 스프링이 지향하는 점이 다르다. 이 둘의 패러다임(사상)을 중간에서 일치시켜주는 것이 JPA다. * MyBatis나 iBatis는 ORM(객체맵핑)이 아닌 SQL Mapper(쿼리맵핑)다. JPA 는 인터페이스로서 자바표준명세서다. 구현체로 Hibernate, Eclipse Link 등이 있다. 그러나 더 추상화시킨 Spring Data JPA를 사용한다. 이는 구현체(Hibernate) 교체와 저장소(MySql) 교체가 용이하기 때문이다. 구현체와 저장소에서..
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. [TDD] : 테스트가 주도하는 개발 테스트코드 작성 후(red) 테스트가 통과하는 프로덕트 코드를 작성(green) 이후 리팩토링 진행(refactoring) [단위테스트] : 기능 단위의 테스트 코드를 작성 - 장점 톰캣을 계속내렸다 올릴 필요가 없다. 자동검증이 가능하다. 개발자가 만든 기능을 보호한다. * 테스트코드 작성을 도와주는 프레임워크: JUnit 예제코드) 컨트롤러 내 테스트 코드 작성 @RunWith(SpringRunner.class) //Junit 프레임워크의 SpringRunner라는 클래스를 실행시켜라 @WebMvcTest(controllers = HelloController.class) //@Contr..
※ 해당 글은 튜토리얼이 아닌 헷갈리거나 중요한 개념 위주로 정리한 글입니다. - 스프링 부트 개발 및 빌드를 위한 초기세팅을 위해 지정해야 하는 build.gradle파일이다. - 해당 변수들이 의미하는 바를 잘 이해하지 못했는데, 책과 구글을 통해 정리해보았다. // 해당 프로젝트의 빌드시 의존성 관리를 위한 설정 buildscript { ext { //전역변수 설정 springBootVersion = "2.1.7.RELEASE" } repositories { mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } //스프링..