Map 클래스 중 무엇이 가장 빠를까? Map 관련 클래스들의 성능을 비교해 보기 위해 아래와 같이 JMH 테스트 코드를 만들었다. 데이터를 담을 때 얼마나 시간 차이가 발생하는지 확인해 보자. @State(Scope.Thread) @BenchmarkMode({Mode.AverageTime}) @OutputTimeUnit(TimeUnit.MILLISECONDS) public class MapGet { int LOOP_COUNT = 1000; Map hashMap; Map hashTable; Map treeMap; Map linkedHashMap; int[] keys; @Setup(Level.Trial) public void setUp() { if (keys == null || keys.length != ..
List 클래스 중 무엇이 가장 빠를까? List 관련 클래스들의 성능을 비교해 보기 위해 아래와 같이 JMH 테스트 코드를 만들었다. 데이터를 담을 때 얼마나 시간 차이가 발생하는지 확인해 보자. @State(Scope.Thread) @BenchmarkMode({Mode.AverageTime}) @OutputTimeUnit(TimeUnit.MILLISECONDS) public class ListAdd { int LOOP_COUNT = 1000; List arrayList; List vector; List linkedList; @Benchmark public void addArrayList() { arrayList = new ArrayList(); for (int loop = 0; loop < LOOP_..
8개의 기본 자료형 숫자와 boolean(true, false)을 나타내기 위한 자료형을 의미한다. 타입 자료형 기본값 byte 정수형 0 short 정수형 0 int 정수형 0 long 정수형 0L char 정수형 '\u0000' float 소수형 0.0f double 소수형 0.0d boolean 기타 false 참조 자료형 기본 자료형을 제외한 모든 타입을 말한다. 모든 클래스는 참조 자료형이라고 생각하면 된다. 참조 자료형과 기본 자료형의 차이 초기화할 때 기본 자료형은 값을 바로 지정하면 되지만, 참조 자료형은 일반적으로 new와 생성자를 지정하여 객체를 생성하다. 메서드를 호출할 때의 매개변수 기본 자료형 및 참조 자료형 모두 값을 전달하지만, 참조 자료형 안에 있는 변수들은 참조 주소를 전달..
DELETE, TRUNCATE, DROP 명령어 모두 삭제하는 명령어이지만 중요한 차이점이 있다. DELETE 데이터는 지워지지만 테이블 용량이 줄어들지 않는다. 원하는 데이터만 지울 수 있고 삭제 후 COMMIT 이전에 ROLLBACK을 통해 되돌릴 수 있다. ROLLBACK 정보를 기록하므로 TRUNCAT에 비해 느리다. 삭제 시 행수를 반환한다. TRUCATE 용량이 줄어들고, 인덱스 등도 삭제된다. 테이블은 삭제되지 않고, 데이터만 삭제한다. 원하는 데이만 지울 수 없고 전체 삭제만 가능하다. 삭제 후 되돌릴 수 없다. 삭제 행수를 반환하지 않는다. DROP 테이블 전체를 삭제, 공간, 객체를 삭제한다. 삭제 후 되돌릴 수 없다. 구분 테이블 정의 저장 공간 작업속도 SQL 구분 DELETE 존재..
TCL(Transaction Control Language) DCL(Data Control Language) 데이터를 제어하는 명령어에서 트랜잭션을 제어하는 명령어인 COMMIT, ROLLBACK, SAVEPOINT 만을 따로 분리해서 TCL 이라고 표현한다. 트랜잭션 개념 데이터베이스에서는 데이터의 일관성과 무결성을 보장하기 위해서는 반드시 트랜젝션 관리가 필요하다. 트랜잭션이란 데이터베이스 내에서 하나의 그룹으로 처리되어야 하는 명령문들을 모아 놓은 작업 단위이다. 예를들어 그룹이 하나 이상의 SQL문장으로 구성되어 있다고 가정할 경우 4개의 SQL문장이 하나의 그룹으로 묶여진 작업단위의 경우 4개의 SQL문장이 완전히 처리되거나 All-OR-Nothing방식으로 처리된다. 1. COMMIT INSE..
회사에서 새로 지급받은 삼성 노트북5 이다. 필자의 회사 사규에는 지정된 기간이 지나면 노트북을 새롭게 지급받게 되어있다. 그리고 지급 후 이전에 사용하던 노트북은 개인에게 귀속된다. 노트북 구성은 본품, 어뎁터, 마우스로 단순하다. 포트는 랜, HDMI, USB 3.0 2개, USB 2.0 1개, 이어폰으로 구성되어있다. 외관 이미지는 메탈에 펄이 살짝 들어가 있는 색상이다. 디자인 자체도 뭔가 둥글둥글하다고 해야 할까? 나쁘지 않다. 솔직히 요즘 출시하는 삼성 노트북9 또는 LG 그램을 받고 싶었다. 하지만 가격 대비 성능을 우선시되었다. LENOVA SAMSUNG 스펙 간단 비교 LENOVA SAMSUNG CPU Intel Core i7 4세대 Intel Core i7 8세데 그래픽 지포스 GT 7..
DML(Data Manipulation Language) 데이터 조작 언어 DB 사용자 또는 애플리케이션이 DB에 대해 데이터 검색, 등록, 수정, 삭제를 하기 위한 데이터베이스 명령어이다. SELECT, INSERT, UPDATE, DELETE Auto Commit 미적용 1. 레코드 삽입 INSERT INTO USER (USER_ID, USER_NAME, ORG_ID, TEL_NO) VALUES ('U00001','홍길동','000000','01011112222'); // INSERT 구문으로 삽입할 칼럼명과 값을 입력 // 문자열은 반드시 '' 로 감싸고 NUMBER는 그냥 숫자로 입력 // 전체 칼럼을 입력할 때는 굳이 칼럼명은 없이 VALUES 이후에 순서대로 입력 2. 레코드 수정 UPDATE..
이 책은 설명 이해를 돕기 위해 신입 개발자 "나초보"씨의 시련과 역경 스토리를 통해 성능 튜닝 이야기를 소개한다. Java 개발자라면 한 번쯤 읽어보면 좋은 책이다. 특히나 중급 개발자로 거듭나기 위해서 알야 할 기본적인 내용을 포함하고 있다. 프로파일링 툴, Colletion, Loop, Static, Synchronized, I/O, Sping, DB, XML/JSON, 서버 세팅, 안드로이드, JVM, GC 등에 대한 개괄적인 설명이 기술되어 있다. 많은 부분을 다루다 보니 깊이 있는 내용은 아니었지만 성능 튜닝에 대한 기본적인 지식을 쌓는 데는 큰 도움이 되었다.
DDL(Data Definition Language) 데이터 정의 언어, 데이터 정의어, 데이터 기술 언어로 주로 테이블의 생성, 수정, 삭제를 할 수 있는 명령어이다. CREATE, DROP, ALTER, RENAME Auto Commit 적용 1. 테이블 생성 CREATE TABLE USER( USER_ID CHAR(7) NOT NULL, USER_NAME VARCHAR2(20) NOT NULL, ORG_ID CHAR(6) NOT NULL, TEL_NO NUMBER(11), CONSTRAINT USER_PK PRIMARY KEY (USER_ID), CONSTRAINT USER_FK FOREIGN KEY (ORG_ID) REFERENCES TEAM(ORG_ID) ); // 대소문자 구분 안함 CONST..
객체는 필요할 때마다 만드는 것보다 재사용할 수 있다면 재사용하는 편이 프로그램을 더 빠르게 한다. 특히 변경 불가능한 객체는 언제나 재사용할 수 있다. 단순객체 중복생성String str = new String("reference"); // "reference" 자체가 객체 String str = "reference";첫 번째 코드는 실행될 때마다 불필요한 객체를 만드는 한 예다. "reference"은 그 자체로 String 객체이다. 그런데 이를 다시 String 객체를 생성하고 있다. 이런 코드가 반복문 안에 있다면, 수많은 객체를 쓸데없이 만들고 지우게 된다. 따라서 두 번째 코드처럼 하는 것이 바람직하다. 이렇게 하면 실행할 때마다 같은 가상머신에서 실행되는 모든 코드가 해당 객체를 재사용하게..
- 프로그래머스
- Maven
- sort algorithm
- effective java
- 제주도 여행
- 제주도 3박4일 일정
- 자바
- 성능분석
- React
- 리눅스 명령어
- 이직
- 경력관리
- 리액트 16
- 오라클
- 프로그래머
- Tomcat
- Linux 명령어
- spring
- Collection
- 오라클 내장 함수
- 개발환경
- 회고
- 정렬 알고리즘
- 리액트
- javascript
- Eclipse
- SQL
- Java
- 자바스크립트
- 소프트웨어공학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |