전체 글 108

(My SQL) GROUP BY/HAVING

❤ GROUP BY 데이터를 그룹화하고 그룹 단위로 집계 함수를 사용하여 데이터를 요약하는 데 사용된다. 데이터베이스에서 많은 레코드를 가진 테이블에서 유용하다. GROUP BY를 사용하면 특정 열의 값에 따라 데이터를 그룹화하고, 그룹 내에서 SUM, COUNT, AVG 등과 같은 집계함수를 사용하여 그룹 내 데이터를 분석할 수 있다. SELECT column1, aggregate_function(column2) FROM table_name GROUP_BY column1; • column1: 데이터를 그룹화하려는 열을 나타낸다. • aggregate_function(column2): 그룹 내에서 적용할 집계 함수를 나타낸다. 이것은 SUM, COUNT, AVG 등이 될 수 있다. • table_name..

DATABASE(MY SQL) 2023.09.26

컬렉션(물건 추가, 조회, 수정, 종료) 연습 문제 (Product, Main)

🧡 Product 객체 package lab1; public class Product { private String name; private int unitPrice; private int amount; public Product(String name, int unitPrice, int amount) { this.name = name; this.unitPrice = unitPrice; this.amount = amount; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getUnitPrice() { return unitPrice; } public void s..

학교/JAVA 2023.09.26

컬렉션(Collection, List/Set/Map)

❤ 배열의 문제점 1. 한 번 크기를 지정하면 변경할 수 없다. - 공간 크기가 부족하면 에러가 발생 -> 할당 시 넉넉한 크기로 할당하게 됨 (메모리 낭비) - 필요에 따라 공간을 늘리거나 줄일 수 없음 2. 배열에 기록된 데이터에 대한 중간 위치의 추가, 삭제가 불편하다. - 추가, 삭제할 데이터부터 마지막 기록된 데이터까지 하나씩 뒤로 밀어내고 추가해야 함 (복잡한 알고리즘) 3. 한 타입의 데이터만 저장 가능하다. ❤ 컬렉션의 장점 1. 저장하는 크기의 제약이 없다. 2. 추가, 삭제, 정렬 등의 기능 처리가 간단하게 해결된다. - 자료를 구조적으로 처리하는 자료구조가 내장되어 있어 알고리즘 구현이 필요 없음 3. 여러 타입의 데이터가 저장 가능하다. - 객체만 저장할 수 있기 때문에 필요에 따라..

JAVA 2023.09.26

Spring XML 방식 (bean 태그)

✔️ Spring XML 방식 Spring 프레임워크에서 XML 방식은 과거에 주로 사용되던 설정 방식으로, Spring 컨테이너와 애플리케이션의 다양한 구성 요소를 XML 파일을 통해 정의하는 방식을 의미한다. 이 방식을 최근에는 JavaConfig나 애노테이션 기반의 설정 방식으로 대체되고 있지만, 여전히 많은 레거시 프로젝트에서 사용되고 있다. Spring XML 방식의 주요 특징과 구성 요소는 다음과 같다. 1. Bean 정의 Spring 컨테이너에 의해 빈(Bean) 객체들을 XML 파일에서 정의한다. 각 빈은 이름, 클래스, 의존성 등의 정보를 가지며, 컨테이너는 이 정보를 바탕으로 빈 객체를 생성하고 관리한다. 2. 의존성 주입(Dependency Injection) XML 파일을 사용하여 ..

Spring 2023.08.18

프로젝트 기초 세팅 가이드

프로젝트 생성 [New] – [Spring Legacy Project] – 프로젝트 이름 입력 Templates : ‘Spring MVC Project’ 템플릿 선택 [Next] > 최상위 패키지 지정 : edu.kh.fin(최소 3개 이상의 레벨로 지정할 것) * 프로젝트 생성시 Maven이 필요한 라이브러리를 다운로드함. 인터넷 환경에 따라 오래 걸릴 수 있다. 🡪 progress 바를 통해 확인 후 끝날 때까지 대기 🡪 repository 경로에 필요한 라이브러리들이 다운로드 되는지 확인! 프로젝트 구조 변경 spring 폴더는 프로젝트 설정 파일이 모이는 폴더 이므로 src/main/resources 폴더로 옮겨서 관리하는 것이 적절함. ** 스프링 프로젝트 설정 파일의 경로가 변경되었기 때문에 ..

Spring 2023.08.18

Apache Maven 란? (POM)

✔️ Apache Maven 소프트웨어 프로젝트의 빌드, 배포, 의존성 관리를 자동화하기 위한 도구이다. 프로젝트의 라이프사이클을 관리하며, 프로젝트의 빌드 및 배포 과정을 단순화하고 효율적으로 수행할 수 있도록 지원한다. Maven은 XML 기반의 프로젝트 설정 파일과 커맨드 라인 도구를 제공하여 사용자가 프로젝트를 쉽게 관리할 수 있도록 한다. 자바요 프로젝트 관리 도구로, project object model(POM) XML 문서를 통해 해당 프로젝트의 버전 정보 및 라이브러리 정보들을 통합하여 관리하는 도구로 Apache License 2.0으로 배포되는 오픈 소스 소프트웨어다. Maven의 주요 특징과 기능은 다음과 같다. 1. 프로젝트 라이프사이클 관리 Maven은 미리 정의된 빌드 라이프사이..

Spring 2023.08.18

Spring MVC 란? (주요 컴포넌트, 요청 처리 과정, 프로젝트 폴더 구조)

✔️ Spring MVC 스프링 프레임워크의 웹 개발 모듈 중 하나로, Model-View-Controller 아키텍처를 기반으로 하는 웹 애플리케이션 개발을 위한 프레임워크이다. Spring MVC는 웹 애플리케이션의 각 구성 요소를 분리하여 개발하고 관리하는 데 도움을 주며, 강력한 기능과 유연성을 제공하여 웹 개발을 쉽게 할 수 있도록 지원한다. Spring MVC의 주요 컴포넌트와 개념은 다음과 같다. 구성요소 설명 DispatchrServlet 클라이언트의 모든 요청을 받아들이고, 요청을 적절한 핸들러(컨트롤러)에게 전달하여 처리한다. 요청 분배와 핸들러 매핑, 뷰 선택, 응답 전송 등을 관리한다. Handler Mapping 요청 URL과 컨트롤러(핸들러)를 매핑해주는 역할을 한다. 요청의 U..

Spring 2023.08.17

Spring Framework 란? (구성 요소, 모듈과 동작 구조)

✔️ Spring Framework 스프링 프레임워크는 자바 기반의 오픈 소스 프레임워크로, 엔터프라이즈급 애플리케이션을 개발하는 데 사용되는 모듈과 라이브러리의 집합이다. 스프링은 경량성, 확장성, 모듈성, 테스트 용이성 등을 강조하며, 다양한 애플리케이션 유형에 적용될 수 있도록 다양한 모듈과 기능을 제공한다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있으며 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준 프레임워크(Spring MVC Project 기반 프레임워크)의 기반 기술로서 쓰이고 있다. Spring 공식 사이트 https://spring.io/ Spring | Home Cloud Your code, any cloud—we’ve got you ..

Spring 2023.08.17

프레임워크(Framework)란? (라이브러리(Library)와 차이점)

✔️ 프레임워크(Framework) 프레임워크는 소프트웨어 개발을 위한 구조와 기본 틀을 제공하는 라이브러리와 도구의 집합이다. 특정 도메인이나 문제 해결을 위한 공통된 구조와 패턴을 제공하여 개발자가 보다 쉽고 효율적으로 애플리케이션을 개발하고 관리할 수 있도록 돕는다. • 구조와 템플릿 프레임워크는 애플리케이션의 기본 구조와 디자인 패턴을 정의하여 개발자가 애플리케이션을 구축할 때 일관성을 유지할 수 있도록 돕는다. • 재사용성 프레임워크는 공통된 작업을 처리하는 미리 구현된 기능들을 제공하므로, 개발자는 이를 활용하여 코드를 재사용하고 개발 시간을 단축할 수 있다. • 컴포넌트와 모듈화 프레임워크는 애플리케이션을 구성하는 여러 컴포넌트나 모듈을 분리하고 관리할 수 있는 기능을 제공한다. • 설계 지..

Spring 2023.08.17

클래스(Class)와 객체(Object)

✔️ 클래스(Class) 클래스는 객체지향프로그램밍에서 객체를 생성하기 위한 템플릿이며, 객체의 속성(데이터)과 행위(메서드)를 정의하는 데 사용된다. 클래스는 실제로 데이터를 저장하지 않으며, 객체의 설계도나 구조를 정의하는 역할을 한다. 클래스를 기반으로 여러 개의 객체를 생성할 수 있으며, 이러한 객체는 클래스의 인스턴스이다. 클래스의 구성요소는 다음과 같다. • 속성(fields 또는 멤버 변수) 클래스의 속성은 객체의 상태를 나타내는 데이터이다. 예를 들어, 사람 클래스에서 이름, 나이, 주소 등의 속성이 있을 수 있다. • 메서드(methods) 클래스의 메서드는 객체의 동작이나 기능을 정의하는 코드 블록이다. 메서드는 객체의 속성을 조작하거나 특정 작업을 수행한다. • 생성자(construc..

JAVA 2023.08.17