일정 관리 시스템 flowchart
·
Spring/미니 프로젝트(뉴스피드)
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ..
일정 관리 시스템
·
Spring/미니 프로젝트(뉴스피드)
해당 시스템은 CRUD구현을 연습을 위해 시행되었다.  지금까지 구현된기능은일정 등록(createSchedule)일정 조회(getSchedule)일정 수정(updateSchedule)일정 삭제(deleteSchedule)담당자 등록(createTeacher)담당자 삭제(deleteTeacher)이렇게 6가지가 있다. 이렇게 구현이 가능하게 하기 위하 짜여진 코드에 대해 설명해보도록 하겠다.다만 아직 3Layer Architecture가 안되어 있기 때문에 코드가 난잡해 있다. 빠른 시일내에 적용해서 다시 올릴 예정이다. controller 패키지 안에 있는 클래스들은 Spring Boot 애플리케이션에서 웹 요청을 처리하고 클라이언트와 상호작용을 관리하는 역할을 맡고 있다. 지금은 API요청은 Postm..
Spring Port 8080 is already in use
·
Spring/Spring 트러블 슈팅
이미 8080포트를 사용중이라면서 에러메세지를 받았다 이 경우는 8080이 이미 다른 프로세스에서 사용 중이라는 의미이다. 해당 해결방법은 이미 사용되고 있는 프로세스를 종료시키거나 포트번호를 바꾸는 방법이다. 첫번째로 PID를 찾아서 kill 명령어를 이용해 종료시키는 거다. mac 기준Terminal 들어가서 포트 사용중인 프로세스를 찾는다.lsof -i :8080 이 명령어는 포트 8080을 사용 중인 프로세스를 찾는다. Ex) 여기서 '1234'가 PID이다. PID 확인 후 다음 명령어로 프로세스를 종료한다.kill -9  예를 들어 PID가 1234인 경우kill -9 1234 Window 기준cmd에서 포트 사용 중인 프로세스를 찾는다.netstat -ano | findstr :8080이 명..
post, put, get, delete
·
Spring
@PostMapping용도: 클라이언트가 서버에 새로운 리소스를 생성하거나, 서버에 데이터를 제출할 때 사용합니다. 주로 폼 제출이나 데이터 생성 요청에 사용한다.HTTP 메서드: POST@PostMapping("/users")public ResponseEntity createUser(@RequestBody User user) { User createdUser = userService.createUser(user); return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);}위의 예제에서 @PostMapping은 /users 경로로 들어오는 POST 요청을 처리하고, 요청 본문에 있는 User 객체를 기반으로 새 사용자를 생성한다..
DispatcherServlet
·
Web지식/네트워크
DispatcherServlet란?Spring MVC의 핵심 컴포넌트로, 요청을 처리하고 적절한 컨트롤러에 전달하며, 최종적으로 뷰를 렌더링하는 역할을 맡고 있다. 이 서블렛은 Spring MVC의 중앙 요청 처리기로, 전체 웹 애플리케이션의 흐름을 관리한다. 참고로 Servlet은 자바를 사용하여 웹 서버에서 동작하는 프로그램이다. 웹 페이지를 생성하고 처리하는 데 필요한 코드를 담고 있고, 웹 페이지를 요청하면, Servlet이 서버에서 그 요청을 처리하여 웹 페이지를 동적으로 생성한 후 클라이언트(브라우저)에게 반환한다. (여기서 동적으로 생성한다는 뜻은 웹 페이지나 콘텐트가 고정된 것이 아니라, 요청 시점에 따라 변하거나 사용자에 맞게 조정되는 것을 의미한다.) Servlet작동 방식웹 페이지 ..
Spring MVC
·
Spring
Spring MVC란?Spring Web MVC는 Servlet API를 기반으로 구축된 원래 웹 프레임워크이며 처음부터 Spring Framework에 포함되었습니다. 정식 이름인 "Spring Web MVC"는 소스 모듈( spring-webmvc)의 이름에서 유래했지만, 일반적으로 "Spring MVC"로 알려져 있습니다.Spring Web MVC와 병행하여, Spring Framework 5.0은 "Spring WebFlux"라는 이름도 소스 모듈( spring-webflux)에 기반을 둔 반응형 스택 웹 프레임워크를 도입했습니다. 이 장에서는 Spring Web MVC를 다룹니다. 출처-Spring https://docs.spring.io/spring-framework/reference/web/..
Stack, Method, Heap 메모리
·
Computer Science
1. 스택(Stack) 메모리스택 메모리는 함수 호출과 관련된 데이터(로컬 변수, 함수 호출 스택 등)를 저장하는 데 사용된다. 스택은 LIFO(Last In, First Out) 구조를 따릅니다. 즉, 가장 나중에 저장된 데이터가 가장 먼저 꺼낸다.주요 특징로컬 변수: 함수나 메서드에서 선언된 변수는 스택 메모리에 저장된다. 이 변수들은 함수 호출이 끝나면 메모리에서 자동으로 제거된다.메서드 호출: 각 메서드 호출에 대해 스택 프레임이 생성된다. 스택 프레임은 메서드의 로컬 변수, 매개변수, 반환 주소 등을 저장한다.한정된 크기: 스택은 메모리의 크기가 제한되어 있으며, 너무 깊은 재귀 호출이나 지나치게 많은 메서드 호출로 인해 스택 오버플로우가 발생할 수 있다.public void exampleMet..
Overflow, underflow
·
Computer Science
Overflow (오버플로우)오버플로우는 변수나 메모리의 저장 용량을 초과하여 데이터가 잘못되거나 손실되는 상황을 의미한다.  정수 오버플로우: 정수형 변수에 저장할 수 있는 값의 범위를 초과할 때 발생한다. 예를 들어, 8비트 정수형 변수는 -128에서 127까지의 값을 저장할 수 있지만, 이 범위를 넘어서는 값이 할당되면 오버플로우가 발생한다.byte b = 127;b = (byte) (b + 1); // 오버플로우 발생System.out.println(b); // -128 출력 부동소수점 오버플로우: 부동소수점 숫자가 표현할 수 있는 최대값을 초과할 때 발생한다. 이 경우, 결과는 일반적으로 무한대(∞)로 처리된다.double d = Double.MAX_VALUE;d = d * 2; // 오버플로우..
동등성, 동일성
·
Java 문법정리 (Array부터)
자바에서 동등성과 동일성은 객체의 비교와 관련된 두 가지 중요한 개념이다.이 두 개념은 객체를 비교할 때 매우 중요한 역할을 한다.1. 동등성 (Equality)동등성은 두 객체가 논리적으로 같은지를 판단하는 개념. 자바에서 동등성을 비교할 때 주로 equals() 메서드를 사용한다. equals() 메서드는 객체의 논리적 동등성을 비교하는 데 사용되며, Object 클래스에서 기본적으로 정의되어 있다.기본 동작Object 클래스의 기본 equals() 메서드는 객체의 참조를 비교한다. 즉, 두 객체가 동일한 메모리 주소를 참조하는지를 비교한다. 이는 객체의 실제 내용을 비교하지 않는다.public class Person { private String name; private int age; ..
3개 이상 쿼리를 조회할때
·
SQL 정리
문제 설명다음은 어느 자동차 대여 회사에서 대여 중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블과 자동차 대여 기록 정보를 담은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블과 자동차 종류 별 대여 기간 종류 별 할인 정책 정보를 담은 CAR_RENTAL_COMPANY_DISCOUNT_PLAN 테이블 입니다.CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다.Column nameTypeNullableCAR_IDINTEGERFALSECAR_TYPEVARCHAR(255)F..