[JSP] 시작
📌 들어가며 이제 JSP를 시작한다. 이번 글에서는 환경 설정(Eclipse + Tomcat)과 JSP 웹페이지의 구성요소를 정리한다. 1. 환경 설정 — Eclipse + Tomcat 무설치 Eclipse와 Apache Tomcat 9을 받아 자바 서버를 만든다. Eclipse → New → Other → Server → Tomcat 연결...
📌 들어가며 이제 JSP를 시작한다. 이번 글에서는 환경 설정(Eclipse + Tomcat)과 JSP 웹페이지의 구성요소를 정리한다. 1. 환경 설정 — Eclipse + Tomcat 무설치 Eclipse와 Apache Tomcat 9을 받아 자바 서버를 만든다. Eclipse → New → Other → Server → Tomcat 연결...
📌 들어가며 부모와의 관계가 끊어진 자식 엔티티를 고아 객체(orphan)라 한다. JPA는 이 고아 객체를 자동으로 DB에서 삭제하는 기능을 제공한다. 고아 객체: 부모 엔티티와 관계가 끊어진 자식 엔티티. 1. orphanRemoval @OneToMany(mappedBy = "parent", cascade = CascadeType...
📌 들어가며 부모 엔티티를 저장할 때 연관된 자식도 함께 저장하고 싶을 때가 있다. 이걸 자동으로 처리해주는 것이 영속성 전이(Cascade)다. 영속성 전이란? 특정 엔티티를 영속 상태로 만들 때, 연관된 엔티티도 함께 영속화하는 기능. (예: 부모 저장 시 자식도 함께 저장) 1. Cascade 설정 // Parent @OneTo...
📌 들어가며 이번 글에서는 자동 증가를 담당하는 시퀀스(Sequence), 두 테이블을 잇는 조인(Join), 그 축이 되는 외래키(Foreign Key)를 정리한다. 1. 시퀀스 (Sequence) MySQL에는 auto_increment가 있지만 오라클에는 없다. 그래서 자동 증가를 위해 시퀀스를 따로 만들어야 한다. 먼저 권한이...
📌 들어가며 저번엔 emp, dept 테이블을 그냥 조건문(where)으로 연결했다. 이번엔 테이블을 만들 때부터 외래키(Foreign Key)로 시스템적으로 연결해본다. 목표: category(부모)와 subject(자식) 테이블을 외래키로 연결. 각 테이블은 primary key를 가진다. category (부모) ...
📌 들어가며 저번엔 MySQL을 배웠고, 이번엔 Oracle을 사용해본다. 오라클의 사용자·권한 체계를 이해하고, 서브쿼리를 활용한 조회 연습문제를 풀어본다. 윈도우에서 sql을 검색하면 SQL*Plus가 나온다. 1. 오라클 사용자·권한 체계 오라클은 계층적인 사용자 구조를 가진다. sys (SYSDBA) ← 최상위 ...
📌 들어가며 이번 글에서는 아우터 조인(Outer Join)과 트랜잭션(Transaction)을 정리한다. 문제 상황: dept에는 40번(운영, 보스턴) 부서가 있지만, emp에는 40번 부서 직원이 없다. 일반 조인(inner join)은 양쪽에 매칭되는 것만 짝지어, 40번 부서는 아예 나오지 않는다. 하지만 “40번 부서도 (0명이라도...
📌 들어가며 오랜만의 SQL 시간! 이번 글에서는 숫자·날짜·변환·조건 함수를 다룬다. (작업은 SQL Developer에서 진행) 1. 숫자 함수 — ROUND SELECT SALARY 월급, ROUND(SALARY/30, 0) 일급 FROM employees; 💡 ROUND(값, 자리)는 지정한 자리에서 반올림한다. 0이면 소...
📌 들어가며 이번 글에서는 DDL(Data Definition Language, 데이터 정의어)을 정리한다. CREATE, ALTER, TRUNCATE, DROP 등 테이블 구조를 다루는 명령어들이다. ⚠️ DDL은 따로 커밋하지 않아도 즉시 반영되고 롤백이 불가능하다. 그래서 사용할 때 매우 조심해야 한다. 1. CREATE — 테이...
📌 들어가며 이번 글에서는 SQL의 세 가지 언어 분류 DML·DDL·DCL과 집계함수를 정리한다. 이 명령어들은 ANSI 표준 쿼리라 대부분의 DBMS에서 공통으로 쓸 수 있다. SQL은 목적에 따라 세 부류로 나뉜다. 분류 이름 명령어 DML ...