Java/공부공부 (23) 썸네일형 리스트형 [JAVA] Thread.sleep() Thread.sleep()현재 실행 중인 스레드의 실행을 일시적으로 멈추게 하는 메서드. Thread.sleep(milliseconds);Thread.sleep(milliseconds, nanoseconds); - milliseconds : 대기 시간 (밀리초) - nanoseconds : 추가 대기 시간 (나노초) ex) public class SleepExample { public static void main(String[] args) { System.out.println("Start"); try { Thread.sleep(2000); // 2초 동안 멈춤 } catch (InterruptedException e) { .. [JAVA] port연결 확인 스케줄러 (ScheduledExecutorService, CountDownLatch) * port 연결 여부 확인 스케줄러 public int portWatcher(String port) throws InterruptedException { final int[]count = {0}; ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); CountDownLatch latch = new CountDownLatch(1); Runnable checkPortTask = new Runnable() { @Override public void run(){ try { Sock.. [JAVA] JAR & WAR * JAR 파일 & WAR 파일 : Java 애플리케이션을 배포하기 위한 파일 형식. [ JAR _Java ARchive ]용도:주로 Java 애플리케이션, 라이브러리, 플러그인을 배포하는 데 사용.독립 실행형 Java 애플리케이션을 실행할 수 있도록 지원.내용물:Java 클래스 파일, 메타데이터, 리소스 파일(이미지, 텍스트 파일 등)을 포함.META-INF/MANIFEST.MF 파일을 통해 메타데이터와 메인 클래스를 지정.실행 방식:독립 실행형 애플리케이션의 경우, java -jar yourapp.jar 명령어로 실행.라이브러리로 사용될 경우, 다른 Java 애플리케이션에서 이 JAR 파일을 참조.구조:간단하고 특정 구조를 따르지 않음.모든 파일이 루트 디렉토리에 배치될 수 있음. [ WAR _W.. [기타] System.out.println 실무에서 사용하면 안되는 이유 https://systemdata.tistory.com/21 System.out.println 메소드는 실무에서 `절대 사용하지마라.`목차개요System.out.println 무엇인가?왜 사용해서는 안되는가?로그를 남기면 안되는 것인가?결론1. 개요프로그래밍을 처음 접하면 System.out.println(”Hello World”);같이 콘솔에 출력하는 것을 배우게systemdata.tistory.com 실무에서 사용하면 안되는 이유. - 동기화된 블로킹 I/O 방식이기 때문에 성능 저하 문제 발생. (오버헤드 발생) => Log4j, SLF4J 같은 비동기 로깅 프레임워크 사용! I/O를 비동기적으로 처리하고, 멀티스레드 환경에서 성능을 더 효과적으로 관리한다. - 로그 레벨을 지정할 수 .. [Java] 자바에서 리눅스 명령어 실행 (JSch , Session , ChannelExec ) [ JSch ]SSH 연결을 위한 세션을 생성하고 관리하는 기본 클래스. (팩토리 역할)import com.jcraft.jsch.JSch;JSch jsch = new JSch(); // JSch 객체 생성 [ Session ]실제로 SSH 서버와 연결을 수립하고 통신을 담당하는 객체.Session session = jsch.getSession("username", "hostname", 22); // JSch 객체를 통해 Session 생성session.setPassword("password"); // 비밀번호 설정session.setConfig("StrictHostKeyChecking", "no"); // 추가 설정session.connect(); // SSH 연결 수립=> JSch 객체의 .g.. [Java] Stream API (Collectors 클래스) [ Stream API ]java.util.stream 패키지에 포함. java 8 부터 추가.데이터의 흐름을 다루기 위한 추상화 계층을 제공하며, 이를 통해 데이터의 필터링, 매핑, 정렬, 집계와 같은 작업을 함수형 프로그래밍 방식으로 수행할 수 있다. [ 종류 ] - Stream : 일반적인 객체 스트림 - IntStream, LongStream, DoubleStream : 기본형(int, long, double)에 특화된 스트림. [ 주요 메소드 ]* 중간 작업 (Intermediate Operations) - filter() : 조건에 맞는 요소를 필터링. - map() : 각 요소를 변환하여 새로운 스트림 생성. - sorted() : 요소 정렬. - distinct() : 중복 요소 .. [JAVA] objectMapper, modelMapper [ ObjectMapper ] - Jackson 라이브러리의 일부 - JSON 데이터와 자바 객체 간의 직렬화 및 역직렬화에 사용. - 기본 생성자, getter/setter 가 필요하지만, 필드에 직접 접근하도록 설정 가능. - @JsonProperty 을 사용하면 필드 이름이 달라도 매핑 가능. (getter만 있어도 매핑이 가능하다는데 이건 더 찾아보기) convertValue() 메소드ObjectMapper objectMapper = new ObjectMapper();Map param = new HashMap();param.put("name", "John");param.put("age", 30);MyEntity entity = objectMapper.convertValue(param, MyEnt.. [JAVA] 리플렉션 (Relection) 자바 프로그램이 실행 중에 클래스, 인터페이스, 메소드, 필드 등의 정보를 동적으로 탐색하고 조작할 수 있는 기능.주로 프레임워크나 라이브러리에서 사용. [ Class 클래스 ]자바에서 모든 클래스와 인터페이스의 메타데이터를 표현하는 클래스.클래스 이름, 상속 관계, 인터페이스 구현 여부 등 (메소드) - getName() : 클래스의 전체 이름(패키지 포함)을 반환. - getSimpleName() : 클래스의 이름(패키지 제외)을 반환. - getSuperclass() : 부모 클래스의 class 객체를 반환. - getInterfaces() : 클래스가 구현하는 인터페이스의 배열을 반환. - getSDeclaredFields(), getDeclaredMethods(), getDeclaredCon.. 이전 1 2 3 다음