목록java (153)
병호의 IT새싹키우기
💡학습 목표💡서블릿에 대한 개념을 알아보자. 서블릿이 하는 역할에 대해 살펴 봅시다. 주요 코드와 MIME TYPE 에 대한 개념을 알아 보자. 서블릿(Servlet)은 자바 언어로 작성된 서버 측 컴포넌트로, 웹 애플리케이션에서 클라이언트의 HTTP 요청을 처리하고 동적인 웹 페이지를 생성하여 응답하는 역할을 합니다. 서블릿은 Java EE (Enterprise Edition) 사양의 일부로, 주로 HTML 페이지를 생성하고 데이터베이스와 연동하여 데이터를 처리하는 데 사용됩니다. ❗컴포넌트란?여기서 "컴포넌트"라는 개념은 독립적으로 작동할 수 있는 소프트웨어의 작은 단위입니다. 서블릿은 웹 서버에서 독립적으로 실행되며, 클라이언트의 요청을 처리하고 응답을 생성하는 역할을 합니다.예를 들어, 데스..
💡학습 목표💡WAS와 웹 컨테이너에 대한 개념을 알아 보자. 웹 컨테이너가 하는 일을 살펴 보자. WAS 서버에 주요 역할(복습)동적 콘텐츠 생성: 서블릿, JSP, EJB 등을 통해 동적인 웹 페이지와 서비스를 생성합니다.비즈니스 로직 처리: 애플리케이션의 핵심 로직을 실행하고 처리합니다.데이터베이스 연동: 데이터베이스와의 연동을 통해 데이터를 조회하고 업데이트합니다.트랜잭션 관리: 데이터베이스와의 복잡한 트랜잭션을 관리합니다.보안 관리: 사용자 인증, 권한 부여, 데이터 암호화 등 보안을 관리합니다.세션 관리: 사용자 세션을 유지하고 관리합니다.웹 컨테이너란?웹 컨테이너는 WAS의 일부로, 서블릿과 JSP를 실행하고 관리하는 역할을 합니다. 웹 컨테이너는 웹 애플리케이션의 요청과 응답을 처리하..
💡학습 목표💡웹 서버에 대한 개념을 이해하자.웹 애플리케이션 서버(WAS) 대한 개념을 알자. 웹 서버란? - 정적 콘텐츠 제공자 웹 서버는 클라이언트(주로 웹 브라우저)로부터 HTTP 요청을 받아 정적인 HTML 파일, 이미지, CSS 파일 등을 제공하는 서버입니다. 웹 서버는 요청된 리소스를 클라이언트에게 그대로 반환합니다. 웹 서버는 일반적으로 특정 폴더(웹 루트 디렉토리)에 정적 콘텐츠를 저장합니다. 클라이언트의 요청이 들어오면, 웹 서버는(컴퓨터) 이 폴더에서 요청된 파일을 찾아서 클라이언트에게 전달합니다. 가장 유명한 웹 서버로는 아파치 HTTP 서버(Apache HTTP Server)와 Nginx가 있습니다. 도서관에서 사서에게 특정 책을 요청하면, 사서는 책장에 있는 책을 찾아서 여러분..
💡학습 목표💡 JDBC에서 발생할 수 있는 예외를 이해하고 효과적으로 처리하는 방법을 배웁니다.예외 발생 시 로그를 기록하고, 사용자에게 유용한 피드백을 제공하는 방법을 알아 보자. SQLException 다루기SQLException은 JDBC에서 발생할 수 있는 일반적인 예외입니다. 이 예외는 데이터베이스와의 통신 중에 발생하는 오류를 나타냅니다. SQLException은 다양한 속성과 메서드를 제공하여 예외에 대한 상세한 정보를 제공합니다. 주요 속성 및 메서드:getErrorCode(): 데이터베이스 벤더가 제공하는 특정 오류 코드를 반환합니다.getSQLState(): SQLState 코드를 반환합니다. 이 코드는 표준 SQL 상태 코드를 나타냅니다.getMessage(): 예외 메시지를 반환..
💡성능 향상 기법PreparedStatement 사용의 장점연결 풀 (Connection Pool) 사용데이터 소스 (Data Source)의 개념연결 풀의 장점(Connection Pool)캐싱 전략 1. PreparedStatement 사용의 장점PreparedStatement는 SQL 쿼리를 미리 컴파일하고, 동일한 쿼리를 반복해서 실행할 때 효율적으로 사용할 수 있는 인터페이스입니다. 이는 성능과 보안 측면에서 많은 장점을 제공합니다.성능 향상:쿼리 컴파일: SQL 쿼리를 미리 컴파일하여, 쿼리를 여러 번 실행할 때 컴파일 시간을 절약할 수 있습니다.쿼리 계획 재사용: 동일한 쿼리를 반복적으로 실행할 때, 쿼리 계획을 재사용하여 실행 시간을 단축할 수 있습니다.보안 향상:SQL 인젝션 방지: 쿼..
콘솔을 활용한 간단한 퀴즈 게임 만들어 보기DB , 테이블 설계기본 데이터 입력(정규화)자바측 라이브러리 설정자바측 기능 구현 및 테스트 5. 리팩토링 데이터 베스 생성 프로젝트 구축 및 라이브러리 설정 자바측 기본 코드 입력QuizGame을 SOLID 원칙에 따라 리팩토링해보기단일 책임 원칙 (Single Responsibility Principle, SRP): 클래스는 하나의 책임만 가져야 합니다.개방-폐쇄 원칙 (Open/Closed Principle, OCP): 소프트웨어 개체는 확장에는 열려 있어야 하지만, 수정에는 닫혀 있어야 합니다.리스코프 치환 원칙 (Liskov Substitution Principle, LSP): 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인..