목록Oracle (14)
ki-sd 님의 블로그
자바 UI 컴포넌트와 오라클 데이터베이스를 유기적으로 연결하여, 사용자의 입력(Event)에 따라 화면이 실시간으로 갱신되는 실무적인 동적 검색 로직을 완성했다. 1. JTable을 이용한 데이터 그리드 렌더링 기초오라클의 대표적인 샘플 테이블인 사원(EMP) 테이블을 활용해 데이터 목록을 화면에 출력했다.DAO에서 SELECT * FROM emp를 통해 가져온 List 데이터를 자바 Swing의 DefaultTableModel에 2차원 배열 형태로 행(addRow) 단위로 밀어 넣어 깔끔한 그리드(표) 형태의 UI를 렌더링하는 과정을 마스터했다.2. 콤보박스(ComboBox)를 활용한 부서 검색 UI 연동사용자가 직접 검색어를 타이핑하는 텍스트 필드 방식은 오타가 발생할 수 있다. 이를 방지하기 위해 ..
일반 사용자를 위한 프론트 서비스 구현을 넘어, 서비스 운영의 핵심인 관리자 전용 시스템(Back-office)의 기반을 다지는 뜻깊은 시간이었다. 권한에 따라 접근할 수 있는 영역을 통제하고, 데이터베이스의 핵심 데이터를 직접 제어하는 관리자 기능을 구현했다. 1. 관리자 전용 백오피스(Back-office)의 역할과 RBAC 적용쇼핑몰이나 웹 서비스가 정상적으로 운영되려면 상품을 등록하고 회원을 관리하는 이면의 시스템이 필수적이다.RBAC(Role-Based Access Control)의 도입: 시스템에 접속한 사용자의 역할(Role)을 식별하여 접근 권한을 제어하는 기법을 UI에 적용했다. 어제 로그인 로직에서 세션처럼 저장해 둔 isAdmin 변수값이 'y'인 경우에만 [관리자 페이지] 버튼과 관..
쇼핑몰이나 게시판 등 거의 모든 애플리케이션의 시작점인 회원 관리 로직을 구현했다. 백엔드(DAO)에서 데이터를 검증하고 가공하여 프론트엔드(UI)의 상태를 동적으로 변화시키는, 실제 웹 서비스의 핵심 워크플로우를 데스크톱 환경(Swing)으로 고스란히 옮겨 구현해 보는 유의미한 시간이었다. 1. 아이디 중복 체크와 우편번호 검색 (데이터 무결성 및 검색 최적화)아이디 중복 검증 (memberIdCheck): 사용자가 입력한 ID가 DB에 존재하는지 확인하기 위해 SELECT COUNT(*) FROM member WHERE id=? 쿼리를 날렸다. 결과값이 0이면 사용 가능, 1 이상이면 중복으로 판별하는 직관적이고 확실한 검증 로직을 구현했다.우편번호 동적 검색 (postFind): 사용자가 '동' 이..
그동안 학습한 자바(Java)와 오라클(Oracle)의 핵심 개념을 총정리하고, 두 기술이 브라우저와 어떻게 연결되는지 웹 아키텍처의 큰 그림을 그렸다. 더불어 프로젝트의 뼈대가 되는 요구사항 분석과 데이터베이스 모델링(ER-Model) 기법을 학습하며, 실제 서비스의 테이블을 설계하는 훈련을 진행했다. 1. 백엔드 기술 스택 총정리와 웹 아키텍처의 이해자바(Java) 코어: 객체 지향의 캡슐화(VO/DTO), 데이터 접근 객체(DAO), 싱글톤과 MVC 디자인 패턴, 그리고 컬렉션 프레임워크(List, Map)의 활용 등 백엔드 비즈니스 로직의 근간을 복습했다.오라클(Oracle) 코어: 데이터를 조작하는 DML(SELECT, INSERT, UPDATE, DELETE), 구조를 정의하는 DDL(CREA..
오늘은 자바(Java) 애플리케이션과 DB를 연결하는 JDBC(Java Database Connectivity) 기술을 실전 데이터에 적용했다. 앞서 레퍼런스로 분석한 '영화 검색 시스템'의 구조를 바탕으로, 지니뮤직(genie_music) 데이터를 활용한 '음악 목록 및 검색 시스템'을 직접 구현하며 백엔드와 프론트엔드(Swing)의 연동 흐름을 익혔다. 1. 데이터 전송 객체(VO)와 데이터 접근 객체(DAO) 패턴의 확립VO (Value Object) 매핑: 오라클 테이블의 구조를 자바 객체로 1:1 매핑하는 작업부터 시작했다. genie_music 테이블의 NUMBER 타입은 자바의 int로, VARCHAR2나 CHAR 타입은 String으로 매핑하여 MusicVO 클래스를 캡슐화(은닉)했다.DA..
어제 학습한 PL/SQL 기본 제어문을 바탕으로, 데이터베이스 내부에 재사용 가능한 모듈을 구축하는 함수(FUNCTION), 프로시저(PROCEDURE), 그리고 트리거(TRIGGER)의 메커니즘을 완벽히 해부했다. 또한 수십 개의 실전 질의문을 풀며 SQL 역량을 최종 점검했다. 1. 사용자 정의 함수(FUNCTION): 데이터 가공과 쿼리 단순화오라클이 제공하는 내장 함수 외에 개발자가 직접 필요한 로직을 구현하는 기능이다.반드시 처리 결과값(RETURN)을 가져야 하며, 주로 SELECT 절 내부에서 호출된다.데이터의 상태를 변경하는 INSERT, UPDATE, DELETE (DML) 작업에는 사용하지 않는 것이 원칙이다.여러 테이블을 조인(JOIN)하거나 스칼라 서브쿼리를 반복적으로 작성해야 하는..
