분류 전체보기 159

[엘라스틱서치] 1. 개념 및 설치

ELASTICSEARCH 개념 : 실시간 데이터를 저장, 분석 및 검색하는 엔진 아파치 루씬을 사용하여 개발 루씬 : 전문 색인과 검색을 지원하는 확장 가능한 고성능 정보 검색 JSON 문서기반 저장 및 검색 ELK 스택으로 제공 E ( ElasticSearch ) : 데이터 저장 및 검색 L ( Logstach ) : 데이터 수집 로그 스태시는 데이터의 입력, 변환, 출력을 실시간 파이프라인으로 처리하는 오픈 데이터 수집 엔진 다양한 입력소스에서 동시에 데이터를 수집하여 변환한 후 자주 사용하는 스태시-보관소로 전송 K ( Kibana ) : 데이터 시각화 및 리포팅 분석 사용 사례 위키피디아 전문 검색 수행 실시간 타이핑 검색 추천 검색어 기능 깃허브 1300억 줄이 넘는 소스 코드를 검색하는데 사용..

ELASTICSEARCH 2024.03.11

Java 문법) 컬렉션 프레임워크 - Map 컬렉션

Map 컬렉션 : 키와 값으로 구성된 엔트리 객체를 저장 키는 중복 저장이 안되지만, 값은 중복 저장 가능 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대체 범주 메서드 또는 기능 설명 객체 추가 V put(K key, V value) 지정된 키(key)와 값(value)을 매핑, 이전 값 대체 객체 검색 V get(Object key) 주어진 키(key)에 대응하는 값 반환 boolean containsKey(Object key) 주어진 키(key)가 맵에 존재하는지 확인 boolean containsValue(Object value) 주어진 값(value)가 맵에 존재하는지 확인 V get (Object key) 주어진 키(key)에 대응하는 값을 반환 객체 삭제..

Java 2023.11.03

Java 문법) 컬렉션 프레임워크 - Set 컬렉션

Set 컬렉션 : 수학의 집합 개념 순서를 유지하지 않고 저장, 중복 저장 불가, 하나의 null만 저장 가능 (1) HashSet : hashCode( ) 메서드의 리턴값이 같고, equals( ) 메서드가 true를 리턴하면 동일한 객체라고 판단하고 중복 저장하지 않음 데이터 중복을 방지하고 고유한 요소를 관리하기 위한 용도로 사용 예제 1 ) public class Set01 { public static void main(String[] args) { // 상속관계 // Object --> Set --> HashSet Object[] objArr = {"1","2","2","3","3","3","4","4","4","4"}; Set set1 = new HashSet(); for(Object obj ..

Java 2023.11.03

Java 문법) 컬렉션 프레임워크 - List 컬렉션

컬렉션 프레임 워크란? : 자료구조를 사용해서 객체들을 효율적으로 관리할 수 있도록 인터페이스와 구현 클래스를 java.util 패키지에서 제공하는 것을 총 칭하는 말 java.util 패키지에 포함 인터페이스를 통해 다양한 컬렉션 클래스 이용 컬렉션 : 객체의 저장 프레임워크 : 사용 방법을 정해 놓은 라이브러리 기능 메서드 설명 요소 추가 boolean add(E element) 리스트의 끝에 요소(element) 추가 void add(int index, E element) 주어진 위치(index)에 요소(element) 삽입 set(int index, E element) 주어진 인덱스의 개체를 새로운 객체로 바꿈 요소 검색 E get(int index) 지정된 위치(index)에 있는 요소를 반환 ..

Java 2023.11.03

Java 문법 ) Object클래스 - getClass

Object 클래스 메서드 중 public Class getClass ( ) 메서드는 객체 자신의 클래스 정보를 담고 있는 Class 인스턴스를 반환한다. 예제 )public class GetClass05 { public static void main(String[] args) { Card c1 = new Card("HEART", 10); // getClass() : 객체 얻어오기 Class cObj1 = new Card().getClass(); // 재정의한 것은 가져오지 않는다. Class cObj2 = c1.getClass(); try { Class cObj3 = Card.class.forName("Ca..

Java 2023.11.02

Java 문법 ) Object클래스 - clone

Object 클래스 메서드 중 protected Object clone ( ) 메서드는 객체 자신의 복사본 반환한다. 예제 ) class Point implements Cloneable{ int x; int y; Point(int x, int y) { this.x = x; this.y = y; } @Override public String toString() { return "x = " + x + ", y = " + y; } public Object clone() { Object obj = null; try { obj = super.clone();// 그냥 clone 하면 내꺼 호출, 지금은 부모꺼 호출 } catch (CloneNotSupportedException e) { e.printStackTra..

Java 2023.11.02

Java 문법) Object클래스 - toString

Object 클래스 메서드 중 public String toString ( ) 메서드는 객체 자신의 정보를 문자열로 반환한다. 예제 ) class Card { String kind; int number; Card() { this("SPADE", 1); } Card (String kind, int number) { this.kind = kind; this.number = number; } @Override public String toString() { return "kind : " + kind + ", number : " + number; } } public class ToString03 { public static void main(String[] args) { Card c1 = new Card(); ..

Java 2023.11.02

Java문법) Object클래스 - hashCode

Object 클래스 메서드 중 public int hashCode ( ) 메서드는 객체 자신의 해시코드를 반환한다. 예제 ) public static void main(String[] args) { String str1 = new String("abc"); String str2 = new String("abc"); String str3 = "def"; String str4 = "def"; System.out.println(str1.equals(str2)); // true 출력 System.out.println(str1.hashCode());// 96354 출력 System.out.println(str2.hashCode());// 96354 출력 System.out.println(System.identit..

Java 2023.11.02

Java문법) 예외처리 -4 (throw와 throws)

1. throw 예외가 발생하지 않았음에도 예외를 명시적으로 발생 시킴 ( 강제로 예외 발생시킴 ) 예외가 발생되었을 때 제대로 처리되는지 확인하기 위해 사용 public static void main(String[] args) throws Exception { try { Exception e = new Exception("고의로 발생시킴"); throw e; }catch ( Exception e ) { System.out.println(e); } } 출력결과 ) [출력방법] (1) printStackTrace ( ) : 예외 발생 시 호출 스택 ( call stack ) 에 있었던 메서드의 정보와 예외 메세지를 화면에 출력 (2) getMessage ( ) : 발생한 예외클래스의 인스턴스에 저장된 메시..

Java 2023.11.01

Java문법) 예외처리 -3 (ClassCastException, InputMismatchException)

4. ClassCastException : 변환할 수 없는 타입으로 객체를 변환할 때 발생 출력결과 ) 예외처리 후 class Animal { } class Dog extends Animal { } class Cat extends Animal { } public class ClassCast05 { public static void main(String[] args) { try { Dog dog1 = new Dog(); Animal an = dog1; Dog dog2 = (Dog)an; System.out.println("Dog 형변환"); Animal an2 = new Animal(); Cat cat = (Cat)an2; System.out.println("Cat 형변환"); } catch(ClassCa..

Java 2023.11.01

Java문법) 예외처리 -2 (NullPointerException, ArrayIndexOutOfBoundsException, NumberFormatException)

1. NullPointerException : 객체 참조가 없는 상태 ( 객체가 없는 상태에서 객체를 사용하려 할 때 발생 ) public class NullPointerException02 { public static void main(String[] args) { try { String str = null;// 객체가 아직 생성되지 않은 상태에서 System.out.println(str.toString());// 주소값이 없는데 toStirng 호출하므로 오류 ! } catch(NullPointerException e) { System.out.println("데이터가 들어 있지 않습니다"); System.out.println("예외메시지 : " + e); } System.out.println("끝까지..

Java 2023.11.01

Java문법) 예외처리 -1

에러 : 자바에서 컴퓨터 하드웨어 관련 고장으로 인해 응용프로그램 실행 오류가 발생하는 것 예외 : 그 외 프로그램 자체에서 발생하는 오류 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류 예외 처리 프로그램을 통해 정상 실행 상태 유지 가능 예외 발생 가능성이 높은 코드를 컴파일할 때 예외 처리 유무 확인 (1) 일반 예외 : 컴파일러 체크 예외로 자바 소스 컴파일 과정에서 해당 예외 처리 코드 있는지 검사하게 됨 (2) 실행 예외 : 컴파일러 넌 체크 예외로 실행 시 예측할 수 없이 갑자기 발생하기에 컴파일 과정에서 예외 처리 코드 검사하지 않음 종류 설명 ArithmeticExcept..

Java 2023.10.31

Java문법) final 키워드

final 키워드 : 해당 선언이 최종 상태이며 수정될 수 없음을 의미 클래스 및 메서드 선언 시 final 키워드를 사용하면 상속과 관련됨 상속할 수 없는 final 클래스 → 부모 클래스가 될 수 없어 자식 클래스를 만들 수 없음을 의미 final class Final01 { } class FinalInher extends Final01 { // 오류 : class 앞에 final을 붙이면 상속 불가 } 재정의 할 수 없는 final 메서드 → 부모 클래스에 선언된 final 메서드는 자식 클래스에서 재정의 할 수 없음 class Final02 { int num = 10; final int NUM2 = 34; // 상수 ( 변수 앞에 final 붙임, 값이 한 번 저장되면 변경이 불가) //( 변수로..

Java 2023.10.30

Java 문법) 가변인자

MultiArgs 가변인자 Java에서 메서드에 다양한 개수의 인수를 전달 가능 메서드 정의에서 타입... 변수명 형식으로 가변인자 선언 가변인자를 사용하면 메서드 호출 시 다양한 개수의 인수 전달이 가능 메서드 내부에서 이러한 인수를 배열로 처리가 가능 ! public class MultiArgsTest { public static void main(String[] args) { /*MultiArgsTest mt = new MultiArgsTest(); String str = mt.concatenate("", "", "", "");*/ String str = concatenate("a", "b", "c"); System.out.println(str); String strArr[] = {"마리오", "루..

Java 2023.10.27

Java문법) 메서드 오버로딩

메서드 오버로딩 ( overloading ) 같은 이름의 메서드를 여러 개 선언 매개 값을 다양하게 받아 처리할 수 있도록 하기 위함 매개 변수의 타입, 개수, 순서 중 하나가 달라야 함 ( 리턴 타입은 동일해도 되고 아니어도 됨, 메서드 이름은 동일해야 함 ) package overloading08; public class Arithmetic { int j = 10; // 메서드 오버로딩 int plus(int x, int y) { int re = x+y; return re; } void plus(int x) { System.out.println(x + "+10=" + ( x + 10 )); System.out.println(x + "+" + j + "=" + ( x + j )); } void plus..

Java 2023.10.26