일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- Spring
- Scanner class
- java프로그래밍
- 데이터
- IF문
- error
- 변수
- 백준알고리즘
- 파이썬프로그래밍기초
- Scanner
- C언어
- 기본
- 스캐너
- FOR문
- 자료구조
- 함수
- 알고리즘
- MySQL
- 하드웨어
- 자바
- 반복문
- IFELSE
- 1차원배열
- for
- 백준
- 배열
- 유비쿼터스
- java
- 스캐너클래스
- IF
- Today
- Total
목록전체 글 (92)
정리하고기록하자
HashMap 1. HashMap 은 Map 인터페이스에 속해 있는 컬렉션이다. 2. Map 인터페이스의 기본 기능등을 전부 구현할 수 있다. 3. 데이터들은 모두 ( 키, 값 )의 1:1 구조로 되어 있는 Entry로 되어있다. 4. 같은 키의 값을 삽입하려고하면 해당 키의 값이 변경이 된다. 5. 키는 중복이 되지 않지만 값은 중복이 될 수 있다. 6. 다른 특징은 HashTable과 유사하지만 동기화가 되지 않고 Null값도 저장이 가능하다. HashMap 선언 import java.util.HashMap; public class main { public static void main(String[] args) { HashMap hashMap = new HashMap(); // 타입 설정 x , O..
PSA PSA는 '잘 만든 인터페이스' 라고 한다. 추상화가 굉장히 잘 된 인터페이스 이다. 작업 환경이나 기술이 변하더라도 일관된 방식의 접근 방식을 제공하여 의존성을 크게 고려하지 않아도 되는 구조이다. 스프링에서 Controller, Mapping, Transaction 이런 Annotation등을 클래스나 메서드에 붙이기만 해주면 작동한다. 이것을 가능하게 해주는 것이 PSA 개념이다. PSA는 Portable Service Abstraction의 약자인데 여기서 핵심은 Service와 Abstraction 이다 서비스 추상화 라고 불리는데 이것을 추상화 계층을 사용하여 어떤 기술을 내부에 숨기고 개발자에게 편의성을 제공한다는 것을 말한다. Service Abstraction ( 서비스 추상화 )..
DI ( Dependency Injection ) Spring Framework는 IoC Container를 통해 인스턴스 생성을 일괄적으로 진행하고 라이프 사이클 관리 까지 위임한다. 인스턴스의 생성 및 관리의 주체가 IoC Container 이고 의존성을 주입해주기 때문에 제어의 역전이라고 불린다. 의존성을 주입하는 것을 DI ( Dependency Injection ) 이라고 한다. DI는 세가지 방법이 있다. 1. Setter Injection ( 수정자 주입 ) : 의존성을 입력받는 Setter 메소드를 만들고 이를 통해 의존성을 주입받는다. 2. Constructor Injection ( 생성자 주입 ) : 필요한 의존성을 포함하는 클래스의 생성자를 만들고 이를 통해 의존성을 주입 받는다. S..
AOP AOP 란 Aspect OOrented Programming 의 약자로 객체지향프로그래밍보다 더 큰 프로그래밍이다. 즉 '측면/양상 지향적인 프로그래밍' 이라는 의미이다. AOP는 스프링이 아니라 AOP를 구현을 할때 스프링에 도움을 받는다. 스프링과 상관없이 AOP 는 방법론이다. 예전에는 사용자가 원하는 업무 기반의 로직에만 관심이 있었다. 사용자의 주 업무를 분석하고 로직을 구현하는데만 관심이 있었다. 사용자의 업무적인 요구사항 말고, 개발하면서 개발자나 관리자가 사용하기 위해 필요한 코드들이 있다. 프로그램 구현을 하거나 테스트 하기 위해서 필요한 코드들이 있는데 그러한 코드들은 주 업무는 아니고 개발자를 위해서, 관리자를 위해서 부가적으로 추가한 코드들이다. 관점에 따라 다른 업무 분류 ..
현재 진행중인 프로젝트는 JDK 1.7 을 사용 하고 있고, JDK 1.7 -> 1.8 로 변경해야 한다. 이클립스 버전에 따라 호환 되는 JDK 이 다 다르다. 나는 이클립스 2022-03 을 사용했는데 JDK 1.8 버전으로 변경을 해도 계속 에러가 나길래 구글링 한 결과 2020-06 이클립스 버전을 사용해야 JDK 1.8 버전을 읽을 수 있다고 했다. 저기에는 2020-12 버전이 최신인데 2022-03 버전이 JDK 1.8 버전을 못 읽는거 보면 JDK 11 버전으로 읽는 것 같다 ( 내 추측 ) 이클립스 2020-06 버전 다운로드 후 eclipse.ini 파일을 열어 -vm / JDK 파일 경로 /jdk1.8.0_281/bin 추가 했다. 수정 후에 maven > update Project ..
IoC란 IoC( 제어 반전 ) 이란 객체의 생성, 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 것을 의미한다. ( 직접 의존성은 생성하지 않고 누군가에 의해 주입받는다. 의존성 주입!) 이것이 '제어의 역전' 이라고 부른다. IoC 컨테이너 스프링 프레임워크도 객체를 생성하고 관리하고 책임지고 의존성을 관리해주는 컨테이너가 있는데, 그것이 바로 IoC 컨테이너 이다. public interface CarInterface { public void makeCar(); } public class Center { public Center() { System.out.println("--------영업시작합니다--------"); System.out.println("-------------------..
해쉬 테이블 ( Hashtable ) 해쉬 테이블은 Key , Value 를 저장하는 데이터 구조이다. 해쉬 테이블은 *해쉬함수를 사용하여 키를 해쉬값으로 매핑하고, 이 해쉬값을 인덱스 또는 주소삼아 데이터를 key와 함께 저장하는 자료구조 이다. 단순하게 key - value 로 이루어진 자료구조라고 생각하면 된다 *해쉬 함수 ( Hash Function ) 해쉬와 해쉬테이블을 알기전에 Hash Function(해쉬함수) 라는 것을 알아야 한다. 데이터를 최대한 빠르게 찾기 위해서는 저장하는 위치도 잘 생각해서 저장해야 한다 해쉬 함수의 정의는 key를 고정된 길이 hash로 변경해주는 역할을 한다. 이 과정을 hasing 이라고 한다 key를 해쉬함수라는 함수에 input으로 넣어서 Output으로 ..
MYSQL 양력 달력 음력 달력으로 변경 할때 함수 CREATE DEFINER=`db이름`@`%` FUNCTION `함수이름`( `AS_DATE` VARCHAR(50) ) RETURNS double LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT '생일음력->양력변환 ' BEGIN DECLARE ll_convert_date VARCHAR(100) DEFAULT ''; DECLARE LunerY INT DEFAULT 0 ; DECLARE LunerM INT DEFAULT 0 ; DECLARE LunerD INT DEFAULT 0 ; DECLARE i INT(5); DECLARE j INT(5); DECLARE p INT(5)..
트리 (Tree) 트리란 *계층적인 구조를 표현하기 위한 일상적으로 사용하는 구조이다 ( *비선형 자료구조 ) * 계층적 구조는 일반적으로 조직도를 나타내는 경우이다. * 비선형이란 일직선으로 나타내지 못하는 방식이다. 트리 값 저장 1. 데이터와 연결 상태를 저장할 클래스 생성 ( 노드 ) 2. 각각의 노드들에 값 저장 3. 노드 간 연결 상태 정의 1. 데이터와 연결 상태를 저장할 클래스 생성 ( 노드 ) Node 라는 클래스를 만들고, 저장할 값 변수 ( value ) , 왼쪽 연결 노드 ( left ) , 오른쪽 연결 노드 ( right ) 에 대한 정보를 저장할 변수를 생성한다. 2. 각각의 노드들에 값 저장 3개의 Node를 생성하고, 우선 leftNode와 rightNode에 대한 정보를 n..
큐(Queue) 큐란 컴퓨터의 기본적인 자료구조의 한가지로, 먼저 집어 넣은 데이터가 먼저 나오는 FIFO ( First In First Out ) 구조로 저장하는 형식이다. ex ) 줄서기와 같이 처음 선 사람이 처음 통과하는 것처럼, 가장 먼저 넣은 데이터를 가장 먼저 꺼낼수 있는 구조. 큐의 선언 import java.util.LinkedList; import java.util.Queue; public class Main { public static void main(String[] args){ Queue que = new LinkedList(); que.add("Hello"); que.add("World"); System.out.print(que); } } 주요 메소드 기능 Throws excep..