[JAVA] 백준 #2920 - 음계
·
💡 Algorithm/백준
2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] melody = new int[8]; for (int i=0; i melody[i - 1]){ isDecending = false; } } if (isAscending) { System.out.println("ascending"); } e..
스프링 부트와 AWS로 혼자 구현하는 웹 서비스 후기
·
📝 끄적끄적/후기 및 회고
읽게 된 이유 주로 레거시 위주로 수행하다 보니, AWS랑 git action CI/CD를 해보고 싶어서 추석에 읽었다. 느낀 점 테스트, 빌드, 배포를 자동화하니 정말 개발에 집중할 수 있겠다는 생각이 든다.. 나중에 꼭 실무 프로젝트에서 CI/CD를 사용해 보거나, 직접 구축해보고 싶다. 입사 후 첫 프로젝트에서 젠킨스를 사용했었는데, 그땐 완전 병아리 때라 배포하는 거 구경만 해봤다는..😅 2019년 책이다 보니 현재랑 Java, JUnit 버전 차이도 있고, 순탄히 진행되진 않았다. 검색하면서 최근 버전에 맞게 마이그레이션하는 과정도 필요했다. 아래 링크는 꼭 참고하는걸 추천한다. 스프링 부트와 AWS로 혼자 구현하는 웹서비스 후기 (1/2) 해당 github repository의 issues 또..
AWS EC2 RDS 생성 후 데이터베이스 생성이 안됐을 때
·
🛠 DevOps & Tool/AWS
AWS RDS에서 데이터베이스 인스턴스를 생성하면 기본으로 생성되는 스키마 외에 내가 추가한 스키마가 자동 추가된다고 책에 적혀있었는데.. 아무리 reload를 해도 기본 스키마들 밖에 없었다. 해결 인스턴스 생성 화면 맨 밑에 청구 예상 비용 윗 부분에 추가 구성이라는 토글을 클릭해서 초기 데이터베이스 이름을 입력해줘야 한다! 이름을 지정하지 않으면 데이터베이스를 생성해주지 않는다고 친절히 설명돼 있었음. 기본으로 만들고 DDL문으로 만들어줘도 되지만 만들 때 생성하면 편리하니까..! 결과 자동으로 잘 생성된 것을 확인할 수 있다.
@WebMvcTest 와 @EnableJpaAuditing
·
💻 Dev/Test Code
스프링 부트와 AWS로 혼자 구현하는 웹 서비스를 읽다가 궁금해서 포스팅한 내용입니다.  개요`@WebMvcTest`를 사용한 테스트 코드가 있었다.@RunWith(SpringRunner.class)@WebMvcTest(controllers = HelloController.class)public class HelloControllerTest { ...} 이 테스트 코드를 돌리니 IllegalArgumentException: At least one JPA metamodel must be present!라는 에러가 발생했다.책에는 단순히 아래와 같이 설명돼 있었다.. @WebMvcTest는 @EnableJpaAuditing로 인해 발생한다.@EnableJpaAuditing를 사용하기 위해선 최소 하나의 @E..
[자바의 정석] - 인터페이스(interface)
·
📝 끄적끄적/🖥️ 자바의 정석
인터페이스(interface) 인터페이스를 이해하려면 추상화, 다형성에 대한 이해가 필수적이다. ❓인터페이스란 ⭐ 추상 메서드의 집합 핵심 구현된 것이 전혀 없는 설계도, 껍데기(모든 멤버가 public) interface 인터페이스이름 { public static final 타입 상수이름 = 값; public abstract 메서드이름(매개변수목록); } 인터페이스는 변수를 가질 수 없다. 무조건 상수만 가질 수 있다. 메서드는 전부 다 추상메서드 = 추상메서드의 집합 interface PlayingCared { public static final int SPACE = 4; final int DIAMOND = 3; //public static final int DIAMOND = 3; static int..
[자바의 정석] - 다형성
·
📝 끄적끄적/🖥️ 자바의 정석
다형성 객체지향에서 제일 중요한 개념이다. 다형성을 이해 못 하면 추상클래스, 인터페이스 이해를 못 할 것이다. 여러 가지 형태를 가질 수 있는 능력 조상 타입 참조 변수로 자손 타입 객체를 다루는 것 class SmartTv extends Tv {} Tv t = new SmartTv(); //타입 불일치. ❓ 객체와 참조변수의 타입이 일치할 때와 일치하지 않을 때의 차이 가정 `Tv` 클래스의 멤버(참조변수, 메서드): 5개 `SmartTv` 클래스의 멤버(참조변수, 메서드): 7개 `SmartTv s = new SmartTv();` 타입이 일치할 때는 멤버 7개를 다 사용할 수 있다. `Tv t = new SmartTv();` 일치하지 않을 때는 멤버 5개만 사용할 수 있다. 자손 타입의 참조변수로 ..