본문 바로가기

=== 전체보기 ===

[DataBase]3층 스키마에 대해 알아보자 1. 3층 스키마란? ◎ 사용자, 설계자, 개발자가 데이터베이스를 보는 관점에 따라 데이터베이스를 기술하고 이들간의 관계를 정의한 ANSI표준이다. ◎ 3층 스키마는 데이터베이스의 독립성을 확보하기 위한 방법이다. ◎ 데이터의 독립성을 확보하면 데이터 복잡도 증가, 데이터 중복 제거, 사용자 요구사항 변경에 따른 대응력 향상, 관리 및 유지보스 비용 절감 등의 장점을 갖게 된다. ◎ 3단계 계층으로 분리해서 독립성을 확보하는 방법으로 각 계층을 View라고도 한다.3층 스키마의 독립성 독립성 내용 논리적 독립성 저장구조가 변경되어도 응용 프로그램 및 개념 스키마에 영향이 없다. 물리적 독립성 데이터베이스 논리적 구조가 변경되어도 응용 프로그램에 변화가 없다. 2. 3층 스키마의 구조구조설명외부스키마- 사..
[DataBase]데이터 모델링에 대해 알아보자 1. 데이터 모델링[Data Modeling]이란 무엇일까? 데이터 모델링은 현실세계를 데이터베이스로 표현하기 위해서 추상화 하는 것이다.데이터 모델링을 하기 위해서는 고객과의 의사소통을 통해 고객의 업무 프로세스를 이해해야 한다.고객의 업무 프로세스를 이해하면, 데이터 모델링 표기법을 사용해서 모델링을 한다.데이터 모델링은 복잡하지 않도록 모델링을 해서 고객이 쉽게 이해할 수 있어야 한다.데이터 모델링은 고객의 업무 프로세스를 추상화하고, 소프트웨어가 분석 및 설계하면서 점점 더 상세해진다.데이터 모델링은 고객의 비즈니스 프로세스를 이해하고 비즈니스 프로세스의 규칙을 정의하고, 정의된 비즈니스 규칙을 데이터 모델로 표현한다. 2. 데이터 모델링의 특징 데이터 모델링은 추상화해야한다. 추상화는 공통적인 ..
[Spring]SpringFramework란 무엇일까?? 개발을 편하게 해주는 SpringFramework에 대하여 알아봅시다. 1. SpringFramework란?자바 엔터프라이즈 개발을 편하게 해주는오픈소스 경량급 어플리케이션 프레임워크 여기서 오픈소스(Open Source)란 소프트웨어나 하드웨어의 제작자의 권리는 지키면서 원시코드를 누구나 열람할 수 있게 한 것입니다.. 또한 프레임워크(Framework)란 소프트웨어의 구체적인 부분에 해당하는 설계 및 구현등을 재사용을 할 수 있게 하여 일련의 협업화된 형태로 클래스를 제공하는 것입니다. 라이브러리(Library)와 비교하자면, 프레임워크는 뼈대, 틀이라고 한다면 라이브러리는 도구, 부품이라고 생각하면 쉽습니다. 2. SpringFramework의 특징 1. POJO(Plain Old Java Obje..
마인크래프트 일본성 건축! 마인크래프트 정품을 구매하게 되어 즐기던 중 우연찮게 영상을 보게 되었고 일본성을 건축해보았습니다!!! 완성하고 보니 정말 멋있네요!셰이더를 사용하여 캡쳐하였습니다. 조명작업 전의 외부입니다. 조명작업 후 외부사진! 별관내부 1층 내부 일부 2층 내부 일부 3층 내부 일부 4층 내부 일부 5층 내부 실제 사진과 비슷하게 찍어보았습니다. 해가 뜨는 시간 한.. 3일정도 걸린것 같습니다 생각보다 디테일해서 좋았습니다! 영상도 쉽게쉽게 잘 설명해두었고,일본영상이지만 쉽게 따라할 수 있었습니다. 아래는 위의 성을 만들때 본 영상입니다.https://www.youtube.com/watch?v=kAugKJSgFKw
[Spring]한글 깨짐 처리를 해보자! Spring 프로젝트를 만들고 실행을 했을 때, 시간부분의 한글이 깨지는 것을 볼 수 있다. 어떻게 하면 해결할 수 있을까? web.xml에 아래의 코드를 넣는다.12345678910111213141516171819202122 encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true encodingFilter /* Colored by Color Scriptercs
<MongoDB> 몽고DB란 무엇일까?? 몽고DB? Oracle, mysql같은게 아닌가? 무엇인지 한번 알아보자! 1. 몽고DB란? 데이터 객체들이 컬렉션 내부에서 독립된 문서로 저장되는, 문서 모델을 기반으로 하는NoSQL 데이터베이스입니다. 몽고DB는 컬렉션을 사용해 데이터를 하나로 묶습니다. 컬렉션(Collection)이란 용도가 같거나 유사한 문서들을 그룹으로 묶은 것을 말합니다. 이러한 컬렉션은 기존의 SQL DB의 테이블처럼 동작합니다. 문서(Document)란 몽고DB내에 있는 하나의 실제데이터를 나타내는 표현입니다. 컬렉션은 한개 이상의 연관된 실제데이터로 이루어져 있습니다. 이러한 문서들은 내부 하위 문서들을 포함하고 있어 애플리케이션에 가까운 고유 데이터 모델을 제공합니다. 문서들은 BSON으로 저장됩니다. BSON이란 이진..
<Mybatis> #과 $의 차이를 알아보자! mybatis를 사용하다 mapper에 sql문을 작성할 때 '#'과 '$'들을 볼 수 있습니다.그것이 어떤 의미인지 알아봅시다! ▷'#'이란?PreparedStatement를 의미합니다. ex) (ID = admin) ▶ mybatis mapper SELECT ID FROM test WHERE ID = #{ID} Oracle로 넘어온 쿼리 SELECT ID FROM test WHERE ID = ? 실제 수행 쿼리 SELECT ID FROM test WHERE ID = 'admin' ▷'$'란?Statement를 의미합니다. ex) (num = 77) ▶ mybatis mapper SELECT ID FROM test WHERE num= ${num} Oracle로 넘어온 쿼리 SELECT ID FROM t..
<SQL>SQL 인젝션 방어하는 방법중 하나 SQL Injection(SQL 삽입 공격)을 방어하는 방법에 대해 알아봅시다! 1. SQL Injection이란? Web Hacking 기법중 하나이며, 웹 애플리케이션의 Database에 질의(쿼리를 보냄)하는 과정 사이에 일반적인 값이 아닌 악의적인 의도를 갖는 구문을 삽입하여, 공격자가 원하는 SQL 쿼리문을 작동하게 하는 방법입니다. 주로 클라이언트가 입력한 데이터를 서버에서 필터링, 이스케이핑을 하지 못하였을 경우에 발생합니다. 이러한 문제 때문에 대부분의 데이터베이스 엔진은 의도치않은 입력을 방지하기 위하여 escape함수와 prepared statement를 제공합니다. SQL Injection 공격의 종류에는 크게 세 가지가 있습니다.1) 인증 우회 (AB : Auth Bypass)2) ..