일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바
- 뉴턴역학
- GIT
- 코틀린
- write by chatGPT
- 시스템
- 자바네트워크
- 웹 크롤링
- write by GPT-4
- oracle
- Java
- 유닉스
- 파이썬
- android
- lombok
- 인프라
- JVM
- python
- 역학
- 고전역학
- Spring Batch
- 소프트웨어공학
- chatGPT's answer
- kotlin
- NIO
- 리눅스
- GPT-4's answer
- 자바암호
- Database
- Spring boot
- Today
- Total
목록Java (85)
Akashic Records
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/crirQJ/btsmFhd19iF/8iNbv8ShYy4KQBdXuMCIn0/img.png)
Java 클래스 로더(Class Loader)는 JVM(Java Virtual Machine)에서 클래스 파일들을 로드하는데 사용되는 일종의 추상 클래스입니다. 이는 런타임에 동적으로 자바 클래스를 로드하거나 네트워크에서 다른 소스로부터 클래스를 로드하는 역할을 합니다. 클래스 로더의 주요 기능은 다음과 같습니다: 로딩(Loading): 이 단계에서 클래스 로더는 클래스나 인터페이스의 바이너리 데이터를 메모리에 로드합니다. 클래스 로더는 이 프로세스를 통해 완전한 바이너리 트리를 생성하고, 이를 JVM 메모리에 로드합니다. 연결(Linking): 로딩이 완료되면 연결 단계가 시작됩니다. 이 단계는 검증, 준비, 그리고 (선택적으로) 해석의 세부 단계로 구분될 수 있습니다. 검증(Verification):..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cQbzsA/btsj5ShHWOO/n0M8DFYLMFzKyXAeuJLsO0/img.png)
SDKMAN은 Software Development Kit Manager의 약자로, JVM 기반 언어와 프레임워크를 쉽게 관리할 수 있게 해주는 도구입니다. 이 도구를 사용하면, JDK, Groovy, Scala, Kotlin 등과 같은 JVM 기반의 언어와 Gradle, Maven 등의 빌드 도구를 손쉽게 설치하고 관리할 수 있습니다. SDKMAN 설치하기 SDKMAN은 Unix 기반 시스템 (예: Linux, Mac)에서 사용할 수 있습니다. 설치는 매우 간단합니다. 다음 명령을 터미널에 입력하면 됩니다. curl -s "https://get.sdkman.io" | bash 설치 후에는, 터미널을 재시작하거나 다음 명령을 실행하여 SDKMAN을 초기화합니다: source "$HOME/.sdkman/b..
public class SingleHome{ private String ref="java:comp/env/ejb"; //EJB reference name use ejb/remote interface name private static HashMap homeMap; private SingleHome(){} public static SingleHome getSingleHome(){ if (homeMap==null){ homeMap=new HashMap(); } return SingleHome(); } public Object getDestHome(String remoteInterfaceName){ String strLookup="ref"+remoteInterfaceName; ..
대부분의 문제 발생 원인(리스트는 우선 순위가 아닙니다.) 1. 해당 어플리케이션이 사용하는 Native 코드 사용시 발생 2. 모든 Type 2 JDBC 드라이버는 native DBMS 라이브러리를 사용하므로 이러한 유형의 오류가 발생할 수 있습니다. 이 드라이버가 문제의 원인인지 판별하려면 pure java(Type 4) JDBC ..
Java Memory Model JVM(Java Virtual Machine) Machine이라는 말이 들어가 있지만 실제로는 Software. Machine이라는 말이 들어간 이유는 JVM이 실제적으로 CPU와 같은 역할을 하기 때문이다. Program은 CPU 위에서 돌아간다. C나 C++과 같은 프로그램 에서 Compile된 코드(native code)는 CPU에서 바로 실행이 가능하다. 하..
JAVA 5.0 가비지 콜렉터 추가 옵션 throughput generationacollector 여러 개의 CPU를 사용하여 멀티 쓰레드를 구동한다. 구동옵션 -XX:+UseParallelGC : 병렬 가비지 콜렉션 사용(JDK 1.4.0 이후) -XX:ParallelGCThreads=n : 병렬 가비지 콜렉션에 사용될 쓰레드 수 지정 추가옵션 -XX:AdaptiveSizeDecrementScaleFactor=VALUE : adapti..
PLT 2.4 GC 관련 파라미터 전체 Heap Size 조정 옵션 “-Xms: 초기 Heap 사이즈, –Xmx: 최대 Heap 사이즈” 예) –Xms512m –Xmx1024m 메모리 변화량이 큰 어플리케이션이 아니라면 이 min heap size와 max heap size는 동일하게 설정하는 것이 좋다. 일반적으로 IGB까지의 Heap을 설정하는 데에는 문제가 없으나, IGB..