분류 전체보기 26

MySQL 테이블 대/소문자 구분

JPA를 활용하여 생성한 프로젝트를 진행하는 중 로컬 DB(Windows)를 사용하는 경우 문제가 없었으나 서버 DB(Linux)를 사용하는 경우 테이블을 찾을 수 없다는 문제가 발생하였다. 테이블이 정상적으로 존재하는 것을 확인하였고 일단 급한대로 Entity들에 @Table(name =" ")을 추가해서 테이블 명과 직접 매핑시켜주었다. 추후 확인해보니 Entity명의 대/소문자가 데이터베이스와 일치하지 않아서 문제가 발생한다고 생각이 들어 찾아보게되었다. https://www.lesstif.com/dbms/mysql-14745775.html MySQL 테이블 및 데이타베이스 이름 대소문자 구분 설정 www.lesstif.com MySQL에서 테이블 사용 시 Windows에서는 대/소문자 구분이 안되..

Database/MySQL 2022.08.09

JPA MULTI DATABASE 설정

리뉴얼을 진행하면서 AS-IS 데이터를 읽고 쓸 필요가 생겼다. AS-IS의 경우 Avalon 프레임워크로 되어있어 API를 개발하자니 무리가 있어 직접 DB에 연결하여 작업하기로 하였다. 이에 따라 TO-BE에서 데이터베이스 두개를 바라봐야하게 되었다. 이는 DataSourceConfig를 아래와 같이 DataSource를 두개 잡아줌으로써 해결되었다. application.yml spring: devtools: livereload: enabled: true jpa: show-sql: true hibernate: format_sql: true ddl-auto: update show-sql: true datasource: driver-class-name: org.mariadb.jdbc.Driver url..

카테고리 없음 2022.07.22

JPA

@Query JPQL(Java Persistence Query Language) 객체지향 쿼리를 입력하여 처리 쿼리 내에 데이터베이스의 테이블 대신 엔티티 클래스와 멤버 변수를 이용해서 작성. where구문과 그에 맞는 파라미터들을 처리할 경우 ?1, ?2 와 같이 1부터 시작하는 파라미터의 순서를 이용하는 방식 :(파라미터 이름)을 활용하는 방식 #{ }로 자바 빈 스타일을 이용하는 방식 이 있다. :(파라미터 이름)을 사용할 때 여러 개의 파라미터를 전달하여 복잡해질 수 있다고 생각이 될 경우 :#을 이용하여 객체를 사용할 수 있다. @Query를 이용하는데 리턴 타입을 Page으로 처리할 경우 별도의 countQuery라는 속성을 적용해 주고 Pageable타입의 파라미터를 전달해주면 된다. 기존의..

카테고리 없음 2022.01.10

TDD(Test Driven Development)란?

단위 테스트 좋은 단위 테스트의 특징 FIRST 규칙을 따라야한다. Fast : 빠르게 Independent : 독립적으로 Repetable : 반복 가능한 Self-Validation : 결과값이 boolean으로 결과 값을 내어 자체적으로 검증이 되어야한다. Timely : 적시에 테스트하려는 실제 코드를 구현하기 직전에 구현해야한다. 단위 테스트를 진행하는데 있어서 비용이 너무 클 경우 통합 테스트를 진행하는 것이 오히려 좋다. TDD(Test Driven Development) 빨간 막대 - 초록 막대 - 리팩토링 TDD의 순서 > 1. 테스트 작성 : 테스트를 생성하기위해 동작 요구 기능 기반 인터페이스 개발 2. 코드 작성 : 테스트를 통과하기 위해 테스트 실행 코드 빠른 개발 3. 리팩토링 ..

카테고리 없음 2021.12.28

단위 테스트 / 통합 테스트

단위 테스트 하나의 모듈을 기준으로 독립적으로 진행되는 가장 작은 단위의 테스트이다. 여기서 모듈이란 어플리케이션에서 동작하는 하나의 기능 또는 메소드이다. 단위 테스트는 애플리케이션을 구성하는 하나의 기능이 알맞게 동작하는지 독립적으로 테스트하는 것으로 어떤 기능이 실행되면 어떤 결과가 나오는지 정도로 테스트를 진행한다. 통합 테스트 모듈을 통합하는 과정에서 모듈 간의 호환성을 확인하기 위해 수행되는 테스트이다. 일반적이 어플레케이션은 여러 개의 모듈들로 구성이 되고 모듈들끼리 메세지를 주고받으면서 기능을 수행한다. 그렇기에 통합된 모듈들이 올바르게 연계되어 동작하는지 검증이 필요한데 이를 확인하기 위해 진행되는 테스트가 통합 테스트이다. 통합 테스트는 독립적인 기능에 대한 테스트가 아니라 웹 페이지로..

카테고리 없음 2021.12.28