본문 바로가기
반응형

IT/java36

모듈화 이용하기 ( JDK21 ) JDK9 부터 도입된 모듈화 이지만,잘 사용하지 않기도 해서 익숙하지가 않습니다. 그래도 이젠 익숙해져야 하기에!! 나름 정리를 해봅니다. * 단순 모듈화 프로젝트 구조 소스(src) 폴더 하위에 모듈단위로 폴더를 만들고, 모듈의 최상휘에 module-info.java 를 만든다.module-info.java 의 사용법module 모듈 이름 { requires 필요한 모듈 exports 공개할 패키지} 프로젝트 소스 구조your_project_root/├── src/│ ├── mod_main/│ │ ├── module-info.java│ │ └── kr/soen/main/│ │ └── Main.java│ └── mod_util/│ ├── mo.. 2025. 6. 19.
kafka 이용을 위한 client 의 프로젝트 셋팅 ( feat.gradle ) Mendix 10.21.1 기준 JDK21, Gradle 8.5 가 설치 되므로 이 환경에 맞추어서 구성하였다. 1. gradle 확인Mendix 10.21.1 을 설치하면 C:\Users\{사용자}\AppData\Local\Programs\Mendix\gradle-8.5에 기본으로 설치된다. PATH 를 연결하고 gradle -v 로 정상 확인한다. 2. 프로젝트 생성mkdir kafka-gradle-examplecd kafka-gradle-examplegradle init --type java-application 기본값으로 대부분 진행 한다. 3. 프로젝트 Import ( eclipse )Gradle > Existing Gradle Project 로 생성한 프로젝트를 불러온다. 4. build... 2025. 4. 23.
JDK 컴파일하기 ( OpenJDK17 ) 궁극의 자바 이해를 위해 JDK 를 컴파일 해보자.  깃헙 리포지터리 jdk 에 친절하게 컴파일 방법이 나와 있다.jdk/doc/building.md at master · openjdk/jdk (github.com) jdk/doc/building.md at master · openjdk/jdkJDK main-line development https://openjdk.org/projects/jdk - openjdk/jdkgithub.com 소스는 아래 리포지터리의 브런치를 보면, tag 로 찾아볼 수 있다.21버전이 최신이지만 웬지 최신의 길은 너무도 험난하니 17로 간다! 근데 설명서를 읽어보니 친절하게 17 같은 경우 openjdk/jdk17u 라는 이름으로 별도 리포가 있는거 같다.openjdk/jd.. 2024. 7. 7.
함수형 프로그래밍 with 자바 - 랜덤 생성수 통계(feat.ThreadLocalRandom) 랜덤 생성수를 이용한 통계시, 함수형 자바 이용하기 예제 입니다. package kr.samdogs.study.func.pojo;import java.util.IntSummaryStatistics;import java.util.Random;import java.util.SplittableRandom;import java.util.concurrent.ThreadLocalRandom;import java.util.function.IntUnaryOperator;public class RandomNumber { public static void main(String[] args) { //랜덤하게 발생하는 숫자 * 2 통계 //공통 int elementsCount = 100_000_000; IntU.. 2024. 6. 19.
함수형 프로그래밍 with 자바 - 단어 카운트 package kr.samdogs.study.func.pojo;import java.io.IOException;import java.nio.file.Files;import java.nio.file.Path;import java.nio.file.Paths;import java.util.Arrays;import java.util.Map;import java.util.function.Function;import java.util.regex.Pattern;import java.util.stream.Collectors;import java.util.stream.Stream;public class LineCount { public static void main(String[] args) { /* 단어카운트 함수형.. 2024. 6. 18.
함수형 프로그래밍 with 자바 - for loop 예시를 통한 스트림 비교 함수형 처리라는 것이 어떤것이다 라는 컨셉을 익힐때 좋을꺼 같다!package kr.samdogs.study.func.pojo;import java.util.stream.IntStream;public class ForLoop { public static void main(String[] args) { /* 1부터 5 미만 까지 루핑 출력 * :: 참조연산자로 함수 주입 * JDK9+ 에서는 제한 조건을 추가로 넣을수 있다!! */ //일반 for(int idx=1;idx idx + 1) .limit(4) .forEachOrdered(System.out::println); }} 이런 함수형 클래스와 map, reduce, filter 이 활용을 잘익히면 된다. ( jav.. 2024. 6. 17.
함수형 프로그래밍 with 자바 - POJO 와 불변POJO 그리고 record 함수형 프로그램을 위해SAM (Single Abstract Method ) 필요불변성 유지 필요 ( record 로 구현함 jdk 14 미리보기 에 나옴 ) POJO 를 이용한 불변성 구현 1. 일반package kr.samdogs.study.func.pojo;import java.time.LocalDateTime;import java.util.Objects;//변경불가능 유지를 위해 final classpublic final class User { private String username; private boolean active; private LocalDateTime lastLogin; public User(String username, boolean active, LocalDateTim.. 2024. 6. 16.
카프카 producer 샘플 ( feat.maven ) 단독 java 프로그램 - maven 카프카 서버 다운로드 및 실행 코드로 브로커를 테스트 하기위한 샘플 프로그램 -- 응용해서 단독 java 프로그램 만들때 쓰면 된다. pom.xml 4.0.0 com.kjb.rnd simple-kafka-producer 0.0.1-SNAPSHOT UTF-8 org.apache.kafka kafka-clients 3.7.0 org.slf4j slf4j-simple 2.0.13 test org.slf4j slf4j-api 2.0.13 org.apache.maven.plugins maven-compiler-plugin 3.12.1 11 11 org.apache.maven.plugins maven-jar-plugin 3.3.0 com.kjb.rnd.SimpleProducer com.kjb.rnd.SimplePr.. 2024. 4. 19.
실전! 웹개발 환경 구축 (jdk1.8, weblogic12.2.1, OracleDB 21 express, eclipse (with oepe ) ) 대부분 책을 통해서 웹 개발을 접하기 때문에 톰캣 + mysql 조합으로 많이 시작합니다. 하지만, 실제 취업후 개발을 하게 되면, 상용솔루션을 쓰게 되는데요~! 저또한 그래서 적응이 살짝 힘들었었습니다. 그래서 준비한 실전! 웹개발 환경 구축 입니다. 1. JDK1.8 설치 오라클 홈에서 JDK1.8 을 다운로드 설치 해 줍니다. Java Archive Downloads - Java SE 8 (oracle.com) Java Archive Downloads - Java SE 8 We’re sorry. We could not find a match for your search. We suggest you try the following to help find what you’re looking for: C.. 2023. 11. 2.
반응형