목록2024/04/08 (6)
JaPark Bug World
5.2 ORM이란? object-relational mapping은 자바의 객체와 데이터베이스를 연결하는 프로그래밍 기법이다. 보통은 SQL이라는 언어로 데이터베이스에 있는 값을 꺼내는 방식을 사용한다. 하지만 ORM이 있다면 데이터베이스의 값을 마치 객체처럼 사용할 수 있다. 즉, 객체와 데이터베이스를 연결해 자바 언어로만 데이터베이스를 다룰 수 있게 해주는 도구라고 할 수 있다. ORM의 장점과단점 장점 SQL을 직접 작성하지 않고 사용하는 언어로 데이터베이스에 접근 가능 객체지향적으로 코드를 작성 할 수 있으므로 비즈니스 로직에만 집중 가능 데이터베이스 시스템이 추상화되어 있기 때문에 MySQL에서 PostgreSQL로 전환한다고 해도 추가로 드는 작업이 거의 없다. 매핑하는 정보가 명확하기 때문에..
4.1 테스트 코드 개념 익히기 작성한 코드가 의도대로 잘 동작하고 예상치 못한 문제가 없는지 확인할 목적으로 작성하는 코드이다. 안드로이드 개발을 하면서도 유닛 테스트가 있었지만 사용을 하지 않았다. 확인이 필요한 액티비티 또는 프래그먼트 화면단을 바로 start intent 시켜서 확인하거나 그랬는데, 이것도 앞에 진행해야 할 로직이 있다면 더미데이터로 세팅을 다 해놓거나 하는 번거로움이 크긴 했다. 이번기회에 배워보겠다............ 테스트 코드란? 테스트 코드에도 다양한 패턴이 존재하지만 given-when-then 패턴에 대해 알아본다. given 테스트 실행을 준비하는 단계 when 테스트를 진행하는 단계 then 테스트 결과를 검증하는 단계 4.2 스프링부트3와 테스트 스프링부트는 애..
3.1 스프링부트 3 구조 살펴보기 스프링 부트는 각 계층이 양 옆의 계층과 통신하는 구조를 따른다. (자세한 내용은 교재 79p 참조) 계층이라는 것은 각자의 역할과 책임이 있는 어떤 소프트웨어의 구성 요소를 의미한다. 각 계층은 소통할 수 있지만 다른 계층에 직접 간섭하거나 영향을 미치지 않는다. 프레젠테이션 계층 (Controller) HTTP 요청을 받고 이 요청을 비즈니스 계청으로 전송하는 역할이다. 컨트롤러는 스프링 부트 내에 여러 개가 있을 수 있다. 비즈니스 계층 (Service) 모든 비즈니스 로직을 처리한다. 서비스를 만들기 위한 로직이며, 웹 사이트에서 벌어지는 모든 작업, 발생하는 예외 등 프로세스를 구현하기 위한 로직 등. 퍼시스턴스 계층(Repository) 모든 데이터베이스 관..
@SpringBootApplication 이해하기 @SpringBootApplication public class SpringBootDeveloperApplication { public static void main(String[] args) { SpringApplication.run(SpringBootDeveloperApplication.class, args); } } 이 클래스는 자바에의 main() 메서드와 같은 역할이다. 여기서 스프링 부트가 시작이 된다. @SpringBootApplication 애너테이션을 추가하면 스프링 부트 사용에 필요한 기본 설정을 해준다. SpringApplication.run() 메서드는 애플리케이션을 실행한다. 첫번째 인수는 스프링 부트3 애플리케이션의 메인 클래스로..
스프링 부트 스타터 살펴보기 스프링 부트 스타터는 의존성이 모여 있는 그룹이다. 스타터를 사용하면 필요한 기능을 간편하게 설정할 수 있다. 스타터는 spring-boot-starter-{작업유형} 이라는 명명규칙이 있다. 스타터 설명 spring-boot-starter-web Spring MVC를 사용해서 RESTful 웹 서비스를 개발 할 때 필요한 의존성 모음 spring-boot-starter-test 스프링 애플리케이션을 테스트하기 위해 필요한 의존성 모음 spring-boot-starter-validation 유효성 검사를 위해 필요한 의존성 모음 spring-boot-starter-actuator 모니터링을 애플리케이션에서 제공하는 다양한 정보를 제공하기 쉽게 하는 의존성 모음 spring-b..
2.1 스프링과 스프링 부트 스프링의 등장 엔터프라이즈 애플리케이션은 대규모의 복잡한 데이터를 관리하는 애플리케이션을 의미한다. 소프트웨어 분야가 발전하면 엔터프라이즈 애플리케이션은 점점 복잡해졌다. 많은 사용자의 요청을 동시에 처리해야 하므로 서버 성능과 안정성, 보안이 매우 중요하다. 이런 것들을 신경쓰면서 비즈니스 로직까지 개발하기가 매우 어려워 개발에만 집중 할 수 있도록 2003년 6월 스프링 프레임워크가 등장했다. 스프링 프레임워크는 서버 성능, 안정성, 보안을 매우 높은 수준으로 제공하는 도구이다. 스프링을 더 쉽게 만들어 주는 스프링 부트 스프링은 장점이 많은 개발 도구이지만 설정이 매우 복잡하다는 단점이 있다. 이러한 단점을 보완하기 위해 스플이 부트를 출시 했다. (2013년 4월) 스..