본문 바로가기

분류 전체보기191

DBMS의 기능과 종류 DBMS - 데이터를 한 곳에 모은 저장소를 만들고 그 저장소에 여러 사용자가 접근하여 저장 및 관리를 할 수 있도록 환경을 제공하는 소프트웨어 프로그램을 뜻한다. DBMS 용어 튜플 테이블의 행 (= 레코드, row) 튜플은 릴레이션에서 중복되는 값을 가질 수 없다. 튜플의 수 = Cardinality 어트리뷰트 테이블의 열 (= column) 어트리뷰트의 수 = degree 릴레이션 관계형 데이터베이스의 정보를 구분하여 저장하는 기본 단위 (= table) 키 테이블의 행의 식별자로 이용되는 테이블의 열 식별자 - 여러개의 객체를 담고 있는 하나의 테이블에서 각각을 구분할 수 있는 논리적인 이름 주키(PK) - 현재 테이블에서 행을 식별하는 식별자 외래키(FK) - 현재 테이블과 연관되어 있는 외부 .. 2023. 8. 30.
23.08.29 h2를 사용한 테스트 코드 작성 중 더미 데이터가 필요할 것 같아 data.sql 파일을 만들어 더미 데이터를 넣으려 했으나 이 sql문이 작동하지 않는 문제가 발생했다. 환경 문제인가 싶어서 이것저것 찾아봐 환경도 수정해 봤으나 변동이 없었다. sql문을 짤 때 실제 데이터베이스에 있는 필드 중 필요없는 변수들은 입력하지 않았는데 이 문제일 수도 있어 수정해보려 한다. 해결!! Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement 해당 에러는 sql 파일을 테스트에 resources 디렉토리를 구현하지 않고 패키지에 그냥 추가하여 생긴 에러였다. [Column 'board_id' cannot.. 2023. 8. 29.
DI, IoC DI = 의존성 관계 주입 객체를 직접 생성해 의존관계를 만드는 것이 아니라 외부에서 객체를 생성한 뒤 setter나 생성자를 통해 외존관계를 주입하는 방식이다. 이렇게 함으로서 유연성은 높이고, 결합도를 낮출 수 있다. 스프링에서는 객체를 Bean이라고 부르며 프로젝트가 실행될 때 사용자가 Bean으로 관리하는 객체들의 생성과 소멸에 관련된 작업을 자동적으로 수행해주는데 객체가 생성되는 곳을 스프링에서는 Bean 컨테이너라고 부른다. IoC = 제어의 역전 메소드나 객체의 호출방법을 개발자가 아니라 외부에서 결정하는 것 의존성을 역전시켜 DI와 마찬가지로 유연성을 높이며 결합도를 낮추며, 가독성 및 코드 중복, 유지 보수를 편하게 할 수 있게 해준다. 객체의 생성과 실행 순서를 객체 생성 - 의존성 객.. 2023. 8. 28.
23.08.28 테스트 코드를 작성함에 있어서 여러 문제가 발생해 무엇이 문제인지 확인해 보니 단위테스트 방식와 통합 테스트 방식을 혼합해 사용하고 있었다고 한다. 지금 테스트 하고자 하는 것은 각 메서드가 제대로 작동하고 있는지 여부이니, 단위 테스트로 정확하게 테스트 하기로 했다. 데이터베이스에 연결 > @BeforeEach 사용 ... 코드는 아래 블로그 참조 https://brunch.co.kr/@springboot/418 주니어 개발자를 위한 단위테스트 샘플 코드 소개 자바&스프링 환경에서 단위 테스트 경험해보기 | 제 글을 읽지 마세요! 최근에 나온"단위테스트" 라는 책을 읽어보시길 바랍니다. ^^ (2021.06.15) 추가 의견 이 글을 작성한지 1년이란 시간이 지났습 brunch.co.kr 단위 테스트를.. 2023. 8. 28.