사용 기술JavaMavenSpring BootLocal Reids 설치Mac 의 Local 환경에서 설치해서 아래 블로그의 도움을 받았습니다.https://herojoon-dev.tistory.com/170 Mac에서 Redis(레디스) 설치하기목표 Mac OS에서 Redis 설치하기 Mac OS에서 Redis 실행 Redis 실행 상태 확인 Redis CLI를 이용해서 Redis 사용해보기 해보기 1. Mac OS에서 Redis 설치 // Homebrew(Mac OS용 패키지 관리자) 설치 여부 확인 brew --versioherojoon-dev.tistory.com 코드 구현pom.xmlDependency '' not found 에러 해결법은 아래 글처럼 해결했습니다.https://skylarc..
인터페이스인터페이스 설명 보러가기https://skylarcoding.tistory.com/253 자바 객체지향 - 인터페이스 implements인터페이스추상 메서드의 집합구현된 것이 전혀 없는 설계도이다. 껍데기 (모든 멤버가 public) interface 인터페이스이름 { public static final 타입 상수이름 = 값 ; public abstract 메서드이름 (매개변수목skylarcoding.tistory.com 다형성다형성 설명 보러가기https://skylarcoding.tistory.com/251 자바 객체지향 - 다형성다형성이란조상 타입 참조 변수로 자손 타입 객체를 다루는 것 * 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. 있는 기능을 안 쓰는 건 괜찮은데, ..
인터페이스추상 메서드의 집합구현된 것이 전혀 없는 설계도이다. 껍데기 (모든 멤버가 public) interface 인터페이스이름 { public static final 타입 상수이름 = 값 ; public abstract 메서드이름 (매개변수목록);} 상수에서의 public staitc final, 메서드의 public abstract 는 생략이 가능하다.interface PlayingCard { // 상수 public static final int SPADE = 4; final int DIAMOND = 3; static int HEART = 2; int CLOVER = 1; // ( public static final ) int CLOVER = 1; // ..
추상 클래스미완성 설계도, 미완성 메서드를 갖고 있는 클래스이다.abstract class Player { abstract void play (int post); abstract void stop ();} 다른 클래스 작성에 도움을 주기 위한 것이며, 인스턴스 생성이 불가능하다.* 미완성 설계도이기 때문에 제품 생산이 불가능하다.Player p = new Player(); // 에러. 추상메서드의 인스턴스 생성 불가 상속을 통해 추상 메서드를 완성해야 인스턴스가 생성이 가능하다.class AudioPlayer extends Player { void play (int pos) { ... } void stop () { ... }} AudioPlayer ap = new AudioPlayer();..
다형성이란조상 타입 참조 변수로 자손 타입 객체를 다루는 것 * 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. 있는 기능을 안 쓰는 건 괜찮은데, 실제 가지고 있는 기능보다 버튼이 더 많으면 안된다.ex) 리모콘에 버튼 있는데 실제 작동 안하면 난리난다는 상황을 생각해보면 된다.Tv t = new SmartTv();SmartTv s = new Tv(); // 에러 객체와 참조변수의 타입이 일치할 때, 일치하지 않을 때 차이class Tv { boolean power; int channel; void power() { power = !power; } void channelUp() { ++ channel; } void channelDown() { -- chan..
접근제어자자바의 접근제어자로는 public, protected, default, private 이 있다.각각의 접근 범위는 아래와 같다. 해당 내용은 기억해 두는 게 좋다. public // 모두 접근 가능protected // 같은 패키지 + 자손 (다른 패키지)(default) // 같은 패키지private // 같은 클래스 내 접근 가능 private 접근 제어자를 사용하는 이유는1. 외부로부터 데이터를 보호하기 위해서- 외부접근을 막아 원하지 않는 데이터로 변경되는 것을 막는다. 2. 외부에는 불필요한, 내부적으로만 사용되는 부분을 감추기 위해서.- 접근 제어자의 범위는 좁혀놓고, 필요하면 넓힌다. 좁을수록 테스트할 경우의 수가 줄어들기 때문이다. private 을 사용하여 멤버변수에 직접..
카멜 표기법 (Camel Case)첫 단어는 소문자로 시작하고, 이후 단어의 첫 글자는 대문자로 시작한다.camelCaseExamplevariableName 파스칼 표기법 (Pascal Case)모든 단어의 첫 글자가 대문자로 시작한다.PascalCaseExampleVariableName 스네이크 표기법 (Snake Case)모든 단어가 소문자로 작성되며, 단어 사이를 언더스코어(_)로 구분한다.snake_case_examplevariable_name 헝가리안 표기법 (Hungarian Notation)변수의 타입이나 용도를 접두사로 붙여서 나타낸다.strNameiCount DB 나 Java 에서 사용하는 게 달라 이름 정도는 알아두면 좋다. (아무래도 의사소통에 용이)
환경Java, Spring Boot, Maven, Mybatis, Redis Redis 설치하기나의 경우 맥북이어서 아래 블로그의 도움을 받았다.https://herojoon-dev.tistory.com/170 필요한 코드는 많지 않다.brew install redis // redis 설치brew services start redis // redis 실행brew services stop redis // redis 종료 Redis 포트번호 확인 Redis 환경설정 (RedisConfig.java)redisConnectionFactory() redisConnectionFactory() 메서드에서는 Redis 서버 연결 정보만 설정한다. 실제 통신은 진행하지 않는다.1. RedisStandalongCo..
Dependency not found 가 발생하는 에러이다. 버전도 바꿔보고, parent dependency 버전도 바꿔봤지만 해결하지 못했다. 열심히 검색하다 Maven project 자체를 업데이트 해보라는 글을 발견했다.먼저 Reload Project 가 있길래 해당 작업을 진행했다. 그랬더니 바로 해결...! 나의 경우 버전문제인가 싶어 미리 버전을 다 찾아서 맞춰놓았다. 때문에, 이걸로도 안된다면 아래 MvnRepository 사이트에서 현재에 맞는 버전으로 입력하자. https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-redis 참고https://stackoverflow.com/q..
for-each 루프 설명for-each 루프는 배열이나 컬렉션의 모든 요소를 순회할 때 사용하는 문법이다.인덱스를 직접 관리할 필요가 없어 코드가 간결해지고 가독성이 높아진다.배열 뿐만 아니라 다양한 자바 컬렉션 타입 (ArrayList, Hash 등)에서도 사용할 수 있다. for(데이터타입 변수명 : 배열/컬렉션) { // 변수명을 사용하여 각 요소 처리} 예시int num 은 배열 numbers 의 각 요소를 가리키는 변수이다. 루프가 실행될 때마다 num 에 다음 요소가 할당된다. int[] numbers = {1, 2, 3, 4, 5};for (int num : numbers) { System.out.println(num); // 출력: 1 2 3 4 5} ArrayList 에서 사용하..