분류 전체보기 109

24년 10월 18일

오라클에서 디폴트 값을 넣을 때는 디폴트라는 것을 명시해야하고MYSQL 은 NULL 쓰면 디폴트값이 알아서 들어간다.CHECK : 제약조건 값 지정U = UNIQUE : 기본키는 아니지만 중복된 값을 넣을 수 없음SQL 에서의 인덱스 : 데이터의 검색을 효율적으로 하기 위해 인덱스를 지정해준다데이터가 많으면 많을 수록 유리한데 적을 때는 오히려 불리하다.오라클에서는 인덱스를 재구성할 수 있음COMMIT 을 하고 난 뒤에는 롤백이 안된다.오라클에서의 CONCAT 함수 : MOBILE1||'-'||MOBILE2파이프라인( || ) 을 사용해서 가운데 붙여줄 문자열을 삽입한다.PL/SQL 이란 ?SQL 을 확장한 절차적 언어이다.관계형데이터베이스에서 사용되는 ORACLE 의 표준데이터 엑세스 언어로 , 프로시..

24년 10월 17일

DB 로 넘어갔다.근데 mysql 아니고 오라클을 사용한다.외부평가에서는 오라클을 사용한다고 한다. 오라클 시퀀스란? 유일한 값을 생성해주는 오라클 객체기본키와 같이 순차적으로 증가하는 컬럼을 생성할 수 있다.주로 기본키(PRIMARY KEY)를 생성하기 위해 사용. constraint (제약조건)조건에 맞지않는 데이터를 입력시키지 않기 위한 제약조건외부평가에서 사용하는 dbms 오라클 SELECT * FROM USERTBL WHERE HEIGHT > ANY (SELECT HEIGHT FROM USERTBL WHERE ADDR='경남');SELECT * FROM USERTBL WHERE HEIGHT > ALL(SELECT HEIGHT FROM USERTBL WHERE ADDR='경남');SELECT * ..

24년 10월 15일

사서의 도서 대여 작업 mvc 패턴사서가 도서 대여를 해주기 위해서는 유저의 정보를 받아야함. 우선 사서계정이 권한이 있는지 확인 → 사서의 세션정보 요청(getSession) → 정보 반환→ 가입한 회원인지 확인 → 회원정보 요청(getUserInfo) → 정보 반환 책의 정보 확인(getBook) → 책 정보 반환 → 책이 대여된 상태인지 확인→ 책이 있다면 대여해줌 getBook에서 대여여부 확인하려면 정규화 과정에 약간 어긋난다고함. 결합도 낮추는 법 : 인터페이스를 따로 만들어서 구현한다. 클래스에 커서대고 오른쪽 클릭 → Refactor → extract interface → 인터페이스를 만든다. 자동으로 원래 파일의 메소드들이 오버라이딩으로 바뀌고 인터페이스에서 정의가 된다.

24년 10월 14일

세션이란 :• 클라이언트로부터 오는 일련의 요청을 하나의 상태로 보고 그 상태를 일정하게 유지하는 기술클라이언트가 웹 서버에 접속해있는 상태가 하나의 단위(지금 하는 수업을 예로 보자면 로그인이 되어있거나 이런 상태를 하나의 단위로 보는 그런 것)presentation layer : 사용자에게 보여주는 화면Control layer :business layer :persistance layerdomain model layer :트랜잭션이란?데이터베이스의 상태를 변화시키기 위해 수행하는 작업의 단위를 뜻함.※ 즉 쿼리문을 사용해서 데이터베이스에 영향을 주는 상태를 말하는 것이다.트랜잭션의 특징원자성 : 트랜잭션이 모두 DB에 반영되던가 , 아니면 아예 반영되지 않아야 한다는 것이다.일관성 : 작업처리 결과가..

24년 10월 11일

오늘은 User(사용자) 입장에서의 도서관리 프로그램 기능구현.사용자 입장에서의 CRUD 의 구성. Insert(1) : 회원가입Update(2) : 회원정보수정Delete(3) : 회원탈퇴Select(4) : 회원정보조회SelectAll(5) : 관리자가 회원전체정보조회LogIn(6) : 로그인LogOut(7) : 로그아웃 오늘은 사용자(User) 입장에서의 도서 관리 프로그램을 구현한다.사용자 입장에서의 CRUD 구성 ServiceNo.InsertUpdateDeleteSelectSelectAllLoginLogOut어제 한대로 기본적인 순서부터 적어보자면 뷰에서 사용자에게 입력을 받는다. 받아서 컨트롤러에서 요청을 처리하는데 , 어디로 처리하냐 ?private void init() { System.o..

24년 10월 10일

JUnit5 이란 ?자바 개발자가 가장 많이 사용하는 테스팅 기반 프레임워크도서관리 프로그램 만들기 과정 수업.CRUD 적용 MVC 패턴 JDBC사용MVC 패턴 구조 동작 순서※ MVC 패턴의 구성MODEL : 프로그램 데이터와,비즈니스 로직을 담당domain.dto : 데이터 전송객체 ex)bookDto는 도서 정보를 담는 클래스domain.dao : db와의 상호작용을 담당하는 클래스. CRUD 작업을 수행한다.domain.service : 비즈니스 로직을 처리하는 계층. dao를 호출하여 데이터를 처리하고, 필요한 비즈니스 규칙을 적용한다.VIEW : user에게 정보를 표시, 입력을 받는 ui 계층view : UI를 구성하는 패키지CONTROLLER : user 입력을 처리하고 모델과 뷰를 연결하..

24년 10월 7일

UML : 통합 모델링 언어.모델을 만들고 설명하는 표준언어다른 사람들과의 협업에 필요하다.UML 형식으로 의사소통을 하면 의미가 명확하고 설계에 대한 논의가 순조롭게 이루어진다.전체 시스템 구조와 클래스의 의존성을 파악하기 쉽다.클래스간의 의존성을 나타내주기 때문에 설계를 세분화할 수 있다.클래스 다이어그램클래스들간의 관계를 나타내는 관계도구조 다이어그램 과 행위 다이어그램으로 나눌수 있다.구조 다이어그램 : 각 요소들의 정적인 면을 보기위한 다이어그램.행위 다이어그램 : 요소들의 동적인 면을 보기 위한 다이어그램.그리는법class: 클래스는 보통 3개의 구역으로 나눈 사각형으로 그린다.이름 , 속성 , 기능을 표기할 수 있으며 이름만 필수로 명시한다.클래스의 세부사항은 필드와 메서드의 [접근 제한자 ..

24년 10월 4일

오전자바의 디자인 패턴디자인 패턴이란 ?특정 문맥에서 공통적으로 발생하는 문제에 대해 재사용 가능한 해결책이다.특정한 소스나 기계코드는 아니고 , 여러 상황에 맞게 사용될 수 있는 문제들을 해결할 때 쓰이는 템플릿 같은 형식.디자인 패턴은 개발자가 시스템을 디자인할 때 공통된 문제들을 해결하는데 쓰이는 형식화 된 가장 좋은 관행이다.(간단하게 보고 넘어가자)디자인 패턴의 종류생성 패턴싱글톤(중요) : 클래스의 인스턴스가 1개여야만 하는 패턴인스턴스 생성을 제어할 수 있어야한다.유일한 인스턴스에 쉽게 접근할 수 있어야한다.빌더(중요) : 복잡한 객체의 생성방법과 표현방법을 분리하기 위해 사용별도의 builder 클래스를 만들어 값을 입력받아 최종적으로 build() 메서드를 통해 인스턴스를 생성해서 리턴한..

24년 10월 2일

오전프로세스란 ?단순하게 말하자면 현재 실행중인 프로그램이다.사용자가 작성한 프로그램이 메모리 공간을 할당받아 실행 중인 것.이런 프로세스에는 데이터 , 메모리 등의 자원 그리고 스레드로 구성됨스레드란?프로세스 내에서 작업을 수행하는 주체를 말한다.모든 프로세스에는 한 개 이상의 스레드가 존재하여 작업을 수행한다.스레드가 하나일 때는 싱글스레드, 2개 이상일 때는 멀티스레드 라고한다.(스레드를 예로 들어보자면 가게에서 역할을 분담해서 일을 하는 사람 객체 하나 하나를 스레드라고 보면 될 것 같다.)스레드의 생성과 실행스레드를 생성하는 방법에는 두가지 방법이 있다.Runnable 인터페이스를 구현하는 법Thread 클래스를 상속받는 법스레드의 메서드Thread.sleep(10); : 0.01 초간 스레드를..

24년 10월 1일

JDBC : 자바 프로그래밍 언어로 데이터베이스에 접근 할 수 있도록 하는 JAVA API (중요)※ JDBC API 를 이용하여 DB에 연동할 수 있으며 , 데이터베이스에서 자료를 쿼리하거나 업데이트할 수도 있다 . !JDBC API 사용단계JDBC 드라이버 로드Connection 객체 생성STATEMENT 객체 생성SQL 문 전송(쿼리 실행)ResultSet 객체로부터 데이터 조회ResultSet 객체 CloseStatement 객체 closeConnection 객체 Close각 단계별 자세히 설명JDBC 드라이버 로딩 : 사용하고자 하는 JDBC 드라이버를 로딩한다. JDBC 드라이버는 DriverManager 클래스를 통해 로딩된다.Connection 객체 생성 : JDBC 드라이버가 정상적으로 ..