본문 바로가기

programming_kr/java11

JAVA EE란? 자바를 이용한 서버 개발 플랫폼으로 한 때 엔터프라이즈 자바 기술을 선도하며 막강한 영향력을 발휘했지만 기술 변화와 시장 요구에 제때 대응하지 못하면서 현재는 명맥만 유지하는 암울한 상황에 처해 있습니다. 그럼에도 불구하고 자바EE는 가장 성공적인 상업용 표준 플랫폼의 하나이며 대부분의 웹 애플리케이션 서비스를 위한 미들웨어 기술로 꾸준히 사용되고 있습니다. 2018년 자바EE는 자카르타(Jakarta)EE로 명칭을 바꾸고 새로운 변화에 나섰습니다. Java EE(Java Platform, Enterprise Edition) 자바EE는 1999년 썬 마이크로시스템즈가 J2EE(Java 2 Enterprise Edition) 명으로 발표한 분산 애플리케이션 개발 목적의 산업 표준 플랫폼입니다. 기업용 애플.. 2023. 1. 28.
JDBC, DBCP 그리고 JNDI Connection과 Connection pool DriverManager.getConnection()은 실제 자바프로그램과 데이터베이스를 네트워크상에서 연결해주는 메소드입니다. - Connection은 네트워크상의 연결 자체를 의미하며 Connection Pool의 Connection 객체 각각을 직접 웹 애플리케이션에서 이용하면 체계적인 관리가 힘듭니다. - Connection 과정은 부담되는 작업이며, 불필요한 연결에 의한 서버 자원의 낭비가 발생하게 됩니다. - Connection 객체를 프로그램이 실행될 때마다 생성하는 것이 아니라 웹 애플리케이션이 서비스되기 전에 웹서버에 미리 생성하여 준비한 다음 필요할 때 준비된 Connection을 가져다 사용함으로써 JDBC 프로그래밍 문제점들을 개선할.. 2022. 12. 9.
JAVA 8 함수형 인터페이스 함수형 인터페이스(Functional interface)는 1개의 추상 메서드를 갖고 있는 인터페이스입니다. public interface FunctionalInterface { public abstract void printText(String text); } 자바의 람다식은 함수형 인터페이스로 접근이 되기 때문에 함수형 인터페이스를 사용합니다. 람다함수 : 람다 함수는 프로그래밍 언어에서 사용되는 개념으로 익명 함수(Anonymous functions)를 지칭하는 용어입니다. 현재 사용되고 있는 람다의 근간은 수학과 기초 컴퓨터과학 분야에서의 람다 대수이다. 람다 대수는 간단히 말하자면 수학에서 사용하는 함수를 보다 단순하게 표현하는 방법입니다. 아래 코드에서 변수 func는 람다식으로 생성한 객체를.. 2022. 11. 12.
열거형(enum) class Direction { static final Direction EAST = new Direction("EAST"); static final Direction SOUTH = new Direction("SOUTH"); static final Direction WEST = new Direction("WEST"); static final Direction NORTH = new Direction("NORTH"); private String name; private Direction(String name){ this.name = name; } } 열거형은 JDK1.5부터 새로 추가되었습니다. JAVA의 열거형은 C언어의 열거형보다 향상되었고 타입까지 관리하기 때문에 논리적인 오류를 줄일 수 있습니다. c.. 2022. 10. 29.
JAVA8 STREAM(1) 자바 8 에서 추가한 Stream은 람다를 활용할 수 있는 기술입니다. 자바 8 이전에는 배열 또는 컬렉션을 다루는 방법은 for, foreach를 사용했습니다. 로직이 복잡해질수록 코드의 양이 많아져 여러 로직이 섞이게 되고, 메서드를 나눌경우 루프를 여러번 도는 현상도 발생합니다. stream은 데이터의 흐름입니다. 배열 또는 컬렉션 인스턴스에 함수를 조합해서 원하는 결과를 필터링하고 가공된 결과를얻을 수 있습니다. 또한 람다를 활용해서 코드의 양을 줄이고 간결하게 표현할 수 있습니다. 배열과 컬렉션을 함수형으로 처리할 수 있습니다. Stream은 생성하기 (인스턴스 생성) 가공하기 (필터링, 맵핑) 결과 로 나눌 수 있습니다. 보통 배열과 컬렉션을 이용해서 Stream을 생성하지만 다양한 방법으로 .. 2022. 10. 15.
제네릭(generic) 제네릭이란 무엇일까? 제네릭(Generic)은 클래스 내부에서 지정하는 것이 아닌 외부에서 사용자에 의해 지정되는 것을 의미합니다. 특정(Specific) 타입을 미리 지정해주는 것이 아닌 필요에 의해 지정할 수 있도록 하는 일반(Generic) 타입입니다. Generic(제네릭)의 장점 제네릭을 사용하면 잘못된 타입이 들어올 수 있는 것을 컴파일 단계에서 방지할 수 있습니다. 클래스 외부에서 타입을 지정해주기 때문에 따로 타입을 체크하고 변환해줄 필요가 없습니다. 비슷한 기능을 지원하는 경우 코드의 재사용성이 높아집니다. Generic(제네릭) 사용방법 보통은 아래 표의 타입들이 많이 사용됩니다. 타입 설명 Type Element Key Value Number Generic(제네릭)의 사용 1. 클래스.. 2022. 9. 24.