반응형
Hot
-
Liquibase (리퀴베이스) 사용기 회사 데일리 스크럼에서 팀장님이 리퀴베이스에 대해 말씀해주셨는데, 처음 듣는 단어여서 뭔지 궁금했다. 그래서 실습을 해보면서 리퀴베이스가 뭔지 익혀보기로 했다! 리퀴베이스란? 우리는 소스코드 형상관리를 위해서 GIT 을 주로 사용한다. 코드는 GIT으로 형상관리 하는데.. DB 는..? DB 를 형상관리하는 것이 리퀴베이스다. 실습해보기 Spring-boot, JPA, liquibase, h2 DB 로 실습을 해보았다. Dependencies 추가 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-w..
-
Five Lines of Code - 5장. 유사한 코드 융합하기 클래스 간의 코드 통합 전략패턴 도입 기존 코드에서는 인터페이스 안에 모든 코드를 통합하다보니 유지보수가 어려운 문제가 있었다. 그래서 전략패턴을 도입해서 각각의 성격에 맞게 전략을 분리할 수 있다. 전략패턴 vs 상태패턴 전략패턴과 상태패턴은 뭔가 비슷한데 아래와 같은 차이가 있다. 전략패턴 인스턴스 생성 후, 상태가 거의 바뀌지 않는 경우 전략을 클래스로 표현 상태패턴 인스턴스 생성 후, 상태가 빈번하게 바뀌는 경우 상태를 클래스로 표현 UML UML 은 코드에 대한 속성을 전달하기 위해 다양한 유형의 표준 다이어그램으로 구성됨 시퀀스 다이어그램 : 객체 간의 요청과 응답 흐름 클래스 다이어그램 : 클래스 설계 및 연관관계 활동 다이어그램 : 기획 흐름을 보여줌 구현체가 하나인 인터페이스를 만들지 말..
-
인텔리제이에 Google Formatter 를 적용해보자! 인텔리제이 기본 Formatter 도 쓸만하지만 약간 불편한 부분이 있어 유명한 Formatter 중 Google Formatter 를 적용해보도록 하겠다. Google Formatter 다운로드 먼저 Formatter xml 파일을 다운받는다. styleguide/intellij-java-google-style.xml at gh-pages · google/styleguide · GitHub IntelliJ Formatter 적용 command + , -> Editor > Code Style 탭으로 들어간다. 그 후 아래와 같이 다운받은 XML 을 import 한다. APPLY -> OK 시 적용 완료 이후에는 Command + Option + L 을 누르면 현재 위치의 코드가 구글 스타일로 변환됨. 주..
-
토비의 스프링 chap 5 - 서비스 추상화 JdbcTemplate update 테스트 JdbcTemplate 으로 update() 메서드를 테스트 할 경우 수정하지 않아야 할 로우를 수정했는지에 대한 테스트도 하는것이 좋다. 해결 방법은 JdbcTemplate 의 update() 가 돌려주는 리턴 값이 수정된 로우의 개수이기 때문에 이것으로 판단할 수 있다. 다른 방법으로는 테스트를 보강해서 원하는 사용자 외에 정보는 변경되지 않음을 직접 확인하는 방법이 있다. 객체지향 적인 코드 Level 에 대한 부분을 Enum 으로 만들었는데, 정작 코드는 아래와 같이 사용한다. public void upgradeLevel(User user) { if (user.getLevel() == Level.BASIC) { user.setLevel(Level.SILV..
-
토비의 스프링 3.1 - 1장 토비의 스프링 chap 1 이전에 토비의 스프링 1권을 읽다가 바쁘다는 핑계로 미뤄두었었는데, 한번쯤 정독해볼 시기인 듯 하여 다시 읽어보기로 하였다. 책은 Spring 으로 프로젝트를 구성했지만, 필자는 SpringBoot 를 사용하기로 하였다. DB 데이터베이스는 학습 목적이기 때문에 간단하게 H2 를 사용했다. H2 Database Engine 실습 코드 코드는 GitHub - gbeea1004/toby-spring: 토비의 스프링 실습 깃허브에 올려두었다. chap 별로 브랜치로 나눠두어서 실습하고자 하는 브랜치에서 진행하면 된다. UserDao p.56 에서 UserDao 를 만들어서 '회원가입'과 '회원조회' 기능을 만든다. 여기 코드에서 문제가 있는데, Conne..
New
-
M4 맥북프로 16인치 구매! 2024.12.25
-
git commit 을 했는데 하나 빼먹었을 때 2024.07.18
-
JIRA 목차 추가가 이상하게 되는 현상 2024.07.05
-
java 버전 환경변수 등록 2024.06.24