일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- github
- VCS
- Heap
- socket
- git
- nodejs
- Java
- Elk
- HTTP
- ajax
- r
- redis
- Lombok
- mongodb
- 데이터통신
- effective
- cache
- 네트워크
- AWS
- Static
- html
- mybatis
- NoSQL
- libuv
- spring
- javascript
- Linux
- network
- reactor
- reactive
- Today
- Total
목록Java (37)
빨간색코딩
참조문서 : https://docs.oracle.com/javase/8/docs/api/java/io/package-frame.htmlio 부분에서 JDK 1.4 이전 방식을 클래식 I/O 라고 하고, 이후 방식을 NIO(Non-blocking I/O)라고 한다. 이제는 클래식 IO를 사용한다 해도 내부적으론 NIO를 활용하기 때문에 성능차이는 크게 없다.1. java에서 I/O란?I/O를 스트림(Stream)이라고 부르기도 한다. 접두어로 in, read 가 붙으면 입력관련이고, out, write 가 붙으면 출력관련이다. 데이터를 읽고 쓰는 대상으로는 디스크, 사용자 입출력, 네트워크 등이 있다.읽기 전용쓰기 전용1 Byte 단위 처리InputStreamOutputStream2 Byte 단위 처리Re..
참조문서 : https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html1. 컬렉션이란?java.util 패키지에서 가장 핵심, 여러 개의 객체를 보관할 수 있게 만들어진 클래스들(자료구조)주요 용어리스트(List) : 순서를 가지고 있으며, 중복을 허용하는 보관 구조(인덱스 번호가 핵심)세트(Set) : 순서를 가지지 않고, 데이터의 중복을 허용하지 않는 구조맵(Map) : 키-값을 가지며, 키를 가지고 원하는 데이터를 검색하는 구조Element : 자료구조 안에 들어가는 데이터를 의미시간복잡도사진출처: http://bigocheatsheet.com/2. *List 계열리스트는 내부적으로 무한대의 배열을 가진다. ArrayList를 까보면 p..
oracle에서 제공하는 jdk 8을 설치하는 방법에는 여러가지가 있을 것이다. wget으로 다운받으려 하는 경우, 라이센스 동의 쿠키를 따와야 한다. 아래는 명령어다 wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm" 현재 경로에 jdk rpm이 설치될거고, rpm -Uvh 로 설치한다.보통 설치 경로는 /..
1. JVM(Java Virtual Machine)이란?jvm은 java를 운영체제로부터 독립적으로 실행시켜주는 핵심이자 원리이다. 예를들어 C언어의 경우 소켓프로그램을 윈도우에서 짜면, 리눅스에서는 같은 코드로 돌아가지 않는다. 컴파일조차 실패할거다. 헤더파일도 다르고 함수명도 전부 다르니ㅋㅋ 그렇지만 java는 소켓프로그램짜두면 윈도우든 리눅스든 맥이던 플랫폼에 상관없이 돌아간다.2. JVM 구성요소JVM은 위 그림처럼 4가지 구성 요소를 가지고 있다.3. Class Loader.java 파일을 javac로 컴파일하면 바이트코드(.class)가 나온다. 이 파일을 컴파일 타임이 아닌 런타임에(동적으로) 메모리로 올려서 실행하는 부분이 Class Loader이다.※ Class Loader에 의해 바이트..
이클립스가 죽었다. OS : window10eclipse 버전: mars.2 (4.5.2) 아주아주 재밌는 자바~~코딩을 하려고 이클립스를 켰는데 그제만해도 잘되었던게 안 켜진다..정확히는 로딩 후에 workspace를 열자마자 죽는 현상이 있었다. (응답없음) 의 이클립스를 강제로 종료하면 java was started but returned exit code=-805306369C:/Program Files/Java/jdk1.8.0_60/bin/javaw.exe-Dosgi.requiredJavaVersion=1.7-Xms256m-Xmx1024m...... 팝업 로그가 뜬다. code=-805306369를 조회해보면 workspace가 깨졌을때 발생하는 거랜다 스위칭해야하는데 이클립스를 들어가질 못하니,..
학교애들 알려주던거 기록해둔다ㅋㅋ Thread.sleep(1000); 이 이해안된다고!? 참조문서: http://docs.oracle.com/javase/8/docs/api/javax/swing/Timer.html 1. Timer 클래스의 생성자Timer(int delay, ActionListener listener) delay : 초기 지연 후에 listener를 설정된 밀리세컨드마다 호출한다.listener : 호출될 이벤트 2. 소스 이다. 3. 실행결과메인쓰레드 START반복문0반복문1반복문21번째 호출: Sun Mar 19 00:23:14 KST 2017반복문3반복문42번째 호출: Sun Mar 19 00:23:16 KST 2017반복문5반복문63번째 호출: Sun Mar 19 00:23:18 ..
어노테이션(Annotation)에 대해 알아보자 나는 공부할 때 사진이 많은 것은 ppt로 정리하여 두고, 텍스트만있다면 txt에 적어두는데, 블로그에 올리기 위하여 ppt자료를 풀어서 써본다(피피티에 더 자세히 설명해뒀으니.. 혹시 참고하실분은 슬라이드쉐어 보세유) Annotation from JungHoon Lee 1. 어노테이션이란 - @를 이용한 주석, 자바코드에 주석을 달아 특별한 의미를 부여한 것 - 컴파일러가 특정 오류를 억제하도록 지시하는 것과 같이 프로그램 코드의 일부가 아닌 프로그램에 관한 데이터를 제공, 코드에 정보를 추가하는 정형화된 방법. 2. 어노테이션의 용도 - @Override 어노테이션처럼 컴파일러를 위한 정보를 제공하기 위한 용도 - 스프링 프레임워크의 @Controlle..