전통가구의 현대적 활용방안에 관한 연구

A Study on How to Use Traditional furniture in Modern Ways

- 한국・중국・일본의 전통가구를 중심으로 -

-Focusing on the traditional furniture of Korea, China and Japan -

(결과보고서)

2003. 8. 31

주관기관 : 국민대학교

산 업 자 원 부

한국디자인진흥원

전통가구의 현대적 활용방안에 관한 연구

A Study on How to Use Traditional furniture in Modern Ways

- 한국・중국・일본의 전통가구를 중심으로 -

-Focusing on the traditional furniture of Korea, China and Japan -

(결과보고서)

2003. 8. 31

주관기관 :

개발사업총괄책임자 :

연구원 :

해외위촉연구원 :

기술연구원 :

국민대학교 종합예술연구소

김철수   (국민대학교 교수)

정도성   (국민대학교 교수)

최경란   (국민대학교 교수)

김진옥   (경성대학교 교수)

하재경   (안산공과대학 교수)

윤선영   (국민대학교 테크노디자인 계약교수)

장중식   (국민대학교 강사)

가시와기 (일본 무사시노대학 교수)

류티쥰   (중국 청화대 교수)

김영윤   (국민대학교 테크노디자인대학원)

제출문

한국디자인진흥원장 귀하

본 보고서를 “디자인기반기술개발사업에 관한 연구개발”

(사업기간 :2002.09.01 ~ 2003.08.31) 과제의 결과보고서로 제출합니다.

주관기관 :

개발사업총괄책임자 :

연구원 :

해외위촉연구원 :

기술연구원 :

국민대학교 종합예술연구소

김철수   (국민대학교 교수)

정도성   (국민대학교 교수)

최경란   (국민대학교 교수)

김진옥   (경성대학교 교수)

하재경   (안산공과대학 교수)

윤선영   (국민대학교 테크노디자인 계약교수)

장중식   (국민대학교 강사)

가시와기 (일본 무사시노대학 교수)

류티쥰   (중국 청화대 교수)

김영윤   (국민대학교 테크노디자인대학원)

요 약 서 ( 초 록 )
사업명	전통가구의 현대적 활용방안에 관한 연구
주관기관	국민대학교	총괄책임자	김 철 수
총사업기간	2002.09.01 ~ 2003.08.31 (1년)
주제어	가구데이터베이스, 구조, 기능, 사람, 사물, 공간
1.연구개발 목표 - 한․중․일 전통가구의 비교분석을 통한 자료의 수집 및 분류 - 사용자 문화 중심의 디자인 관점을 통한 전통가구의 현대적 활용방안의 제시 - 국내 가구 산업에 실제적으로 활용 가능한 디자인 개발 기법의 창출 - 국제 경쟁력을 갖는 혁신적인 가구 디자인을 하는데 있어서 활용될 수 있는 D/B의 구축 2.연구의 목적 및 중요성 세계가구 디자인경향이 동양적 디자인으로 급변하는 상황에서 동양적 아이덴티티를 활용한 디자인 개발에 도움을 주는 데이터베이스를 구축함으로서 국내 가구 디자인의 국제 경쟁력 확보가 시급하다. 이러한 맥락에서 동양적 디자인의 가치로서 한국․중국 및 일본 전통가구의 비교 및 분석을 통하여 전통가구의 디자인적 우수성을 정리하여 가구디자인 관련 전반 분야에 실질적으로 활용할 수 있는 자료를 제공함으로서 경쟁력 있는 연구 및 산업에 새로운 방향을 제시할 수 있다. 이러한 연구에 틀로서 현대 산업디자인의 주요관점인 사용자 중심의 디자인적 해석, 그리고 가구에 있어서 문화적 아이덴티티 추출을 한국 중국 및 일본에 전통가구에 이해 및 분석의 연구가 요구된다. 본 연구는 선행연구에 구조적 틀을 활용함으로서 보다 효율적이고 생산적인 연구가 가능하며, 산학연의 국제적 협력을 통하여 보다 상승적인 효과와 연구의 효용성이 극대화 될 것이다. 3.연구개발의 내용 및 범위 한국, 중국 및 일본의 전통가구를 동일 시대를 배경으로 비교 (한국 - 조선시대가구, 중국 - 명, 청 , 일본 - 무로마치 에도)시대적인 범위로 하며 사용자 중심의 관점을 통하여 가구를 분석하여 자료화함으로서 자료화 및 D/B를 구축하는 것을 그 연구의 내용으로 한다. 구체적 연구내용은 다음의 세 단계로 크게 분류된다. 제1단계 - 한국, 중국 및 일본 전통가구 비교 분석 1. 생활양식 비교 2. 주거공간 비교 3. 가구양식 비교 제2단계 - 전통가구의 자원화 1. 사용유형별 자원화 2. 세부요소 자원화 3. 활용자료 자원화 제3단계 - Data Base의 현대적 활용방안 (D/B구축) 1. Data Base 체계구축 2. Data Base 화 3. Data Base 활용방안 4.기대효과 - 국가경쟁력 측면 가구의 자원화는 동양의 문화적 가치를 확대시킬 수 있는 기초를 확보하는 것으로서, 한국이 D/B 구축의 중심에서 주도적 역할을 하여, 세계 가구디자인 시장을 우위를 선정할 지점을 확보할 수 있다. - 산업적 측면 가구에 관한 D/B는 벤처형 가구디자인 스튜디오와 기업의 활성화로 연계될 수 있으며, 제품의 심미적, 문화 가치적 질적 향상을 통한 상품 가치의 제고와 세계 시장에서 보다 경쟁력 있는 가구 디자인의 특성화와 차별화를 유도함으로서 디자인 산업 활성화에 큰 기여가 예측된다. - 교육적 측면 가구의 D/B구축에 관한 연구는 동양적 디자인 정체성 확립을 위한 연구로서 동양적 가구 디자인을 위한 교육의 기초를 마련하며, 사용자 문화 중심 디자인을 위한 국제적 연구와 교류의 토대가 될 것이다. - 목 차 - 제1장 연구개요 1 제1절 연구의 배경 및 목적 2 제2절 연구의 내용 및 방법 5 제3절 연구 프로세스 8 제2장 한국, 중국 및 일본 전통가구의 이해 9 제1절 한국의 전통가구 10 1. 한국의 자연환경 특성 10 2. 한국 전통가구의 역사적 배경 10 3. 한국의 주거양식과 공간 특성 13 4. 한국 전통가구의 생활양식과 가구 18 5. 한국 전통가구의 세부요소 22 가. 재료 22 나. 구조 23 다. 문양 및 금구장식 23 라. 마감 25 6. 소결 26 제2절 중국의 전통가구 27 1. 중국의 자연환경 특성 27 2. 중국 전통가구의 역사적 배경 28 3. 중국의 주거양식과 공간 특성 31 4. 중국 전통가구의 생활양식과 가구 36 5. 중국 전통가구의 세부요소 37 가. 재료 39 나. 구조 40 다. 문양 및 금구장식 41 라. 마감 45 6. 소결 45 제3절 일본의 전통가구 48 1. 일본의 자연환경 특성 48 2. 일본 전통가구의 역사적 배경 49 3. 일본의 주거양식과 공간 특성 54 4. 일본 전통가구의 생활양식과 가구 59 5. 일본 전통가구의 세부요소 60 가. 재료 60 나. 구조 60 다. 문양 및 금구장식 61 라. 마감 62 6. 소결 63 제3장 한국, 중국 및 일본 전통가구의 DB 체계 66 제1절 전통가구의 DB 고찰 67 1.DB의 특성 67 2.DB의 개발원칙 67 3.DB의 디자인 방향 69 제2절 전통가구의 DB 구성 71 1.전통가구의 정보 71 2.전통가구의 그래픽데이터 75 3.웹3D 모듈 75 제3절 전통가구의 DB 분류 83 1.유형별 분류 83 가.사물 83 나.자세 86 다.공간 88 2.세부요소별 분류 89 가.문양 89 나.금구장식 90 다.재료 92 라.마감 93 마.구조 93 3.추가정보 분류 95 가.물리적 요소 95 나.형태미학적 요소 95 다.표식적 요소 95 라.상징적 요소 96 제4장 한국, 중국 및 일본 전통가구의 데이터베이스 구축 97 제1절 데이터베이스 시스템 환경설정 97 1.하드웨어 구성 97 2.소프트웨어 구성 100 3.웹 프로그램 구성 103 4.시스템 설치 및 실행 105 제2절 관리자 환경시스템 110 1.관리자 로그인 110 2.항목별 관리 111 제3절 오리엔탈 데이터베이스 사용 환경 123 1.일반사용자 (Guest) 123 2.관리자 (Administrator) 125 3.등록사용자 (User) 128 제5장 기대효과 132 제1절 오리엔탈 퍼니춰 데이터베이스를 통한 기대효과 133 제2절 연구결과를 통한 기대효과 133 참고자료 부록

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

제1장

연구개요

제1절 연구의 배경 및 목적

제2절 연구의 내용 및 방법

제3절 연구 프로세스

전통가구의 현대적 활용방안에 관한 연구

제1장 연구개요

제1절 연구의 배경 및 목적

1. 연구의 배경

가구산업은 첨단 산업인 전자, 반도체, 자동차 산업 등에 비해 기술투자비용이나 생산라인에 대한 투자비용이 상대적으로 적게 들고, 디자인 투자에 의해 고부가가치를 창출할 수 있기 때문에, 비교적 단시간에 급성장할 수 있는 잠재력을 지닌 문화 지향적 산업으로 평가된다. 가구산업은 노동집약적 성향이 상대적으로 높아 노동수요 창출의 효과가 클 뿐만 아니라 중소기업의 사업영역으로 적합하며, 아이디어만으로도 새로운 수요 창출이 가능하여 경제 활성화에 의한 한국 경제의 자생력 확보에 기여할 수 있는 산업의 하나로 인정받고 있다.

지금 세계는 동양적 디자인의 가치에 대해 눈을 돌리고 있으며, 이러한 경향은 최근 세계 우수의 가구 관련 박람회에서도 실제 확인되고 있다. 서구의 이성중심주의의 디자인 패러다임에 동양문화의 사유체계를 접목하려는 이러한 움직임은, 급변하는 세계 속에서 우리의 전통문화에 대한 연구와 동시에 동아시아 주변국가의 전통문화에 대한 비교연구가 시급함을 말해주는 것이라 하겠다. 이러한 맥락에서 동양적 디자인의 가치로서 한국・중국 및 일본 전통가구의 우수성에 대한 데이터베이스를 구축하고 그것을 활용함으로써, 과거의 문화적 우수성을 차용하는 방법을 제시하여 21세기에 경쟁력 있는 가구를 개발하기 위한 새로운 모델이 필요하다.

또한 급변하는 국제시장의 트랜드 변화 속에서 장기적으로 국가적 브랜드의 차별화가 이루어질 수 있도록 주변국가와의 문화 비교연구를 통한 국가 아이덴티티의 실체화가 필요하다. 가구는 실내공간의 특성을 반영하는 동시에 그 공간의 특성을 형성하는 매개체로서 지역과 시대의 고유한 성격을 표출하는 문화적 상징물이다. 따라서 가구에는 생활양식 및 행위패턴 등 쉽게 드러나지는 않지만 그 지역 사용자에게 엄연히 내재되어 있는 문화적 특성이 부여되어 있으며, 이러한 특성이 디자인 과정에서 고려되지 않을 경우 그 제품은 사용자의 요구에 부응하지 못하여 실패하는 결과를 초래한다. 그러므로 직접적이고 비교적 적용이 쉬운 형(Form), 색(Color), 재질(Material), 구조(Structure)와 같은 물리적 요소뿐 아니라 가치, 조형의식, 관습, 생활방식 등과 같은 비물리적 요소까지도 디자인 과정에서 고려할 때 서로 다른 문화권과 상황에 맞는 디자인, 궁극적으로는 사용자 중심의 디자인을 만들어 낼 수가 있고, 그 결과 가구의 문화적 경쟁력을 확보할 수 있다. 이러한 사용자 문화 중심의 디자인적 접근방법이 문화지향적인 가구산업에 적극적으로 활용됨이 필요하다.

선행연구내용인 조선조가구의 현대적 활용연구를 통한 조선조가구의 조사 분석을 통하여 우리의 문화유산인 조선조가구가 세계시장에서 경쟁력을 갖출 만큼 우수한 자원이라는 것을 확인하였으며, 대부분의 선행연구들이 일회성으로 끝나 산업의 자원화로 활발하게 활용되지 못하고 있거나 분야별 디자인의 실제 적용에 있어서는 어려움이 있는데 반하여, 이번 연구는 선행연구를 바탕으로 더욱 심도 있고 실용 가능한 디자인 DB의 구축이 절실하다.

한국ㆍ중국 및 일본 공동의 장기적 목표와 미래지향적 컨셉을 도출하는 차원에서 보다 근원적인 학문적 전망과 과학적 예측을 전제로 한 디자인 DB 및 교육체계의 구축에 중점을 두고, 한국ㆍ중국 및 일본 중심의 동양적 아이덴티티를 활용하여, 학교 및 연구소, 산업체의 디자이너 재교육 프로그램에 본 연구의 결과인 데이터베이스를 개국 적용토록 할 수 있을 것이다. 이러한 연구는 한국 가구산업의 문화적 정체성의 한계를 극복하는 하나의 방안으로 제시될 것이며, 한국 디자인의 교육과 산업분야에서 사용자 문화중심의 구체적인 기법 및 사례들을 한국ㆍ중국 및 일본을 대상으로 더욱 다양하게 검증함으로써, 혁신적인 디자인 기법을 유형화하고 세계시장에 대응할 만한 기반기술을 확보하게 될 것이다.

2. 연구의 목적

본 연구의 목적은 사용자 문화중심의 디자인 관점을 통하여 국제 경쟁력을 가지는 동양적인 가구 디자인을 하는 데 있어서 활용될 수 있는 데이터베이스를 구축하는 데에 있다. 이를 위하여 본 연구는 선행연구인 '조선조 가구의 현대적 활용방안 연구'에서 추출된 조선조 가구 데이터베이스를 중국과 일본을 포함한 동아시아 전통가구의 DB로 확대하여 동아시아 가구디자인의 특성을 자원화 하도록 함이 목표이다.

동아시아적 정체성을 담은 가구디자인 연구 및 개발에 활용될 수 있는 DB구축 연구는 새로운 가구시장의 수요에 대비한 경쟁력 있고 차별화된 디자인기법을 제공함으로써 가구산업체 및 교육현장에서 이를 실제적으로 활용할 수 있다.

한국의 가구디자인이 동아시아적 디자인 정체성 및 문화적 요구를 반영하여 실제적으로 활용될 수 있는 디자인 개발과정에서 자원이 될 수 있는 DB를 구축함으로써 가구관련 디자인분야에 있어서 세계적 경쟁력을 확보하는 것을 목적으로 기획하였다.

한중일 가구의 이해를 위한

기반연구 및 가구관련 자료 확충

가구디자인의 구조적

분석 및 체계 구축

사용자 중심의 동양적 가구디자인

활용을 위한 데이터베이스 구축

제2절 연구의 내용 및 방법

1. 연구의 범위 및 내용

본 연구의 내용은 사용자의 행동패턴 이해 및 사용자 중심의 새로운 해석을 위하여 한국ㆍ중국 및 일본의 전통가구에 대한 일반적인 고찰을 하고, 전통가구의 사용유형별, 세부요소별 그리고 활용자료별 자원화를 통하여 구축된 데이터베이스의 현대적인 활용방안을 제시한다. 이를 위하여 다음과 같은 3단계의 구체적인 내용으로 연구가 분류되어 진행된다.

그림  .단계별 연구추진체계

1.생활양식 비교

2.주거공간 비교

3.가구양식 비교

1단계 : 한중일 및 전통가구 비교분석

1.사용자 유형별 자원화

2.세부요소 자원화

3.활용자료 자원화

2단계 : 전통가구의 자원화

1.Data 구축 체계화

2.Database화

3.DB 활용방안

3단계 : 데이터베이스의 현대적 활용방안

본 연구의 시대적인 범위와 가구의 범위는 14∼18세기(한국의 조선, 중국의 명 ㆍ청, 일본의 무로마키ㆍ에도시대)에 중 상류층 이상(왕실 포함)이 사용하던 생활가구를 중심으로 한다. 중 상류층 이상으로 한정한 이유는 시대의 주류를 이끌어가던 계층으로 가계경제의 구애 없이 당시 가구의 기능적 조형적 원리를 충분히 구사할 수 있었기 때문에 당시 문화를 가장 잘 보여주며 미적으로도 가치가 높기 때문이다.

표  .한중일 전통가구의 비교시기

1300			1400			1500				1600						1700					1800		1900
중국	홍무제 1368-98						만력제 1572- 1620								강화제 1661-1722			건륭제 1735-96
	명(Ming dynasty, 1368-1644)													청(Qing dynasty, 1616-1912)											중화민국
한국									임진왜란					병자호란 1636 정묘호란 1627			영조 1724-76		정조~ 1800
	조선(Yi-danasity, 1382-1910)																									대한제국
일본				요시아사 1449 -74					임진왜란 1592-98
	무로마치(M P.,1392-1573)						모모 야마				에도(Edo P.,1600-1868)													메이지
1300			1400			1500				1600						1700					1800		1900

2. 연구의 분류체계

대상을 연구하는 학문의 근간에는 일정한 분류체계가 있다. 특히 본 연구의 목적이 한중일 가구의 우수성을 추출하여 이를 현대적으로 활용 가능한 DB를 구축하는 것인 만큼 시간과 공간의 제약을 포용하여 가구를 분류, 비교할 수 있는 객관적인 체계가 필요하다.

따라서 본 연구는 세계적 보편성아래 한중일 가구의 우수성을 추출하고자 새로운 분류체계를 만들고자 한다.  이 분류체계를 만들기 위한 조건은 첫째 넓은 의미의 가구(家具 집에서 사용하는 용구, Furniture and Furnishing)를 포함시키며, 둘째 생활 양식과 공간구성이 다른 나라의 가구들도 분류될 수 있어야 하고, 셋째 전통가구뿐만이 아니라  현대적 의미의 가구들도 분류될 수 있어야 한다는 것이다. 특히 세 번째 조건은 우리 연구의 목적이 전통가구를 알고자 하는 데에서 그치는 것이 아니라, 현대적 의미로 재해석하여 활용하고자 하는 것이 본 연구의 궁극적 목표이기 때문이기에 연유된 조건이다. 이러한 여러 조건을 만족시키는 핵심요소로 ‘기능’을 생각해 볼 수 있겠다.

여러 나라의 가구를 포괄하기 위하여 기능과 행태를 중심으로 한 분류로서 Edward Lucie-Smith의 분류영역을 기본으로 한다. 그는 그의 책〈Furniture History〉에서 가구의 역사를 연구하는 4가지 방향의 하나로‘기능을 들고 기능에 의해 다음 4가지 영역으로 나누었다.

Edward Lucie-Smith, 〈Furniture History〉, p8

one sits on a piece of furniture ; stools, benches and chairs

one puts things on it ; tables and stands

sleeps or reclines on it ; beds and couches

uses it for storage ; chests or wardroves

기능에 따른 앉는 것, 올려놓는 것, 자거나 기대는 것, 수납하는 것의  4가지 영역은 시대와 공간의 큰 제약 없이 통념적인 가구의 범주를 포괄할 수 있지만 본 연구에서 다루려는 가구의 범주는 그 당시 집안에서 쓰여진 용구(用具)의 개념을 지닌 넓은 의미의 가구로서 이 분류에 의하면 조명기구나 공간구획기구 등의 영역이 모호해진다. 따라서 Smith의 분류를 참고로 하여 한중일 가구를 분류하기 위한 틀로서 사람의 행위패턴(User Pattern)을 제시한다. 이는 사용자 중심 디자인과 일맥상통하는 기준으로 사람의 행위패턴에 따라 가구유형을 사람·사물·가구, 사람의 자세·가구사람, 사람·공간·가구와의 관계를 중심으로 다음과 같은 분류체계를 만들었다.

표  .사람의 행위패턴을 준거로 한 가구유형 분류체계

영역구분	영역 특성	유형코드 및 명칭	비고
사람. 사물. 가구	사람과 사물, 가구와의 상호관계에서 나온 영역으로 사물을 넣는 것, 사물을 올릴 수 있는 것 등의 사람의 행위패턴 지원하는 가구가 속하는 영역이다	A. Put things in
		B. Put things in & on
		C. Put things on
사람. 자세. 가구	사람의 자세와 가구와의 관계에서 나온 영역으로 앉는 것, 자는 것, 기대는 것 등의 사람의 행위패턴 지원하는 가구가 속하는 영역이다	D. Seating
		E. Seating & Lying/ Reclining
		F. Lying
사람. 공간. 가구	공간을 구획하는 것, 공간을 밝히는 것 등 사람의 행위패턴 중 공간과 가구와의 관계를 지원하는 가구가 속하는 영역이다.	G. Partition device
		H. Lighting & Heating

제3절 연구 프로세스

각 단계별 연구내용을 추진하기 위한 과정은 한・중・일 가구의 특성 추출에 대한 연구와 DB구축을 큰 축으로 하여 다음과 같은 프로세스로 진행된다.

데이터베이스 구축을 위해서 한국・중국・일본의 전통가구의 배경을 이해하고 한국 중국 일본의 전통가구의 분야별 유형화를 통해서 데이터베이스의 구조 및 컨텐츠의 기획 및 설계를 이행하였다. 이를 바탕으로 한국・중국・일본 전통가구의 국가별 체계적인 분류를 기반으로 특성을 추출하였으며 이를 데이터베이스 개발과 아울러서 데이터베이스 시스템을 구축하게 되었다. 또한 지속적인 업그레이드를 위해서 관리자 모듈을 연구 개발하였으며 이를 이용하여 국가별 데이터베이스의 시스템이 설계가 되었고, 또한 현재 데이터베이스를 관련 업계 및 관련 교육계에 현대적인 활용이 가능하도록 웹 서비스 또한 이행하게 되었다. 자세한 연구추진 프로세스를 보면 다음 그림과 같다.

그림  . 연구추진 프로세스

전통가구의 현대적

활용방안에 관한 연구

DB 구축

연구

한중일 전통가구의

배경 이해

한중일 전통가구의

분야별 유형화

한중일 전통가구 분류

및 특성 추출

관리 및 유지

DB 구조 기획

DB 화면 설계

DB 디자인

DB SYSTEM 구축

업계/교육계의 현대적 활용

입력

DB제공

업그레이드

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

제2장

한국, 중국 및 일본

전통가구의 이해

제1절 한국의 전통가구

제2절 중국의 전통가구

제3절 일본의 전통가구

전통가구의 현대적 활용방안에 관한 연구

제2장 한국, 중국 및 일본 전통가구의 이해

제1절 한국의 전통가구

1. 한국의 자연환경 특성

한국은 그리 넓지 않은 면적임에도 많은 산맥과 강으로 나뉘어져 지방의 특성이 강하고 수목이나 생활양식에 따라 지방색이 강하여 이에 맞는 주거양식 및 가구가 발달하였다. 한국은 국토의 70%이상이 산림이고, 남북으로 길어 남북의 기온 차가 심하기 때문에 수종이 다양하고, 뚜렷한 사계절로 인해 선명한 나이테가 생성된다. 따라서 용도에 따라 적재적소에 사용할 수 있는 수종(樹種)을 구하기 쉬워 일찍부터 목공기술이 발달하였고, 자연의 무늬 결이 아름다워 인위적인 장식이나 칠을 하지 않았다. 한편 우리나라의 기후는 무더운 여름과 혹독한 추위를 가져와서, 목리가 뚜렷한 재목은 한서(寒暑)에 따라 수축팽창(收縮膨脹)이 심하여 휘거나 터지기가 쉬웠다. 따라서 넓은 판재를 가진 전면대신 쇠목이나 동자 등의 골재로 면 분할을 하고 머름 칸이나 쥐벽 칸 복판 등의 좁은 판을 골재에 홈을 파서 전면을 재구성(再構成)하였다. 이러한 전면의 구성방식은 중국과 일본에는 없는 우리나라 가구만의 특징으로, 한국인의 독특한 비례감각으로 발전하여 오늘날까지도 높이 평가되고 있다.

박영규 <조선조의 목가구>, 한국의 목가구, 삼성출판사, 1982

사계절의 변화도 뚜렷하지만 국토를 지나는 산맥들이 자리 잡음으로 인하여 지역간의 교류가 활발하지 않아 각 지역마다 독특한 양식의 주거양식이 발달하였으며 그 폐쇄성 또한 강하였다.

2. 한국 전통가구의 역사적 배경

우리나라의 가구는 선사시대로 소급되는 오랜 역사를 거쳐 오면서 주거 및 생활환경의 고유성을 바탕으로 하여 시대에 따라 빼어난 전통을 수립하였다. 특히 단층 목조로 된 한옥의 건축구조와 독특한 난방형식인 온돌, 평좌식 생활습속 등은 주변국 문화와의 상호 긴밀한 영향 관계 속에서도 뚜렷한 가구양식을 성립시켰다. 침대 대신 온돌과 판방을 갖추어 놓고 온기와 냉기의 장점을 계절에 따라 즐겼던 점이라든지 평좌의 위치에서 쓰고 바라보기 편한 나지막한 비례의 창출, 좁은 공간을 효율적으로 활용하기 위한 수장기능의 발달, 남녀용 가구의 뚜렷한 차별화는 그 대표적인 예이다. 그러나 목재를 주재료로 썼기 때문에 보존의 어려움으로 인해 시대를 거슬러 올라갈수록 전래의 유물이 희박하다. 따라서 현재 남아 있는 유물은 대부분 조선시대 이후에 집중되어 있는 실정이다.

한국민족문화사전 www.koreandb.net/Kodia

가. 선사시대

우리민족의 최초의 주거환경은 수혈형식이었는데, 고조선시기를 거쳐 한사군이 설치된 뒤 점차로 초옥토실(草屋土室)로 변하여갔다. 초옥토실이란 지상으로 나타난 귀틀집 형태로, 통나무를 쌓아올리며 짓기 때문에 벌목용 도끼가 필수적으로 사용되었을 것이다. 이러한 도구의 발달이 저장용구인 가구에도 사용되었을 것으로 추측된다.

한국민족문화사전 www.koreandb.net/Kodia

나. 삼국시대

이 시대의 주거양식은 《신당서 新唐書》 동이전(東夷傳)의 고려조를 보면 귀족층은 목조가구식(木造架構式)의 고상주거양식(高床住居樣式)이고, 서민층은 장갱(長坑)을 놓고 좌식생활을 하였음을 알 수 있다. 그 예로 고분벽화를 살펴보면, 각저총 후실 후벽에는 두 여인이 앉아 있는 의자와 평상이 보이고 수족형(獸足形) 다리를 가진 목제상(木製床)과 기물들이 주위에 널려 있다.

또한, 쌍영총 후실 북벽에는 휘장이 드리워져 있는 평상이 있고 그 위에는 보료를 깐 것이 모두 좌식 생활에 알맞은 높이를 하고 있다. 백제와 신라의 문화도 고구려와 흡사한 점이 많다. 특히, 신라에서는 고구려의 고상주거양식처럼 바닥이 높은 마룻방 구조를 볼 수 있어 판재(板材)를 이용한 평상, 의자, 궤안 등을 썼으리라 추측된다. 이는 《당서 唐書》 동이열전(東夷列傳)의 기록을 보아도 목재가구에 황칠(黃漆)이 유명하였음을 알 수 있다.

한국민족문화사전 www.koreandb.net/Kodia

다. 고려시대

고려초부터 건축활동에 막대한 영향을 준 것은 풍수지리설과 음양론이었다. 《고려도경》민거조(民居條)의 기록에 의하면 이 시대의 주거양식은 온돌과 마룻방 구조가 결합된 형태인 것 같다. 다시 말하면 온돌이 더 개발되고 마룻방을 겹쳐 일반화된 상태이다. 특히, "탑마다 두 손님이 앉는데 손님이 많이 모이면 탑을 늘려 각기 마주앉는다."는 기록을 볼 때 탑은 평상과 같고 그 위에 소조(小俎)를 놓고 식사를 하는 좌식 형태의 도구임을 추측하게 한다. 그리고 이 시대에는 나전칠이 유명하여 여러 가지 유물이 보이는데, 이러한 상자는 대체로 장방형이며 의류 내지 귀중품을 보관하던 것으로 생각된다. 또한, 《고려사》 열전에 주인원(朱印遠)이 세황마포(細黃麻布)를 두 농이나 바쳤다는 기록에서 당시에 농이 이미 있었음을 알 수 있다. 더욱이 고려시대의 등촉구는 그 형태와 크기 등이 조선시대 유물과 많이 유사한 점이 흥미있다. 물론 이 시대의 장인들도 각종 기술을 발휘하였지만, 조선시대에 이르러 우리나라 전통가구의 독자적 방법을 나타낸 것은 이미 이 시대에 시작된 것으로 여겨진다.

이호열 <조선전기 주택사 연구> 영남대학교대학원, 1991

한국민족문화사전 www.koreandb.net/Kodia

라. 조선시대

조선시대에는 건국 초부터 성리학을 정치의 이념으로 삼아 성리학에 입각한 원리들이 건축 및 주생활 전반에 영향을 미쳤다. 그러나 그것은 오랫동안 우리나라의 전통과 다른 것으로 적용되는 데에 시간이 걸렸다.

성리학적 사회윤리가 주택의 배치계획과 공간구성 및 이용에 부여한 가장 큰 특질로는 내외법 내지 남녀간의 내외구별로 인하여 공간에서의 남녀 생활공간이 안채와 사랑채로 독립되어 건축되었다. 이는 비단 남녀의 구분뿐 아니라 양반과 상인 또는 집안 내에서도 위계질서에 따라 서로를 격리시키는 공간을 구성하게끔 하였다.

주택양식은 천연의 자재를 이용한 단층 목조가구식 구조이다. 따라서 가구도 이러한 주택구조에 맞추어 발달되었다. 각 방의 바닥구조는 기름먹인 장판지를 바른 온돌과 우물 마루식 판재를 깐 마루가 대표적이다. 실내의 벽, 천장, 창호 등은 호지법(湖紙法)에 의한 한지를 발랐고, 마룻방 천장은 사량가구식(四樑架構式)으로 하여 서까래를 노출시키며 그 사이에 백색 회반죽 마감을 한다.

조선시대 가구는 쓰임새는 물론 조형에서도 가장 한국적인 고유성을 갖춘 것으로 높이 평가되고 있다. 특히 엄격한 남녀유별의 유풍과 청렴  검소하면서도 격조있는 삶을 추구했던 당시의 숭문적(崇文的) 분위기가 가구양식에 그대로 반영되어 있기 때문이다. 남성 전용공간인 사랑방과 여성 중심의 공간인 안방 및 부엌에 놓인 가구는 종류와 쓰임새는 물론 조형 및 격조 면에서도 현저한 차이를 보인다. 조선시대에는 목재를 주요재료로 하는 주택양식과 더불어 가구 역시 목재의 무늬를 잘 살린 형태로 발전되어 오늘날에도 널리 극찬되고 있지만, 형태뿐만 아니라 목공결구법(木工結構法)에 의한 독특한 기술로써 독자적 방법을 나타낸 것은 우리나라 전통가구양식의 특색을 형성하였다.

한국민족문화사전 www.koreandb.net/Kodia

마. 구한말

고종의 집정기는 조선시대 말기로서 새로운 개혁의 막을 올린 시기였다. 오랜 세월 유학의 영향으로 인한 지배층의 사회가 무너지고 새로운 민중중심의 동학사상이 전개되었고, 밖으로는 서구제국주의 열강과 일본에 의한 문호개방이 물밀듯 들어왔다. 흥선대원군의 쇄국정책에도 불구하고 임오군란과 갑신정변 이후 1910년에 경술국치가 되면서 이러한 시대적 변화에 휩쓸려 가구양식도 점차로 서구화되어갔다. 이때에 처음으로 서구문물의 혜택을 입은 곳은 바로 왕실이었다.

궁궐건축으로부터 실내장식, 가구, 공예품까지 서구화한 입식 형태로 변하였다. 따라서 국내에서도 입식 가구가 제작되었고 서구식 가구와 전통가구가 공용되었다. 그 뒤 광복과 함께 가구양식은 전통양식에서 절충식 양식으로 변하여갔다. 현재 궁중에 수장된 것 중 당시 유입된 17, 18세기 서양의 르네상스, 로코코양식의 가구와 중국의 화류가구 등을 볼 수 있다. 일제강점기에 유입된 가구로는 서랍이 많이 달린 장과 차단자라 하여 중국의 차탁자와 같이 개구부(開口部)가 많은 형태가 있다. 그리고 전래의 의걸이장이 이불장으로 쓰이다가 현대의 양복장으로 변한 것은 당시의 시대상을 잘 나타낸 것으로 생각된다. 그 뒤 마루가 입식 생활의 접객공간으로 되면서, 소파가 등장하고 차탁자, 협탁(脇卓), 장식장 등의 서양가구가 발전되었다고 할 수 있다.

디지털한국학www.koreandb.net

3. 한국의 주거양식과 공간 특성

조선시대의 주거양식 변천은 크게 임진왜란을 중심으로 전기와 후기로 분류할 수 있다.

가. 조선 초기

조선 초기에는 관의 규제로 신분별로 주택의 규모를 제한하였으며, 사대부 중심의 계급사회에 의한 남녀 및 신분을 구조적인 담이나 채로 구분하였다. 조선초기의 주택은 고려 말 개성의 주택을 계승한 형태로 온돌과 마루가 한 집에 혼합되는 양식도 보이고 있다.

김동욱 <조선시대 건축의 이해> 서울대학교 출판부, 1999

그림 1.필경재 <출처>www.morehouse.co.kr

조선의 삼정승을 배출한 필경재 (이병무 가옥)는 광평대군 묘역이 있는 수서와 일원 사이에 있다. 가옥의 배치에서 사랑채가 독립된 형태가 아닌 안채와의 분리 과정인 점으로 볼 때 15세기 후반인 성종조가 건립시기라는 의견이다. 동산을 등진 남향한 터에 ㄷ자형 안채가 남향으로 자리 잡고, 일자형 중문간채와 우측 사랑채가 연이어져 있고, 동쪽의 사랑채 뒤와 안채 동측 날개 사이는 트여 있어 텃밭으로의 출입이 자유롭다. 집을 가운데 두고 펼쳐진 사방 마당의 쓰임새가 다부지고, 사랑채를 앞을 제외한 삼면이 담장으로 둘러져 있어 사랑채 공간의 개방성과 안채의 숨김이 대조를 이루어 각 공간의 변화가 다양했으리라는 것을 쉽게 상상할 수 있다.

주택 들어가서 보기 www.morehouse.co.kr

나. 조선 후기

17세기에 들어서는 '주자가례'에 의한 사족들의 생활문화가 정착되어 주거양식에도 큰 영향을 미쳤다. 주자가 가례를 행하는 데 특히 강조한 것은 집 안에 가묘를 세우고 조상에 제사 지내는 의식을 철저히 하도록 하는 것이었다. 적어도 사대부의 집이라면 4대의 조상 신주를 모신 가묘를 집안에 세우고 절기에 맞추어 제사를 지내는 것이 법도로 자리 잡았다. 제사 지내는 의식이 집 안에서 중요한 행사가 되면서 사랑채에 대한 인식이 높아졌다. 제사는 혈족의 남자들을 중심으로 치러졌으므로 제사를 준비하고 제사 전후의 여러 의식을 치르는 장소로 쓰이게 된 사랑채가 집안의 으뜸 장소가 된 것이다. 사랑채는 규모도 커지고 기둥이나 창문의 모습, 지붕의 형태에서도 안채나 다른 부분과 한눈에 차별되는 우월한 모습으로 꾸며지게 되었다. 아울러 사랑채는 접객 장소로써의 의미도 증대되었다. 17세기에 들어오면서 이처럼 양반의 집들은 사랑채를 장대하게 꾸미는 것이 일반화된다. 그것은 바로 이 시기에 이르러 양반사회에서 제사 지내고 손님 접대하는 것이 집안의 가장 중요한 행사로 정착되었음을 말해준다.

김동욱 , 앞의 책

서울 팔대가의 하나로 전해지는 박영효 가옥은 조선 제25대 왕 철종의 후궁 소생인 영혜공주의 부군 박영효가 살던 집이다. '남산골 한옥마을'에 복원된 조선 주택 중 가장 전형적인 경우가 이 박영효 가옥이다.

그림 2. 박영효 가옥 <출처>www.morehouse.co.kr

숭유억불의 유교중심의 통치국가였던 조선의 '내외'는 양반가의 사랑채와 안채라는 별동에서 실현이 되고 남자는 아이들 외에는 누구도 안채에 출입을 않는 배치가 조선 중기와 후기주택의 기본 평면이다. 사랑채가 일자형으로 개방적인 모양을 취하는 반면 안채는 ㄱ자나 ㄷ자형으로 폐쇄된 마당을 갖도록 하여 외부에서는 들여다보이지 않도록 배치를 고려한다. 지금도 호남과 영남의 전통가옥에서는 안채를 개방하지 않아서 답사하는 입장에서는 사랑채 반쪽만 보고 오는 경우가 많이 있다.

연경당(演慶堂)은 순조 28년(1828) 당시 사대부가를 모방하여 궁궐 내에 건립한 관계로 당시의 양반가를 대표할 수 있다. 최고의 목수가 정성을 다하여 지은 집으로, 당시의 타 지역 양반가옥을 지을 때 모범이 되었다. 개울을 건너 대문을 들어서면 행랑마당이 나오고, 두 개의 중문을 통하여 안채와 사랑채로 들어가게 된다. 하지만 마당으로 들어서서 사랑채, 또는 안채를 보면 두 건물이 하나로 이어져 있음을 알 수 있다. 행랑마당에서 안으로 인도하는 두 개의 중문은 모양이 다른데 사랑채 중문은 솟을대문으로, 안채 중문은 평대문으로 설치하여 두 공간의 위계를 달리하고 있다.

그림 3 연경당<출처>http://myhome.hanafos.com

솟을대문 동측은 방과 마구간  측간이 있고 서측은 방・청・방・방・방・부엌이 늘어서 있다. 사랑채 쪽의 중문간 행랑채는 방고헛간들로 구성되고 안채 쪽은 방청주 등으로 구성되어 안채 남측과 서측을 둘러싸고 있다. 사랑채는 정면 6간 측면 2간 반의 일자형으로 서측으로부터 동쪽으로 다락  사랑방과 침방  대청  누마루를 차례로 배치하여 서측의 안채와 한 채로 연속되어 있다. 사랑채를 우측으로 돌면 서재인 선향재가 있어 자칫 흩어질 듯한 동측을 적절히 분절하고 있으며 두 건물의 사이에서 뒷마당을 보면 실제의 거리보다 먼 듯한 느낌을 받게 되는데, 이는 선향재가 사랑채에 정직각이 아닌 뒷마당 쪽이 조금 안으로 들어와 있어서 투시효과가 증가되기 때문이다. 선향재는 정면 7간 측면 2간으로 중앙에 큰 대청을 두고 좌우에 방들을 두었다. 선향재 뒤에는 층층 축대 위에 정자인 농수정을 두어 정원공간의 역할을 하고 있으며, 뒷마당과 앞마당에 설치된 협문을 통하여 안채 출입이 가능하게 계획되어 있어서 전체 움직임이 막힘이 없는 순환식 기능을 하고 있다. 안채는 정면 6간 측면 2간 반으로, 1간의 돌출된 누다락을 둔 ㄴ자형 평면을 이루는데 서측에 누다락과 안방을 두고 동쪽으로 나가면서 안대청  건넌방  작은 청을 두어 사랑채와 연속된다. 이 안채의 안방 남쪽에 부엌을 두지 않고 위에는 누다락을, 아래에는 안방에 불 때는 아궁이가 있는 함실을 둔 것은 대가에서 부엌이 반빗간으로 독립하기 때문이다. 연경당에서도 반빗간은 독립되어 안채 뒤쪽의 통벽문을 들어선 곳에 자리 잡고 있다. 공간의 구성-특히 안채와 사랑채를 갈라놓은 담장의 꺽임으로 연출되는 마당의 변화-와 건물의 모양새는 조선 주택 건축 중 가장 빼어난 모습을 하고 있다.

주택 들어가서 보기 www.morehouse.co.kr

다. 조선말기

조선시대 말기에 접어드는 영조, 정조조에 대두되기 시작한 실학사상은 점차 토지제도와 행정기구의 개혁을 꾀하게 되었고 또 농업  공업  상업 등 각 방면에 걸친 경제적 성장과 부의 축적은 양반중심사회의 신분체제에 변화를 가져와 적서의 차별과 지방간의 차별이 점차 없어지기 시작하였다. 18세기 이후 양반사회는 점차 내부의 분화가 전개되어 19세기에는 그것이 현저하게 나타났다. 이러한 신분제도의 철폐로 조선시대 초기부터 실시되어 오던 가사규제가 사실상 없어지게 되었고 또 그간 중인을 중심으로 이루어진 개화사상은 그들이 쌓은 부의 축적과 문화적 기반으로 과감하게 주택개량에 임하게 되었다. 이런 과정 속에서 상류주택은 전반적으로 본래의 절제와 격식보다는 생활의 즐거움을 누리고 쾌적한 치장이나 실내구성을 추구하는 세련미 넘치는 건축으로 탈바꿈한 것이다.

19세기 상류주택이 갖는 여러 특징들 즉 집 주변에 조성한 장대한 연못, 세 겹으로 짜여진 정교한 창호, 돌출한 누마루, 벽돌을 이용한 장식문양 등등은 바로 이 시기 건축 장인들이 달성한 높은 기술수준이 바탕에 있었기 때문에 가능하였다. 19세기가 되면 건축 장인들은 관청의 예속에서 벗어나 자유로운 신분으로 노임에 의하여 건축활동을 영위하고 있었으며 갖가지 종류로 세분화된 다양하고 정교한 연장을 몸에 지니고 섬세한 세부가공에 정성을 기울이고 있었다. 특히 창문의 미세한 치장이 가능한 대패의 발달은 19세기 주택의 창호를 전 시대와 구분짓는 한 단계 세련된 것으로 만들 수 있게 하였다.

김동욱, 앞의 책

조선조 최후의 총리대신인 한규설 대감 살림집의 전체 영역은 엄격한 위계에 의해 연결되는 4개의 마당으로 구성되며, 각 중심건물은 대문채, 사랑채, 안채, 사당채이며 이외에도 별채와 행랑채가 있다.

그림 4. 한규설대감 가옥<출처>www.morehouse.co.kr

전체의 건물들은 ㄱ자 평면을 주조로 함으로써 자연스런 영역을 형성하도록 되어있다. '행랑마당 - 사랑마당 - 안마당 - 사당마당'으로 이어지는 위계는 사대부가의 이상적이며 논리적인 공간구성이고, 조선후기 도시 세도가의 전형을 보여주는 것이다. 배치 외에도 몇 가지 면에서 후기주택의 특징을 보여준다. 각 건물이 겹집화 됨으로써 각 실의 규모와 깊이가 커졌고, 툇마루의 발달은 각 실을 연결하여 마루 바닥 레벨에서 동선처리가 가능하도록 했다. 그 외에도 화강석제 장대석 기단과 잘 가공된 육각초석, 부연을 단 겹처마의 구성은 이전의 규제를 깨뜨리는 장식화의 추세를 보인다.

주택 들어가서 보기 www.morehouse.co.kr

4. 한국 전통가구의 생활양식과 가구

조선시대의 주거문화에 영향을 끼친 사상으로는 성리학을 주조로 하는 유교, 풍수사상 등이 있다. 유교의 영향으로 주택은 남녀유별, 상하 신분차이에 따라 사랑채와 안채, 행랑채 등의 공간분화가 나타났으며, 집 안에 가묘를 세우고 장자중심의 평면이 건축되는 등이 나타났다. 풍수사상은 집터를 선정하는 일부터 시작하며 건물의 위치와 방향을 정하며, 집의 평면형태 역시 좋은 글자의 모양을 갖추어야 한다고 생각하여 해와 달을 뜻하는 일(日), 월(月)과 같은 모양, 먹을 것이 끊이지 않음을 뜻하는 구(口)와 같은 모양을 선호하였다. 그 외에도 건설시기와 과정, 건축방법에 이르기까지 주택의 계획과 건축전반에 적용되었다.

조선시대 주택 내부에서 주요한 공간들은 안채과 사랑채로 크게 구분된다. 안채는 여자의 공간으로 아기자기함이 특징이며, 사랑채는 사랑방, 대청과 누마루, 침방과 서고, 그리고 사랑마당으로 구성되어 있다. 사랑채는 남자의 공간으로 권위와 신분을 상징하였으며 안방과 건넌방, 안대청과 부엌, 곳간으로 이루어져 있다.

사랑방은 성리학의 저변화에 따라 조선후기에 들어 보편화된 사대부선비들의 독서처이자 이상적인 삶의 실천 공간이었다. 조선시대의 사랑방 가구가 고결한 기품과 속기없는 높은 격조를 지닌 특수한 양식적 특성을 보유하고 있는 것은 바로 성리학을 이념적 기반으로 삼아 몸소 실천하려는 수요층의 교양적 배경에서 기인한다. 그 이념적 근거는 주문공의 《가요법 家要法》이 중요한 기준이 되었지만, 명 · 청대의 중국가구와 확연히 다른 조형양식을 보이는 것은 조선가구의 중요한 특수성으로 꼽힌다.

한국민족문화사전www.koreandb.net/kodia

사랑방 가구는 수납가구, 문방가구, 문방 소품, 취미 용구로 분류된다. 주요 수납가구에는 의걸이장, 책장이 있으며 문방가구로는 문갑, 탁자, 서안 등이 있다. 문방 소품으로 필통, 필가 등이 있으며 벽면에는 두루마리나 서안지를 꽂아두기 위한 고비를 걸었다. 그리고 무쇠 촉대나 목재 등경과 같은 등촉구 향을 피우기 위한 향꽂이와 향연, 끽연구 등을 구비하였으며, 주인의 취향에 따라 수석과 난 등 관상품과 거문고, 퉁소, 바둑판 등의 취미 오락 기구를 갖추었다. 가구 배치를 보면, 은은하고 정적인 분위기가 나는 사랑방의 아랫목 벽 쪽으로 다락문이 있으며, 문 앞에는 병풍이 둘러졌다. 방 중심의 등받이 쪽에 안석, 왼쪽에 장침, 오른쪽에 사랑침이 각각 놓였다. 서안은 사랑방 가구에서 중추적인 역할을 하였는데, 책을 펴놓는 본래의 기능 이외에도 손님과 마주앉는 주인의 위치를 확고히 지켜주는 역할을 하였다.  이 가운데 사방탁자는 층널과 네 기둥만으로 간일하게 결구되어 사방이 막힘없이 시원하게 구성된 가장 대표적인 사랑방 가구로 꼽힌다. 칸마다 수평으로 얹은 층널 이외에는 어디에도 장식을 위한 문양이나 의도적인 조형의 흔적이 없지만, 현대의 주거공간에도 잘 어울리는 조형적 특성을 지닌다. 이와 같은 기능 및 조형적 규범은 비단 사방탁자류에 국한되지 않고 문갑 · 책상 · 의걸이장 · 고비 등 모든 종류의 가구에 공통적으로 적용되고 있다.

박영순 외 <우리 옛집 이야기> 열화당, 1998

한국민족문화사전 www.koreandb.net/kodia

그림 5 사랑방 실내 <출처 : 한국 목가구의 전통양식 >

은밀하고 폐쇄적인 특성과 의식주 생활의 중심 및 자녀를 낳아 양육하는 내실의 기능을 담당했던 안방의 가구는 나전이나 화각으로 십장생 · 문자 · 천도복숭아 · 구봉(九鳳) 등 길상적 의미를 띤 문양을 화려하게 시문함으로써 여성적 취향을 보여준다. 전통 수납가구의 핵심이라 할 수 있는 장 · 농과 여성적인 맵시를 가꾸기 위한 경대 · 빗접 · 반짇고리 등은 안방가구의 특성을 잘 보여준다. 그밖에 찬장 · 뒤주 · 소반 등 주방가구도 여성 공간의 연장으로서 기능성이 강조되었다.

한국민족문화사전 www.koreandb.net/kodia

안방의 주요 구성요소는 가구, 소형기물, 병풍 등이고, 이러한 가구류는 부피가 작은 것으로부터 큰 것의 순으로 시선의 흐름이 자연스럽게 이동될 수 있도록 배치되었다. 가구 배치를 구체적으로 살펴보면, 안방의 중심이 되는 아랫목에는 장방형 보료를 깔고 그 위에는 상방침만을 놓은 경우도 있었다. 보료는 바닥에 앉을 때 온돌이 주는 뜨겁거나 찬 촉감을 완화시키기 위한 것이다. 또한 병풍은 주로 겨울에 아랫목 쪽의 웃풍을 막기 위한 용도로 보료 뒤쪽에 쳤으며, 그 이외에도 화사하고 온화한 분위기를 조성하기 위해 둘러졌다. 병풍으로 인해 다락에 보관된 침구류나 생활용품을 넣고 꺼내는데 기능적인 제약이 많을 경우에는 병풍을 두르지 않았다. 그리고 벽면을 따라 머릿장, 문갑 등이 창호 밑에 길게 배치되었다. 좁고 긴 장방형의 문갑은 안마당으로 통하는 창 아래 공간에 놓이게 되는데 창호의 머름대보다 높이를 낮게 제작하여 방안에서 마당을 내다볼 때 시선을 방해하지 않도록 하였다. 이것은 안방의 구조뿐만 아니라 앉은 자세와 앉았을 때의 시선의 각도와도 관계가 있다. 주로 문갑 위에는 경대나 기타 소품을 놓았으나. 문지방을 통해 앞 툇마루로 나갈 때, 방해가 되는 경우에는 경대를 아랫목에 놓고 사용하기도 하였다. 문갑 쪽의 벽면은 여백을 주어 시원해 보이도록 하거나 고비와 같은 소품을 두어 장식하였다. 또한 윗방이 없는 경우에는 윗목의 부피가 큰 장이나 농 그리고 자주 사용하지 않는 가구를 놓았다. 윗방이 안방에 딸려 있는 경우에는 안방의 윗목에 사방탁자를 놓아 장식품을 진열하고 윗방에는 삼층장이나 이층농, 의걸이장, 반닫이와 같이 부피가 큰 수납가구를 배치하며, 장 위에는 함이나 궤를 올려놓고, 장 밑에는 세숫대야, 요강 등을 두었다.

박영순 외 <앞의 책>

그림 6. 안방의 가구배치 <출처> 한국 목가구의 전통양식

5. 한국 전통가구의 세부요소

가. 재료

조선시대에는 목재를 주요재료로 하는 주택양식과 더불어 가구 역시 목재의 무늬를 잘 살린 형태로 발전되어 오늘날에도 널리 극찬되고 있지만, 형태뿐만 아니라 목공결구법에 의한 독특한 기술로써 독자적 방법을 나타낸 것은 우리나라 전통가구양식의 특색을 형성하였다.

(1) 목재

조선시대 가구재로 쓰인 나무는 소나무, 잣나무, 자작나무, 대추나무, 흰노송나무, 밤나무, 버드나무, 가래나무, 호도나무, 수창목, 오동나무, 피목, 벚나무, 회화나무, 돌배나무 등이다. 이와 같은 나무들은 그 나무의 재질에 따라 골재(骨材), 판재(板材), 부재(附材)로 구분된다.

골재는 구조상 힘을 받는 단단한 나뭇결이 좋은 목재로서, 소나무, 돌배나무, 회화나무, 단풍나무, 호두나무 등이 쓰인다. 판재는 나뭇결이 아름다운 판목재로서, 오동나무, 소나무, 전나무, 뽕나무 등이 쓰인다. 부재는 가장 치장에 아름다운 판목재로서 회화나무, 수창목, 버드나무 등이 쓰인다.

(2) 죽재

대나무는 화본과 식물로서, 곧고 속이 비어 있어 자연형태 그대로를 살린 공예품 재료로 많이 쓰인다. 더욱이 청량하고 강직한 모습이 선비의 기품을 나타낸다 하여 조선시대 사대부들에게 곧잘 문방구로서 애용되었다. 종류는 6백여종이나, 공예용으로 사용되는 것은 약 30여종이다. 그 중에서 고죽(苦竹), 맹종죽(孟宗竹), 담죽(淡竹), 오죽(烏竹), 반죽(班竹)이 대표적인 것이며, 전주, 남원, 옹주, 담양 등지에서 주로 생산된다.

가공법은 벌채한 대나무를 다듬어 윤을 내고 표백하거나 껍질을 벗기고 도장(塗裝), 또는 낙죽(烙竹)하여 접합한다. 접착법은 대나무의 원 부분이 보이게 하는 내향법(內向法)과 속부분이 보이게 하며 낙죽하는 외향법(外向法)이 있다.

(3) 나전

나전이란 소라, 전복, 진주조개 등의 껍질을 가공하여 여러 문양으로 백골(白骨) 위에 붙이는 것을 말하며, 이 위에 옻칠을 한 것을 나전칠기라 한다. 조선시대에는 소함에서 장과 같이 큰 가구에 이르기까지 나전장식이 많았고, 기교는 세련되지 못하여도 다양하였다.

가공법으로는 상감법과 부착법이 있는데, 상감법은 파고박기와 눌러박기로 나뉜다. 파고박기는 백골(白骨)에 상감할 문양을 그려 새김칼로 파낸 뒤 재료를 넣고 칠하는 것이다. 눌러박기는 백골바탕에 옷칠을 두껍게 한 뒤 굳기 전에 재료를 눌러 고착한 뒤 갈아내는 것이다.

부착법은 접착제를 이용하여 나무에 자개를 붙인 뒤 뜨거운 인두로 지져 고착시키는 것으로, 지짐질이라고도 한다.

(4) 화각

투명도가 좋은 소뿔을 얇게 펴서 각지(角地)로 만든 뒤 그 뒷면에 채색 그림을 그려 백골표면에 붙여 장식하는 기법이다. 이러한 기법은 원래 중국 당나라 때 복채(伏彩)라는 채화 대모기술에서 영향을 받았으나, 대모가 없는 우리나라에서는 우각을 쓴 것 같다. 고도의 기술이 필요하여 규모가 작은 애기장, 함, 경대, 패물궤, 반짇고리, 실패, 부채 등에 치장하였다.

나. 구조

한국 전통가구의 구조적 특징은 판재와 골재, 즉 면과 선의 연속접합으로 이루어지며 목재를 전문적으로 다루는 고유한 수법으로 그 특성을 산출하였다. 고요한 수법이란 목제가구의 구조를 접착제를 사용하는 대신 장재(丈材)의 이음과 다양한 짜임으로 만드는 기법을 말한다. 접착제 사용은 필요한 부분에만 무리풀, 부레풀, 아교 등을 썼고, 쇠못대신 나무못 대못을 결구접합과 더불어 사용하였다. 이러한 이음과 짜임의 기법은 외부로는 접합부분이 잘 나타나지 않게 할 뿐 아니라 다른 판재를 쓰지 않고도 내부구조를 튼튼히 하였다. 따라서 이음과 짜임의 구조는 판재와 판재, 골재와 골재, 판재와 골재의 상대적인 결구조로 이루어진다.

그리고 이음과 짜임의 복합체라 할 수 있는 붙임새가 있는데 이것은 한 목재 위에 다른 재목을 붙임으로써 장식효과를 주는 의장적 기법이다. 그러므로 조선시대 가구의 접합구조를 이음새, 짜임새, 붙임새의 3종으로 나눌 수 있으며, 그 중 이음새와 짜임새의 두 방법이 결구의 핵심이 되었다고 할 수 있다. 이음새는 목재끼리 서로 이어서 사용할 수 있게 한 접합구조이며, 짜임새란 목재를 어떠한 짜임으로 형태를 만들 것인가에 관한 결구방법을 말한다.

다. 문양 및 금구장식

(1) 문양

조선시대에는 고려시대와 같이 불교가 성세를 이루지는 못하였지만, 부녀자를 중심으로 한 민간신앙이 뿌리를 내려 후기에는 동학사상과 더불어 다신교적 잡신을 숭배하는 원시사상과, 도교를 중심으로 한 신선사상이 널리 유행하였다. 즉, 악귀를 쫓고 수복을 염원한 부적(符籍) 관념이 심하였던 것이다. 이러한 사상에서 나타난 문양이 자연문, 관념문(觀念紋), 서수문(瑞獸紋) 등이다.

초기 나전이나 도기에 사용되었던 연당초문(蓮唐草紋), 보상화문, 쌍봉문 (雙鳳紋), 쌍룡문 등이 가구에 나타나면서 서수문으로는 불사조, 용, 봉황, 서초(瑞草)로는 8보, 연꽃, 불로초 등이 많이 쓰였다. 그리고 불교적 문양으로는 여의두문(如意頭紋), 안상문(眼象紋), 뇌문(雷紋), 태극문이 연당초의 대문(帶紋)과 더불어 쓰였다.

후기에 이르러서는 전란과 당쟁의 불안, 초조 속에서 재앙을 면하고 장수와 수복강녕을 기원 하면서 자연을 사색하게 되었다. 이러한 염원이 봉래산, 선도(仙桃), 십장생(산, 물, 나무, 돌, 구름, 풀, 사슴, 거북, 소나무, 해) 등의 문양과 오복을 상징하는 박쥐부귀를 나타내는 모란, 다남(多男)을 상징하는 석류 등으로 나타났다.

이밖에 사대부의 청빈한 사상을 표출하는 매, 난, 국, 죽의 4귀신(四貴神), 즉 군자의 네 가지 기질인 용기, 우정, 고아(高雅), 절개를 사랑방가구에 잘 표현하였다. 그리고 17, 18세기에 이르러 새로운 학풍인 실학사상이 대두되자 점차 왕실 등 특권계층에서도 민가공예화하면서 산, 새, 곤충, 악기, 책거리, 쌍희 등과 같이 명랑하고 아름다운 문양으로 변화하였다. 이와 함께 수복을 곁들인 기하학, 길상문양이 표출되어 실증적이고 독창적인 한국적 문양을 남기게 되었다.

(2) 금구장식

금구장식이란 동석계(銅錫系)인 백동, 놋쇠, 주석과 철계인 시우쇠, 무쇠 등의 금속판을 여러 모양으로 오려 그 위에 문양을 새기거나 조각하여 목기물에 부착한 장식을 말한다.

금구장식은 가구의 결구나 조형형식의 결정에 중요한 구실을 하며 반닫이 등 가구의 지역적 특성을 구분하는 기준이 될 만큼 생산지에 따라 현저한 차이를 나타내고 있어 주목된다.

표 . 금구장식의 종류

종류	기능	유형
경첩	개폐기능	돌쩌귀, 숨은형, 노출형
들쇠	장식	손잡이형
자물쇠	보관	선자물쇠, 은형자물쇠, ㄷ자형자물쇠, 두껍닫이, 배꼽자물쇠
앞바탕	몸판의 보호 및 장식
감잡이	판과 기둥의 접합부분이나 모서리를 보호, 장식기능
귀장식	가구의 모서리나 귀부분을 구조적으로 잡아줌, 장식기능
광두정	장식 (입체감을 주는 못)
뻗침대	반닫이나 뒤주 같은 함이나 궤형 문짝의 들쇠기능
배목	들쇠, 자물쇠, 고리 등을 물려줌

금구장식의 문양으로는 앞서 말한 자연문, 관념문, 서수문도 많지만, 투각(透刻), 선각(線刻)을 통하여 만자문, 희문, 수복문 (壽福紋)이 많고 호리병, 제비초리, 달개지쇠, 박쥐, 불로초 모양이 가장 많다.

라. 마감

조선시대 가구도장은 자연재를 그대로 길들여 소박미를 나타내도록 하였기 때문에 나뭇결을 살리기 위한 투명한 식물성 기름을 많이 썼고 내구성이 필요한 소반 등에는 불투명한 칠을 하였다. 그리고 특수가구에는 색상이 들어간 흑칠(黑漆), 주칠 (朱漆)을 하였다. 도장법에는 유도장과 칠도장 두 가지가 대표적이다.

(1) 유도장

들깨기름(트는 것을 방지), 호도기름(광택), 콩기름(견고성), 오동나무 기름 (해충방지) 등을 사용한다. 광택을 위한 도장법으로는 콩기름, 깨기름, 들기름, 오동나무 기름을 끓여서 풀과 같이 하여 칠하는 임도법(荏塗法)과, 나뭇결이 확실한 표면을 인두로 검게 태워 볏짚으로 강하게 문지르는 유목법(油木法)이 있다.

(2) 칠도장

옻칠이란 옻나무즙으로 만든 도료로, 칠장막이 매끄럽고 단단하여 방수에 좋고 견고성이 강하여 칠 중에서 가장 높게 평가된다. 칠곡 함양면은 옻나무 보호지역이고 평안북도 태천지방과 모천군이 생산지로 유명하다. 종류로는 생칠, 숙칠, 주칠, 흑칠, 황칠 등이 있다.

생칠은 옻나무 껍질에서 흐르는 액체상태의 옻칠이며, 숙칠은 옻나무를 불에 쪼여 받은 즙으로 하는 칠이다. 주칠은 주라는 도료를 칠과 혼합한 것이며, 흑칠은 숯가루나 황토를 불에 구워 만든 지분을 생칠과 혼합하여 흑색칠한 것이다. 황칠은 황갈색이 나는 옻칠로, 주로 도서지방에서 생산되며 지장, 도배지 등에 사용하였다.

디지털한국학www.koreandb.net

6. 소결

조선시대 주택 내에서의 가구배치의 특징을 몇 가지로 요약하면 다음과 같다.

첫째, 좌식생활에 맞는 가구들을 기본으로 하며 생활하는 사람의 인체공학적인 사용의 편리함을 보여준다.

둘째, 방의 중앙은 비워져 있음으로 하여 여러 가지 용도로 활용할 수 있다. 한 방에서 침실, 손님접대, 식사 등 다양한 생활이 이루어지므로 항상 변화할 수 있는 여지를 두었으며, 가구들도 이동성이 강하여 이러한 활용에 대처하기 좋았다.

셋째. 방의 가장 안쪽을 주공간으로 하여 사방으로 가구가 펼쳐지며 주로 비대칭적인 상하좌우의 비례가 자연스럽게 어우러져 있다. 건축에 영향을 미쳤던 풍수지리 등의 여러 사상들이 방안의 배치에까지 영향을 미치기도 하였다.

조선시대 가구의 조형적 특성은 여러 학자들에 의해 높이 평가되고 있다. 야나기 무네요시는 자연성(自然性)과 순수미(純粹美), 일상성(日常性), 불이성(不二性), 여유미(餘裕美) 등을 가지고 있다고 했고, 최순우는 간소미, 질소미, 있는 그대로의 재료의 아름다운 생명의 미가 노출된다고 했다. 한편 박영규는 한국 전통가구가 자연미와 비례미, 폭이 좁고 키가 낮은 가구양식과, 밝고 화사한 양식의 안방가구와 정선된 선과 검소함을 지닌 사랑방가구로 대별되는 특성을 가진다고 하였다.

야나기 무네요시 <조선의 예술> 일신서적공사

이순종 외 <한국적 디자인의 응용적 사례연구>

조선 가구는 지리적인 특성에서 나오는 예리한 선과 강한 형태의 강건함과 목리의 아름다움, 순수한 미 등을 대표적인 특성들로 들 수 있다.

첫째, 유교의 영향으로 예술적 화려함은 없으나 소탈하고 꾸밈새가 없다는 점을 들 수 있다. 자연에 순응하고 조화하려는 정서에 따라 나뭇결이 뚜렷한 재목을 써서 아름다운 나뭇결을 살리는 질감미를 보여주며, 자재가 지닌 자연미를 그대로 표현하기 위하여 과다한 장식을 피하고, 기능과 용도에 적합한 것 외에는 지나친 광택이나 색채를 쓰지 않았기 때문이다.

둘째, 수직과 수평을 강조한 직선이 일관되면서 현대적 조형 감각을 나타내며 정방형과 장방형으로 구성되는 윤곽미를 가진다. 폭이 좁고 높이를 강조한 농, 장, 탁자류는 사람의 키를 기준으로 제작되었으며, 선의 모서리를 부드럽게 굴리는 정교한 기술로 제작되어 직선을 많이 사용하는 가구가 가지는 예리하고 강직하여 시각적 피로감을 없애 준다.

셋째, 금속못의 사용보다 판(板)과 주(柱)의 다양한 결구식 목공기법을 사용하고 있다. 골재와 판재의 수종(樹種)을 적재적소에 사용하여 심재(心材)와 표면재(表面材)의 구분을 명확히 하면서 역학상의 무리가 없게 하여 결구방식의 표면처리를 아름답게 한 것이 특색이다.

넷째, 좌식 생활에 알맞은 높이와 규격 및 면 분할의 비례가 아름답다. 비교적 낮은 천장과 좁은 실내공간의 면적에 조화된 아담한 규격이다. 그리고 장방형과 방형의 연속적인 면분할은 가장 아름답게 느껴지는 균형미 즉 과학적이고 합리적인 황금비의 질서를 지키고 있음을 보여준다. 따라서 조선의 비례미는 조선가구의 과학적 실체를 확인시켜주는 좋은 요소가 되고 있다.

다섯째, 금구장식은 장식의 기능뿐만 아니라 이음의 구조적 보강을 겸하고 있으며, 또한 과다한 장식보다는 상징적인 의미로서의 장식문양도 미적인 감각 내지 민간신앙의 상징을 표현하여 행복과 강녕을 기원하는 복합적인 요소를 보여주고 있다.

제2절 중국의 전통가구

전통가구의 현대적 활용방안에 관한 연구

1. 중국의 자연환경 특성

가. 지리적 특성

중국은 태평양 서안에 위치한 대륙으로 총면적이 약 960만㎢로 한반도의 약 44배나 되고 전 세계 총 육지 면적의 6.5%를 차지한다. 러시아, 캐나다에 이어 세계 3위에 해당되는 국토를 가지고 있다. 중국은 이러한 광활한 국토를 가졌을 뿐 만 아니라 드넓은 인접 해양과 수많은 섬들을 소유하고 있다.

중국 연해에는 대만과 해남도를 비롯하여 5,000여개의 크고 작은 섬이 있으며, 중국의 지형은 서고동저의 형태로서 북쪽 고원지대는 해발 4,500미터의 면적에 230㎢나 되는 세계 최대의 고원을 이룬 티벳트가 자리 잡고 있다. 동쪽으로 내려오면서 고도 2,000-1,000 미터의 고원과 분지를 이루며, 그 다음으로는 500미터 미만의 동북 평원과 화북 평원이 자리 잡고 있다. 또한 이러한 서고동저의 지형은 중국인들로 하여금 모든 만물의 근원이서쪽에 있다고 믿게 하였다.

중국의 동쪽에는 발해, 황해, 동지나해, 남지나해에 임하고 서북에서 북으로는 중앙아시아, 시베리아, 서남으로는 인도, 남쪽으로는 미얀마, 인도, 동쪽으로는 시베리아와 북한을 접하고 있다.

중국인의 대부분은 한족이며, 이외에 몽고ㆍ회ㆍ장ㆍ묘ㆍ조선족 등 50 여개의 소수 민족들로 이루어졌다. 이들 소수 민족은 전체 인구의 약 6%에 불과하지만 이들이 분포되어있는 지역의 면적은 전체면적의 50~60%로 대부분 변경 지역에 있다.

태령산맥과 동쪽으로 향한 그 연장선을 경계로 해서 그 북쪽을 화북이라 하고, 그 남쪽을 화중, 화남이라 하며, 화북의 동북방이 동북지방이고, 서북방이 실크로드라 하는 서역이라 한다.

전통가구의 현대적 활용방안에 관한 연구

화중, 화남을 대표하는 큰 강은 장강이며, 또 다른 이름으로는 양자강이라 불리기도 한다. 총 길이는 5,800㎞로 나일강ㆍ아마존강ㆍ미시시피강에 이어 세계에서 네 번째 큰 강으로 중국의 중심이라 할 수 있다.

화북을 대표하는 중국의 제2의 큰 강은 황하이며, 이름 그대로 강의 색깔이 노랗기 때문에 지어진 이름이다. 총 길이는 4,800㎞이고, 세계 4대 문명의 하나로 손꼽히는 황하문명이 발생하여 석기시대로부터 송대에 이르기까지 문화 유적이 많이 남아 있다.

나. 기후적 특성

전통가구의 현대적 활용방안에 관한 연구

중국의 기후는 곳에 따라 많은 차이를 보이고 있다. 동북지방은 겨울이 길고 여름이 짧은 반면 남부지방인 해남도는 여름이 길고 겨울이 짧으며, 동부 연해 지방은 사계절이 분명하며 따뜻하고 습기가 많다.

남부의 해남도는 연평균 기온 24도의 아열대지역이며, 반면 북부의 흑룡강성은 연평균 기온이 4도의 냉대기후권에 속한다. 중국의 기후는 남북으로 큰 차이를 보이고 있으며, 또한 북서쪽의 청해, 티벳, 신강지역과 내몽고 지역은 고산기후 및 건조기후를 나타내고 있다.

이렇듯 중국은 아열대, 온대, 아한대 3대 기후를 포함하고 있으며, 중국의 주거 형태를 다양하게 만드는 이유 중 하나라 할 수 있다. 일반적으로 동부지역은 겨울에는 건조하고 차가운 북서풍이 불고 여름에는 덥고 습한 남동풍이 불며, 서북부의 내륙지역은 비가 적고 일교차가 심하여 계절풍의 영향을 받아 북부와 남부의 기온차가 겨울에는 크고 여름에는 적다.

중국의 강수량은 기온과 더불어 변화가 심하여 여름철에는 비가 집중적으로 내려 양자강과 황하 사이 지역은 연간 강수량이 50~60%이며, 황하 이북의 화북 지방과 내몽고 지방인 동부에서는 80%의 비가 내린다.

이와 같이 중국대륙은 폭넓은 기후차이와 강우량의 차이로 인해 다양한 수종 분포를 이루고 있으며 대륙성 기후로 인하여 사계절이 뚜렷한 기온차이는 선명하고 아름다운 문양을 가진 나무의 성장을 가능하게 하였다. 이러한 목재는 가구의 주재료로써 전통가구 발달에 있어 가장 큰 뒷받침이 되었으며, 또한 이러한 기후 조건으로 추운 지방에서는 일찍부터 항(炕 :온돌유사구조)과 같은 구조가 발달하여 독특한 가구양식을 이루는 요인이 되었다

2. 중국 전통가구의 역사적 배경

가. 명·청대의 사회상과 가구의 역사적 배경

송대의 중국은 거란족, 여진족, 몽고족 등 많은 이방민족으로 둘러싸여 있어서 현재의 중국과 비교하면 그 영토는 고작 절반 정도였다. 그러던 것이 원대(元代)를 거치면서 중국은 대제국으로 확대되었으며, 또한 명(明, 1368-1644)을 거쳐 청(淸, 1616-1912)에 이르는 과정에서 주변의 다양한 외래 민족들이 중국에 흡수되면서 문화적으로도 서로 융화하는 과정을 거쳤고, 영토의 측면에서도 오늘날과 같은 거대한 양상을 갖추게 되었다. 따라서 명·청대의 중국의 주거형식은 그 이전 시대와는 비교도 되지 않을 만큼 다양하고 풍부한 양상을 띤다. 이것은 중국의 끊임없는 영토확장과 민족의 흡수·통합의 결과라고 할 수 있지만, 동시에 사회 전체의 경제와 문화가 발전하고 성숙하면서 그 중심에 자리했던 주거문화의 발전이 자연스럽게 이어졌기 때문이기도 하다.

명대 중기에는 양자강 하류와 운하 연안에 많은 도시가 생기고 이곳에 상업이 번성하면서 여기저기에 부호의 저택들이 많이 건설되었는데, 이러한 양상은 청대에도 계속 되었다. 명·청대 부호들의 주택은 그 규모에 있어서 과거의 주택과는 비교도 되지 않을 것이 많았다. 당시의 상인들은 타지방에 나가 돈을 벌면 고향으로 돌아와 주택을 크고 성대하게 건축하는 것을 유행처럼 따랐다.

반면에 일반 서민의 생활은 매우 궁핍하고, 생활환경 또한 매우 열악하였다.

일부 지배 계층의 주거의 화려함과 사치함은 때론 도가 지나쳐 황제가 직접 검소의 실천을 행하기도 하였다.

17세기 중엽에 있었던 명·청 두 왕조의 흥망과 교체는 건축에서 일시적인 정체를 가져왔으나, 또다시 발전의 기운은 계속 되었다. 명·청대에 있어서의 큰 변화는, 여러 소수민족이 중국의 영토에 들어오면서 주거형식이 다양화한 것도 있지만, 한족의 주거형식에 여러 변화가 발생된 것 또한 중요한 일이었다. 말하자면, 목조가 주류를 이루던 한족의 주거형식은 동굴식 또는 토조(土造)와 목조의 혼합구조 등 새로운 구축방식이 다양하게 등장했다는 것이다. 송대의 기록에 의하면 섬서성과 하남성 일대의 동굴식 주택인 요동(窯洞)이 상당수 있었다고 하는데, 아마 그 수가 그리 많지는 않았을 것으로 보인다. 또한 명대 말기의 문헌에 의하면 당시 만리장성 부근에 상당수의 동굴식 주거가 있었고, 비슷한 시기에 하북, 산서, 섬서 등의 여러 성에서는 지주들이 이러한 동굴을 식량저장을 위한 창고로 사용했다고 한다. 따라서 동굴 주거가 발생한 시기는 명확하지 않으나, 명대 이전에 발생하여 청대에는 하남, 산서, 섬서, 감숙 등으로 그 지리적인 범위를 넓혀 가면서 매우 일반화했다고 보인다. 청대의 경우 몇 개의 횡혈이 서로 이어지는 복잡한 구조의 동굴 주택도 흔했고, 벽돌이나 돌로 쌓은 볼트 모양의 동굴 주택도 있었다. 이러한 과정을 거치면서 동굴식 주택은 목조식 이외의 또 하나의 새로운 주거유형을 만들어냈다. 잇달아 청대 강희(康熙) 연간(1662-1723)이후 복건, 광동 등 여러 성에 객가족에 의한 특이한 집합주택이 등장하면서 한족 주택의 새로운 형식으로 자리했다.

한족에 의한 목조건축의 발전과 사합원의 건축양식은 중국을 대표하는 주거형식으로 정착되었으나 결코 고착된 유형이 아니라 명·청대를 거쳐 진화, 개량되어 오면서 명대 이후 요동의 동굴식 주택 등 다양한 주거문화의 발전의 핵이 되었다.

나. 명·청시대. 가구 및 건축장식의 특징

조각·장식·색채·가구 등이 풍부하고 변화가 많은 것은 明·淸 시대 건축에 있어서 주요한 성과의 하나다. 봉건제 경제의 고도 발전과 함께 각 지방 ·각 민족의 건축의 질은 보편적으로 향상하여 건축 조작이나 장식 등의 공예도 고도의 수준에 도달했다.

전반적인 경향에서 보면, 건축은 이 500년 전후의 기간에 평면, 구조, 기본적인 외관 등의 측면에 있어서 차츰 정형화의 방향으로 나아갔다. 특히 목조 계통의 건축은 청대중기가 되어 상당히 숙달된 단계에 이르렀으며, 건축 조작 및 장식에도 일반적으로 이와 같은 경향에 띤 변화가 있었다. 건축활동이 번성했던 명대초기와 청대중기 두 시기를 비교하면, 건축 및 가구 등의 구도와 기법에서 보면 명대 쪽의 기법은 오히려 정밀, 구도는 오히려 간소, 문양은 오히려 약동적인 한편 다채로웠음에 대해 청대의 기법은 전체적 효과를 중시하는 반면, 기법적으로는 조잡하고 구도는 규격화 정형화로 나아가 문양에도 새로운 창작은 거의 없고 모든 것은 정체하는 경향이었다.

장식 수법이 한층 숙달되면서 다음과 같은 특징이 나타났다. 첫번째는 장식 효과가 주로 재료와 장식의 종합적인 처리와 다양한 조합에 의하고 있다는 것이다. 즉 다양한 재료와 색체에 의한 화려함 보다는, 구성요소의 조합미가 주는 조형미를 들 수 있다. 북경의 궁전과 같은 몇 개의 커다란 건축군을 보면, 유리 기와는 黃色과 綠色의 2색에 지나지 않으며(극히 드물게 黑이나 紫色도 사용되지만) 기와도 기본적으로는 같은 모양이며, 석조 난간은 1~2종류, 목조 난간은 2~3종류, 보장식도 1~2종류에 지나지 않고, 입구나 창의 격자 문양도 몇 종류만 있으며, 그 밖의 부재의 종류도 극히 적음에도 불구하고 오히려 다채로운 예술적 효과를 볼 수 있는데, 이는 구성요소의 조합미가 이루는 효과라 하겠다. 두번째는 수많은 지방의 장식 등에 모두 「세트」가 출현한 것이다. 외부의 장식에서는 보장식, 난간, 반복되는 도리를 직접 받치는 첨차[雀簪] 문양에서 채색, 문짝·창에 이르기까지 각각 한 세트로 된 적절한 배치 수법이 행하여졌으며 내부의 장식이나 가구배치에서도 마찬가지였다. 많은 건축물에서, 색채나 장식 가구의 배치나 소품의 진열까지 한 세트로 된 유기적인 통합을 형성하고 있다. 또한 남방의 정원이나 커다란 주택은 실내로부터 실외까지 모두 하나의 통합된 장식 수법을 사용하고 있다. 유기적인 조합이나, 「세트」를 이루는 배치는 중국고대의 건축 장식에 있어서 매우 두드러진 특징이다. 셋째로, 건축에 색을 풍부하게 사용하는 것은 중국 건축 예술의 가장 커다란 특징 중 하나이다. 많은 건축이 강열한 대조를 이루는 색채를 사용하고 있다. 명·청시대가 되어 건축의 색채는 한층 더 하게 되고, 색채 처리 면에서도 다양한 내용을 나타내기 위하여 상당히 숙달된 수많은 수법이 완성되었다. 반대색, 보색, 원색, 흑·백·금색 등의 다루기 힘든 색채에 모두 숙달된 처리를 할 수 있게 되었다. 그것과 동시에 각 지방, 각 민족, 각종 유형의 차이에 따라 각각 더한층 다채로운 색채가 사용되었다.

3. 중국의 주거양식과 공간특성

가. 중국주거의 원형, 사합원

북경 사합원의 공간구성은 매우 명쾌하다. 사합원이란 용어 자체가 네 동의 건물이 중정을 둘러싼다는 의미이므로, 口자형의 공간구성이 그 기본형식이다. 네 동의 건물 중에서 가장 안쪽에 있으면서 남쪽에 면하는 건물이 정방(正房), 동·서 좌우의 건물이 상방(廂房), 그리고 길에 면하는 바깥쪽의 건물이 도방(倒房) 또는 도좌방(倒座房)이다. 이 중에서 정방이 가장 중요한 건물인데, 이곳은 주택에서 최연장자가 거처하는 곳이다. 정방의 중앙에 있는 공간이 조상의 위패를 모시는 조당(祖堂)으로서, 가족의 거실로 사용되는 동시에 주택의 실질적·상징적 중심이 된다. 대가족제도를 유지했던 중국에서, 정방은 당연히 조부와 조모가 거처하는 공간이었다. 상방은 주로 아들 가족의 거주공간으로 사용되며, 도방은 손님과 하인의 거처와 창고 등으로 사용된다.  중앙에 자리하는 마당 즉 중정을 화북지방에서는 원자(院子)라고 부른다. 남방에서는 주택의 중정을 천정(天井)이라고 부르는데, 원자와 천정은 그 형식에 있어서 상당한 차이가 있다. 어쨌든 이러한 공간구성이 북경 사합원의 기본 구성이다.

손세관, 깊게 본 중국의 주택. 下, P36

그림  사합원의 기본적 공간 구성 (출처. 깊게 본 중국의 주택.하 P36)

나. 휘주의 주택

휘주에 남아있는 전통적인 주택은 명·청대의 사회·경제적 상황과 문화의식을 잘 반영하고 있는 것으로서, 북경의 사합원과 함께 중국의 주거문화를 대표하고 있다.

휘주의 지리적인 특징은 ‘지협인조(地狹人稠)’라는 말로 요약된다. 즉 ‘땅은 좁고 사람은 많다’는 것인데, 산지와 구릉지로 이루어진 지역에 많은 사람들이 이주하면서 생긴 현상이다.

‘휘파(徽派)민거’ 또는 ‘휘주민거’라고 부르는데, 이는 강남을 대표하는 주거형식이다. 휘주의 주택은 화북지방의 사합원과 전반적으로 유사한 형식을 가지면서도 강남 특유의 공간구조를 취하는 독자성을 지닌다.

내향적·폐쇄적·방어적·위계적·축적 공간구성이 중국주택의 특징이라고 한다면, 휘주의 주택은 이러한 성격을 모두 갖고 있다. 따라서 휘주의 전통주택은 중국의 주택이 지니는 보편적인 성격을 공유한다. 그러나 휘주의 주택은 그 공간구성과 외관적인 성격에 있어서 매우 특이하면서 동시에 독자적이다.

그림 . 휘주주택의 공간구성 (출처. 위의 책 P83)

휘주의 주택에서 파악되는 특이성과 독자성은 우선 ‘천정(天井)’이라고 불리는 공간에 그 근거를 두고 있다. 천정은 두 층 또는 세 층 규모의 건물로 둘러싸인 일종의 광정(光井)으로서, 실내화한 중정이라고 설명할 수 있다. ‘하늘이 담겨 있는 우물’이라는 의미의 이 공간은 중국 강남의 주거문화를 특징짓는 요소이다. 천정은 북방 사합원의 중정 즉 원자(院子)의 성격을 그대로 지니고 있지만, 더욱 응축된 공간으로서 내부 공간과 외부 공간의 성격을 동시에 갖는다. 또한 천정은 여름에 발생되는 심한 기온의 일교차를 극복하는 동시에 주택 내부에 적절한 채광을 확보하게 하는 매우 합리적인 환경장치이기도 하다.

다. 황토고원과 동굴 주거 요동

중국대륙의 북서부를 이루는 내륙지역, 다시 말해서 긴 황하의 중·하류주변지역은 거대한 황토지대이다. 이 거대한 황토 고원에는 중국 특유의 동굴 주거가 여러 가지 형태로 밀집되어서 독특한 주거문화를 형성하고 있다. 중국에서는 ‘야오동’이라고 부르고 한자로는 요동(窯洞)이라고 쓰는 이 중국  고유의 동굴 주거는, 비단 중국뿐만이 아니고 전세계적으로도 매우 독특한 형식과 주거문화로 평가받고 있다.

요동은 크게 두 가지 형식으로 구분된다. 첫째, 황토층이 침식되면서 형성된 라연의 절벽에 수평으로 된 굴인 횡혈(橫穴)을 파서 주거공간을 형성하는 방식으로, 이를 고산식(靠山式, cliffleaning type), 고애식(靠崖式) 또는 산현식(山懸式) 요동이라 부른다. 둘째는, 평탄한 대지에 사변형의 굴인 수혈(竪穴)을 파서 인공의 절벽을 만든 후 그 내부에 횡혈을 파서 주거공간을 형성하는 방식인데 이를 하침식(下沈式, sunken court type) 요동이라 부른다.

그림 . 사합원과 유사한 구조를 보이는 하침식 요동의 공간구성

그림 . 테라스형 집합 주택을 이루는 고산식 요동의 사례(산서성 하곡현

요동 주거는 마당 또는 중정을 중심으로 몇 개의 횡혈이 모여서 성립된다. 즉 횡혈은 주택을 구성하는 단위공간이라고 할 수 있는데, 그 쓰임새는 침실, 부엌, 창고, 축사, 변소 등으로 다양하다. 생활공간의 단위가 되는 횡혈의 크기는 폭 3미터 내외, 높이 3미터 내외, 그리고 길이 8미터 내외가 보통이다. 입구에는 폭 1미터 내외의 나무문이 달려있는데 안팎으로 열리는 경우도 있고 한쪽으로만 열리는 경우도 있다. 요동에는 가스와 수도의 공급은 물론 없지만 전기공급은 대부분 이루어지고 있다. 횡혈 내부에서 시설 및 가구(家具)의 배열은 대부분의 요동 주거에서 서로 비슷하여 하나의 일정한 패턴을 갖는다고 할 수 있다.

대부분의 경우 횡혈의 쓰임새는 복합적이어서 한 공간에 여러 기능이 수용되는 것이 보통이다. 특히 침실과 부엌 및 식당은 여러 세대가 같이 사용되는 경우가 많다.

라. 복건성의 토루

중국 복건성의 남서부에는 토루(土樓)라고 불리는 특이한 집합주택이 자리하고 있다. 한족의 하나인 객가인(客家人)에 의해 건축된 토루는 원형과 방형 즉 동그란 형태와 사각형의 두 종류의 형태가 있다. 이 토루는 독특한 사회구조와 생활관습을 유지하는 객가인의 생활과 역사를 반영하는 주거형식으로서, 오래 전부터 이어져 내려온 중국 전통주택의 한 형식이다. 객가인이 한족이므로 이 주거형식은 당연히 북방의 사합원을 그 형식적 규범으로 삼는다. 그러나 토루는 중국 민가 중에서도 매우 독자적인 구성을 지니고 있을 뿐만 아니라, 전 세계적으로도 보기 드문 특이한 형식의 주거라고 할 수 있다.

복건성에 위치하고 있는 토루의 형태적인 특성은 다음과 같이 몇 가지로 요약된다.

· 일족(一族)인 대가족을 수용하는 거대한 집합주택이다.

· 한 변(邊) 또는 직경이 40-60미터에 달하는 방형 또는 원형의 평면을 갖는다.

· 세 층 내지 다섯 층 높이 건물의 외벽은 전부 토벽(土壁)으로 구축되었다.

· 외벽이 흙으로 구축된 반면, 벽의 안쪽 즉 내부는 모두 나무로 구축되어 있다. 따라서 흙구조와 목구조가 결합된 구조체이다.

· 건물의 중앙에는 대가족 전체의 제반 행사에 사용되는 공유공간이 마련되어 있다. 여기서 공유공간은 조당과 중정을 말한다.

· 내부에는 벽을 따라서 일정한 형식의 생활공간이 정연하게 배열되어 있다.

· 생활공간 내부에서, 일층에는 부엌·식당 등 공적 공간, 이층에는 창고, 그리고 삼층이상에는 사적 공간인 와실이 위치한다.

· 학당(學堂)이나 부속실 등이 외부에 연이어 설치되어 있다.

토루에 거주하는 객가인은 기본적으로 동성동족(同姓同族)으로 일가를 이룬다. 객가인의 대가족은 대체적으로 이삼백 명으로 이루어지는데, 수십 개의 가족단위가 각각의 독립된 공간을 소유하는 동시에 공동의 공간을 갖는다.

토루 중에서 특징적인 것은 원형 토루인데, 주로 복건성 지역에 분포하며, 환형(環形)토루 라고도 한다. 보통 직경이 40-60미터 높이 12-13미터의 둥근 외벽을 갖은 원통의 형상이다. 원형의 벽을 따라 수많은 생활공간 즉 거실과 부엌, 식당, 창고, 등이 줄을 지어 배열된다. 상층부 생활공간의 전면에는 주마랑 이라고 부르는 회랑 즉 복도가 있다. 건물의 중앙에는 커다란 중정 즉 천정이 있고 그 중앙에 원형의 건물이 자리하는 것이 보통이다.

이 원형 건물의 후면부에 위치한 공간이 조당으로서 주택의 상징적, 실질적 중심이 되는 곳이다. 조당은 증축선상에 놓이며 맞은편에 순청 즉 대문이 위치한다. 원형 토루의 사례 중, 복건성 영정현에 위치한 승계루(承啓樓)는 직경이 61미터로 4층 규모의 외주부(外周部)에만 256개의 생활공간이 있는 대규모이다.

그림 . 토루의사례 : 승계류의공간

그림 . 승계루의 1층 평면도

기하학적 형태의 단순한 벽으로 둘러싸인 객가인의 토루는 하나의 소우주이다. 몇 겹으로 둘러싸인 공간의 개실군(個室群)이 중정을 둘러싸고 자리하는데 각각의 개별공간은 그 크기나 구조의 모든 면에서 완벽하게 평등하게 구성되어 있어 종족의 일체감을 지각하는 동시에 개체의 존재가 편안해짐을 느끼게 된다. 토루는 또한 사방의 벽구조, 중앙축의 명확함, 천정 즉 중정의 설계, 공간의 분명한 위계성 등의 면에서 중국주택의 원형 외 사합원의 특징을 보여준다.

4. 중국 전통가구의 생활양식과 가구

명·청시대에는 수공업의 발전과 함께 가구와 함께 다양한 진열품이 발전을 이루었다.

역사적으로 보면 명대의 가구는, 구조적으로는 가공이 비교적 치밀하며 예를 들어 각재는 거의 사용하지 않고 단면이 원형이나 타원형인 재료를 이용하였다. 이것은 장부와 장부 구멍을 제작하는데 상당히 고도의 기술을 요구하였다. 조형적으로는 비례를 이룬 미관에 주목하는 한편 과다한 장식에는 주목하지 않았기 때문에 역학적으로 유리한 효과를 얻을 수 있었다. 淸代의  家具는 조각 장식이 점차 많아져 화려한 효과를 갖추었다.

실내 가구의 배치에는 일정한 수법이 있는데 첫째로는 대칭적인 배치이다. 일반적으로 거실의 중앙 칸에는 장궤(長几)와 커다란 조안(條案)을둔다. 손님용 거실에는 대신에 항(炕)을 두고 그 양측에는 반드시 대칭적으로 의자와 차를 마시는 작은 테이블을 둔다. 만약 정면 폭 3칸의 큰 거실이라면, 측면으로는 방탁(方卓)과 고(靠)를 마찬가지로 배치시킨다. 둘째, 가구는 세트를 이루는 것으로 짝(對)을 基本으로 한다. 일등이의(一凳二椅 : 하나의 스톨과 두개의 의자)가 1조의 가구 단위로 된다. 이궤사의 (二几四椅 : 두개의 작은 테이블과 4개의 의자), 이것을 반당(半堂)이라 부르고 사궤팔의(四几八椅 : 네 개의 작은 테이블과 8개의 의자)의 것을 정당(整堂)이라 부른다. 탁자에는 원탁과 방탁 두종류가 있으며, 방넓이에 따라 적절하게 활용된다. 금탁(琴卓)과 원탁은 응접실이나 서재에 어울리고, 화가(花架), 서안(書案:방형의책상), 진열장 등과 조합하여 두면 일종의 서재다운 분위기가 형성된다. 침실[臥室]은 침대와 온돌을 주로하고 그 밖의 가구는 대칭이 되도록 배치하였다. 궁전 내에서는 일반적으로 보좌(寶座)가 중앙에 놓인다. 보좌가 건물의 가장 중요한 위치를 차지하며 반드시 좌태나 병풍 등을 맞추어 배치하였으며, 그와 같이하여 황제의 고귀함과 권위를 표시하였다. 이외에 등, 화로 및 기타 진열품도 대칭형 배치를 강하게 추구하고 있다.

길고 작은 테이블

장방형 테이블

정방형의 큰 테이블

등받이가 있는 의자

5. 중국전통가구의세부요소

가. 재료

중국가구의 재료로는 목재와 기타 대리석, 선승(線繩), 등(藤)등 다양한 재료를 사용하였으며, 목재의 상당 부분은 수입을 하였고, 동남아에서 수입된 목재는 종류와 수종(樹種)이 다양하여 가구 발전에 큰 기여를 하였다. 명·청대 가구의 주재료는 경질목재(硬質木材)로 명대에는 황화리(黃花梨)를 청대에는 자단(紫檀)을 최고로 여겼다. 목재는 경질목재(硬質木材)와 비경질목재(非硬質木材)가 있으며, 경질목재는 세목(細木) 이라 하고, 비경질목재는 시목(柴木)이라 하기도 한다.

경질목재로는 자단(紫檀), 화리목(化梨木), 계시목(鷄翅木), 철력목(鐵力木), 오목(烏木), 홍목(紅木)등이 있으며, 비경질목재로는 거목(據木), 화목(樺木), 남목(楠木)등이 있다.

중국에서는 각 지방 취향에 따라 목재를 사용하였고, 고급목재로는 자단(紫檀), 화리목(化梨木), 계시목(鷄翅木), 홍목(紅木)등이 있다.

논문 : 국문리, 중국 가구 변천에 관한연구, 홍익대학교, 2001. P77

(1) 자단( 檀 ; Prplle sandal wood)

자단은 비열대우림(非熱代雨林)지역인 베트남, 필리핀, 남인도등 남양군도(南洋郡島)에서 생산하는 나무로, 중국은 광동(廣東), 광서(廣西), 운남(雲南)등지에서 생산한다. 목재 중에서 가장 비싼 나무의 하나로 가구(家具)와 악기(樂器)를 제작하는데 주로 사용하였다. 견고하고 붉은빛이 섞인 검은 나무 결에 갈색과 보라색을 띄고 있어 변화무쌍하며, 주로 광택을 내어 사용한다. 경질목재인 자단(紫檀)은 재질이 가장 치밀(緻密)하여 잘 휘지않고 무거운 목재로써 주로 고위관직들이 사용하는 가구에 사용하였다.

(2) 화리목(化梨木 ; Red sandal wood)

화리목(化梨木)은 열대(熱帶)와 아열대(亞熱帶)에서 자라는 나무로 중국에서는 운남(雲南), 절강(浙江), 호북(湖北)등지에서 생산한다. 하지만 공급이 부족하여, 태국, 인도, 말레이시아에서 수입을 하였으며, 화리목은 황화리(黃花梨)와 신화리(新花梨)두 종류로 나눌 수 있다. 황화리(黃花梨)는 치밀하고 견고하며 연한 붉은 빛에 황색이 곁들인 색상으로 향내음이 있고 무늬(문리:紋理)가 아름답다. 명대의 고급가구들은 황화리로 가구를 제작하였으며, 자단에 이어 두 번째로 귀중한 나무이다. 반면 신화리는 황화리에 비해 치밀하지 못하나 색상이 비슷하여 청대에 많이 사용되어졌다.

(3) 계시목(鷄翅木 ;Ormsiahosiei)

계시목(鷄翅木)은 마호가니의 일종으로 인도에서 생산하며, 중국에서는 광동(廣東)과 해남도(海南島)에서 생산하는 나무로 나무 결이 닭의 깃털과 같다하여 닭 날개 나무라고 하기도 한다. 재질이 굵고 강하여 내구성이 뛰어나 작업이 쉬우며, 색상은 회갈색으로 시간이 지나면 짙은 갈색으로 변한다. 명대부터 사용하게된 계시목은 청대중기에 들어 공급 부족으로 소품에 주로 사용되었다.

(4) 철력목(鐵力木 ;Mesuaferrea)

철력목(鐵力木), 철률목(鐵栗木), 철리목(鐵梨木)이라 하기도 한다. 인도, 스리랑카 등지에서 생산하며, 중국에서는 운남(雲南), 광서(廣西)지방에서 생산한다. 경질목재 중에서 가장 크며, 가격은 저렴한 목재이다. 이러한 특성으로 명·청 시대 모두 대형가구를 제작하는데 많이 사용하였고 목질은 견고하며 계시목과 비슷한 색상을 띄며, 문리(紋理) 또한 비슷하지만 약간 거칠고 굵다.

(5) 오목(烏木 ; Ebony)

오목(烏木)은 운남(雲南), 광동(廣東), 해남도(海南島)에서 생산하는 나무로, 매우 귀중한 나무이다. 목재의 성격은 자단과 비슷하며, 색상은 흑색으로 마치 흑칠(黑漆)을 한 듯한 느낌을 주며, 문리 또한 얇고 가늘어 보이지 않는다. 명·청대 모두 오목으로 제작된 가구의 수량이 적어 보존되어 온 것이 거의없다.

(6) 홍목(紅木 ; Adenantherapavonina)

홍목(紅木)은 청대후반에 주로 사용하던 목재로 명대와 청초에는 흔하지 않은 목재이다. 인도에서 생산하며, 중국은 광동(廣東), 운남(雲南), 해남도(海南島)에서 생산한다. 홍목은 산지목(酸枝木)이라 하기도 하며, 색상은 연한 붉은 색이지만 시간이 지나면 검붉은 색으로 변하고, 목질 또한 견고하다. 청대후반에 고급가구는 홍복을 많이 사용하였으며, 명대의 화리목(花梨木) 가구를 모방(模倣)하여 제작하는데 많이 쓰이기도 한다.

(7) 거목(據木 ; Zelkova)

거목(據木)은 강소(江蘇), 절강(浙江)에서 생산하는 나무로 비경질목재(非硬質木材)에 속한다. 거목(倨木)이라 쓰이기도 하며, 가구로써는 매우 좋은 목재이다. 민간가구(民間家具)를 제작하는데 사용하며, 문리가 아름답고 색상은 화리목(花梨木)과 미슷하며, 거목으로 제작된 가구는 거의 명대에 제작된 것이다.

(8) 화목(樺木 ; Betuladavurica)

화목(樺木)은 중국 동북(東北)지방과 서북(西北)지방에서 생산되는 나무로 백화(白樺)와 풍화(楓樺) 두 종류로 백화는 황백색이고 풍화는 암갈색(暗褐色)이다. 문리가 세밀하며, 향기가 있으며, 제작이 쉬운 목재이다. 또한 부리를 사용하기도 하며, 화목 이외에도 뿌리를 사용하는 나무로는 남목(楠木)이 있다. 이러한 뿌리로 된 목재는 영목(?木)이라 하기도 한다.

(9) 남목(楠木 ; Phoebe sheareri)

남목(楠木)은 호북(湖北), 호남(湖南), 운남(雲南), 광서(廣西), 사천(四川)에서 생산하는 나무로, 녹나무의 일종이다. 나무 결이 작고 고우며, 향이 있고 내구성이 강한 나무이다. 문리(紋理)에 금빛이 있는게 가장 고급으로 건축자제로 도 많이 사용하였다고 한다.

(10) 치장재료(治裝材料)

의자를 제작하는데 있어 목재 의외에도 다른 재료를 사용하는데 가장 많이 사용되는 재료로는 대리석(大理石), 선승(線繩), 등(藤)등이 있다. 대리석은 주로 의자 등판의 장식을 하기 위한 재료로 사용하였으며, 대리석이외에도 녹석(綠石)도 있다. 선승(線繩)과 등(藤)은 의자의 좌판을 엮는 재료로 쓰며, 교올(交兀)이나 교의(交椅)에 주로 사용하였다.

나. 구조

논문 : 국문리, 중국 가구 변천에 관한연구, 홍익대학교, 2001. P.5

중국가구의 구조(構造)는 유구(悠久)한 전통과 우수함을 자랑한다. 송(宋)대에 이르러 가구의 구조는 성숙기에 접어들었고 명·청대를 거치면서 개혁과 발전을 거듭하였다. 중국가구의 구조는 역학(力學)원리에도 타당하며 미관상(美觀上)에도 전혀 손색이 없다. 이러한 구조는 어떠한 가구를 막론하고 양대 모두 공통적인 특징을 가졌으며, 특징으로는 입목(立木)을 지주(支柱)호 사용하였고 횡목(橫木)은 연결(連結)재로 사용하였다. 가구의 평면, 가로 세로의 단면 모두 대부분 방형(方形)을 이루었으며, 그 다음으로는 금속(金屬) 못을 사용하지 않았고, 아교(阿膠) 또한 거의 사용하지 않았다.

가구 제작에 있어 판재와 판재, 골재와 골재 또는 판재와 골재를 연결하는 것이 가구를 이루는데 핵심이 된다, 의자를 제작하는데 있어 목재의 결구는 크게 기본결합으로 이음기법과 짜임기법으로 나눌 수 있으며, 조립하는데 있어서는 다리상부의 결합과 다리하부의 결합을 이루고 결구법 또한 다양하다, 이는 다른 가구에 있어서도 만찬가지이며 이음기법은 주로 판을 넓히는 경우에 많이 사용하였고, 짜임기법은 골재와 골재, 판재와 골재의 구조를 형성하는데 사용하였다. 또한 이러한 결구법(結構法)은 가구가 자연의 영향에도 불구하고 견고함을 지키는데 큰 역할을 한다.

(1)기본결합(基本結合)

목재의 넓이는 제한이 있기 때문에 두판 또는 여러 판을 연결하여 사용하는 것이 기본이다. 하지만 목재를 연결하여 사용하는데 있어서 이러한 이유뿐만 아니라 통판으로 사용헀을 경우 잘 휘고 뒤틀려 이것을 방지하는데도 큰 효과가 있다,

두꺼운 판과 얇은 판의 이음법은 다소 차이가 있으며, 이는 얇은 판이 두꺼운 판에 비해 쉽게 틀어지기 때문이다. 두꺼운 판은 어떠한 이음법도 필요 없이 아교로 붙여 사용한 평구교합(平口膠合)과 숨은 촉을 사용한 재직순병합 (栽直倂合)과 재주마소병합(載走馬銷倂合), 나비모양의 촉을 이용하여 잇는 감은정순병합(嵌銀錠_倂合)을 사용하였다, 얇은 판재는 턱을 내서 끼여 잇는 방법으로 용봉순병합(龍鳳_倂合)과 띠를 대는 가천대병합(加穿帶倂合)을 사용하였다.

사출두관모의(四出頭官帽椅)의 탑뇌(搭腦), 팔걸이, 또는 모든 의자의 다리를 연결하는 족대 등에 많이 쓰이는 방법은 정자형결합(丁字形結合)이라 한다. 정자형 결합은 상황에 따라 여러 종류의 방법이 있으며, 횡재(橫材)와 수재(豎材)의 두께가 같을 경우와 틀릴 경우 또는 각재(角材)와 원재(圓材)가 결합될 때이다. 이러한 결합 방법들은 크게 다르지 않지만 조금씩 차이를 찾을 수 있다.

남관모의(南官帽椅), 매괴의(?塊椅)등의 탑뇌, 팔걸이 등은 겉으로는 주로 45° 연귀짜임의 형태를 하고 있으며, 이러한 결합은 각결합이라 하며, 태사의의 등받이에도 이러한 각결합을 사용하여 엮는 방법은 다른 이름으로 교차법이라 한다.

권의의 등받이나 좌돈, 원등의 좌판 혹은 탁니 등에 많이 쓰이는 결합법을 호형만재결합이라 한다. 이러한 방법은 중국 의자에 많이 사용되는 방법으로 의자 발전에 있어 큰 영향을 미쳤다.

모든 사각 등자류와 의자류에 좌판은 찬변타조장판기법을 사용하였으며, 사방에 테를 둘러 얇은 판을 두껍게 사용 할 수 있었고, 기후 변화에도 상관없이 모양을 유지 할 수 있어 여러 방면에 사용 되었다. 또한 좌돈과 원등역시 호형만재결합법만 사용 한 것이 아니라 찬변타조장판법 또한 사용하였다.

(2) 다리 상부의 결합

다리상부의 결합이란 좌판과 다리기둥, 풍형등을 연결하는 기법으로 주로 좌구 상체에 대한 결합방법이다. 무속요, 유속요, 사면평, 협두, 삽견은 올등에서 주로 사용되며, 다른 의자에도 사용되는 중요한 기법이다.

패왕정 결구는 좌판과 다리기둥을 연결하는 방법으로 방등에서 자주 사용되는 방법이다. 일방적인 부수의는 좌판을 조립하는 과정에서 홈을 따서 끼워 넣는 방법을 주로 사용한다. 풍혈은 촉을 끼워 좌판 하부에 연결을 하며, 전체적으로 홈을 따서 끼워 넣은 방법 또한 많이 사용된다.

(3) 다리 하부의 결합

다리하부의 결합은 주로 탁니와 결자화기법을 사용한다. 탁니는 의자 다리를 다시 한번 연결함으로서 더욱 견고하게 해주는 방법으로 장식적이 측면에서도 의자를 돋보이게 한다, 원등과 방등 모두 이 상법을 많이 사용하며 다른 가구에서도 많이 사용된다.

결자화 역시 장식적인 면과 견고성을 갖출 수 있는 방법으로 방등과 탁자에 많이 쓰여진다.

다. 문양  및 금구장식

(1)문양

문양은 가구 장식표현에 있어 없어서는 안되며, 많은 의미를 지니고 있다. 명·청대 문양의 종류는 크게 차이를 찾을 수 없으나, 청대에 들어 길상도안(吉祥圖案)을 사용하였다.

문양의 종류로는 크게 금수(禽獸), 화초(花草), 산수(山水), 신화고사(神話故事), 기하(幾何), 그리고 길상도안(吉祥圖案)이 있다.

·금수문(禽獸紋)

동물은 문양에 있어 많은 종류가 있으며, 전설 속의 동물과 현실 속의 동물이 있다. 대표적인 문양으로는 용문(龍紋),봉문(鳳紋), 리문(?紋)등이 있으며, 사자(獅子), 말(馬), 기린(麒麟)등 다양한 문양이 있다. 동물중에 가장 많은 문양은 12지신이다.

용문(龍紋)은 명·청대 궁중가구에서 볼 수 있는 문양으로 황제가 사용하는 보좌와 병풍(屛風)에서 특히 많이 볼 수 있으며, 용의 종류는 많지만 대표적인 문양으로는 괴자룡(拐子龍)과 초룡(草龍)이 있으며, 봉문(鳳紋)은 황실의 여인들을 상징하는 문양으로 용문(龍紋)과 더불어 많이 사용을 하였고, 혼례(婚禮)를 축하하는 의미도 있다. 리문(?紋)또한 용, 봉과 더불어 전설 속의 동물로 수신(水神)으로 용과 비슷한 의미로 고위관직들의 가구에서 보여 지는 문양이다.

· 화초(花草)

화초(花草) 또한 가구에서 많이 보이는 문양으로 꽃과 더불어 새를 등장시키며, 모란(牧丹), 하화(荷花), 영지(靈芝), 권초(卷草)등이 있다. 이러한 문양은 주로 가정에서 사용하는 가구에서 많이 보여 지며, 특히 여성용 가구에서 많이 볼 수 있다.

목단(木壇)은 부귀(富貴) 상징하며 주로 나전상감(螺鈿象嵌)과 금칠(金漆)에 사용된다. 하화(荷花)의 또 다른 이름으로는 연화(蓮花)이며, 불교적 상징으로 순결(純潔)을 상징하여, 길상(吉祥)의 의미를 지닌다.

영지(靈芝)문은 부귀영화를(富貴榮華) 의미하는 문양으로 장생(長生)의 상징이며, 권초(卷草) 당초문과 같은 종류로 생동적인 형태로 부(富)를 상징한다. 또 다른 문양으로는 매화(梅花)문, 죽자(竹子)문, 수피(樹皮)문 등이 있다.

· 산수(山水)

산수문(山水紋)은 칠 가구에서 주로 사용하는 문양으로 유명한 화가들의 그림을 주로 사용하며, 청대 초기에는 칠 가구 보다 경질(硬質)목재에 조각을 많이 하였고 그림처럼 원근법 처리를 하여 생동감 있고 귀족스러운 가구를 표현하여, 고위관직의 가구에 주로 사용한다.

· 신화고사(神話故事)

신화고사(神話故事)에는 사람이 빠지지 않아 인물문(人物紋)이라고도 하며, 주로 사대부(士大夫)의 가구에서 많이 사용한다. 설화나 역사적 사건을 주제로 삼았으며, 산수문(山水紋)처럼 원근법을 사용하여 생동감 있게 표현하였다. 가장 많이 등장하는 문양으로는 팔선도(八仙圖)가 있으며, 장수(長壽)의미를 지닌다.

· 기하문(畿何紋)

기하문은 종교적 의미가 강한 문양으로 卍자문, 회문(回紋)등이 있다. 신분계급에 상관없이 모든 가구에서 보여 지는 문양으로 卍자문은 불교의 의미로써 길상(吉祥), 만복(萬福), 만수(萬壽)의 의미이며, 회문(回紋)은 주로 다리에 새기는 문양으로 청대 가구에 많이 사용되었으며, 풍부(豊富)한 느낌을 준다.

· 길상도안(吉祥圖案)

길상도안(吉祥圖案)은 청대에서만 보여지는 문양으로 매우 화려하며, 다복(多福), 만수(萬壽), 부귀(富貴), 다자(多子)를 의미하며, 동물이나 글을 이용하여 도안화하는 문양이다. 길상도안 또한 신분계급에 상관없이 모든 가구에서 사용되어 지며, 특히 복(福), 수(壽)와 같은 글자들을 도안(圖案)화 하여 조각을 하였다.

(2) 금구장식

중국의 금속공들은 오랜 세월 계승되어오는 동안 얻어진 경험과 정련된 기술로 백동이나 놋쇠를 망치로 두드려 종이처럼 얇은 박편이 되도록 한 다음 형태(形態)에 따라 오려서 금구장식을 만들었다. 이렇듯 박편을 두드려 만들기 때문에 금속장식의 뒷면은 거칠고 울퉁불퉁 하였다. 완성된 금구장식은 같은 재료로 만든 쐐기나 못에 의해 가구에 튼튼하게 부착된다.

가구의 금속장식들은 대체로 자물쇠 앞바탕의 형태에 맞춰 경첩과 손잡이(고리) 띠장식 등이 결정된다.

그림 . 자물쇠 앞바탕

자물쇠 앞바탕의 형태는 변형 사엽좌문(四葉座紋), 육엽(六葉), 팔엽화문(八葉花紋)과 방형(方形)이 주류를 이룬다. 이들은 모두 한대(漢代)부터 있었던 문양들이다.

·경첩

동일한 가구에서의 경첩의 형태는 보통 자물쇠 앞바탕의 형태와 같으며 자물쇠 앞바탕의 축소된 모습을 보인다. 가장 많은 형태는 자물쇠 앞바탕의 경우처럼 변형 사엽좌문(四葉座紋), 육엽(六葉), 팔엽화문(八葉花紋), 원형(圓形), 방형(方形)이 있다.

· 고리

고리의 문양에는 개나리문양, 호리병문양, 환형, 안문형(眼紋形)과 이밖에 방형(方形), 수원형(髓圓形)이 있다.

개나리는 중국 고유의 꽃으로 단순한 네잎의 귀여운 형태를 중국인들이 일찍부터 장식문양에 이용했던 것으로 보인다. 호리병형은 중국인들이 의복 단추나 귀걸이의 장식문양으로 즐겨 썼던 문양으로 실제의 호리병박도 염주(念珠)에 걸어 특별한 운치를 즐겼다고 한다. 환형고리는 한대(漢代)이래로 도자기나 청동기의 손잡이 장식으로 많이 이용된 형태로 중국인들은 이 환형을 무척 즐겨 썼던 것 같다.

그림 . 고리장식

·들쇠

들쇠의 형태에는 환형, 방형, 반달형이 있으며 C형이 가장 많이 쓰여진 형태로서 이들도 각기 화형이나 방형, 마름모형, 박쥐형 등의 들쇠 앞바탕 장식을 달아 조화를 이루고 있다. 들쇠 앞바탕에서 보이는 박쥐문은 언제부터 쓰였는지 정확히는 모르나 청대(淸代) 가구장식에 많이 쓰였고 우리나라에서도 조선시대부터 가구에 쓰이기 시작한 문양이다.

중국의 명대(明代) 후기부터 쓰여진 문양의 대부분이 길상적인 의미를 내포하고 있으며 박쥐는 번식력이 강한 동물이므로 많은 자손을 바라는 의미의 길상적인 문양으로 쓰여진 것으로 보인다.

그림 . 들쇠장식

라. 마감

중국은 일찍이 칠(漆)가구의 발달로 여러 종류의 칠이 발달하였으며, 명대에는 소칠(素漆), 채칠(彩漆), 척홍(剔紅)을 주로 사용하였고, 청대에 들어서는 좀더 화려한 전칠(塡漆), 나전(螺鈿), 묘금(描金)을 사용하였다. 특히 척홍(剔紅)은 명대 뿐 만 아니라 청대에도 많이 사용되었으며, 청대에 들어서 더 많은 발전과 변화를 가져왔다.

명대의 가구와 청대의 가구의 마감기법 중 유사한 것은 경질목재를 사용하여 가구를 제작하고, 랍식(蠟飾)이라 하여, 목재표면에 초를 녹여 발라 나뭇결(문리:紋理)를 더욱 선명하게 하고, 목재의 밀도를 강화시키는 기법으로, 이러한 기법은 소칠(素漆)과 더불어 자연 목재의 결을 살리는 기법이다.

명대에서 청대로 넘어가는 시기에 청대 초기의 가구는 명대가구 기법(技法)과 양식(樣式)을 계승하였다.

일반적으로 명·청 양대의 혼례용 가구는 홍칠(紅漆)을 많이 사용하였으며, 중국에서 붉은 색은 희사(喜事)의 의미로 중국인이 가장 선호하는 색상으로 가구뿐만 아니라 많은 부분에서 사용된다. 그러나 사대부(士大夫)의 서재에서 사용한 가구는 단아하고 자연적인 정취를 풍겨 색채가 강하지 않는 칠을 하거나, 자연 목리를 살려 제작하였다.

명대에서 주로 사용하였던 상감(象嵌)은 감목(嵌木)으로 청대에는 보석(寶石), 나전(螺鈿), 대모(玳瑁)과 골(骨)은 청대에서 만 보여 지는 상감재료이다.

6. 소결

중국 가구사(家具史)의 황금기라 할 수 있는 명·청 시대는 중국의 생활문화가 좌식문화(座式文化)에서 입식문화(立式文化) 정착기인 당(唐)·송(宋)대를 거쳐 입식문화가 성행되는 시기로 이 시기의 의자는 일반대중 생활에도 실용가구로 거듭났으며, 또한 명·청 시대는 해금(海禁)제의 폐지로 인접 여러 열대지방의 나라들로부터 우수한 경질(硬質)목재를 수입 할 수 있었고, 청대에는 서양문화의 유입으로 가구 양식에 있어 큰 전환점을 갖게 되어 중국 가구사의 황금기로 남길 수 있는 또 하나의 계기를 형성하였다.

중국 가구에서 공통적인 특징으로는 대부분의 가구가 좌우대칭(左右對稱)며, 설사 좌우대칭(左右對稱)이 아니더라도 이는 반드시 쌍(雙)으로 배치하였으며, 또한 가구의 조형은 직선(直線)과 사각형(方形)으로 이루어졌다.

명대는 좌우의 엄격한 비례가 구조의 기초가 되어서 직선(直線)적인 형태가 주는 단순미(單純美), 자연목리(木理)를 살린 마감으로 단아(端雅)하고 소박(素朴)한 조형미를 추구하였다. 반면 청대는 명대와 달리 모든 장식에 있어 양적, 질적으로 화려(華櫚)하고 부귀(富貴)스러운 조형미를 추구하였으며, 다양한 기법을 한 가구에 사용하였고 재료 또한 다양하게 사용하였다. 특히 명·청시대의 가구는 선각(線脚)을 중시하였는데, 이러한 중국가구의 선의 조형 구조와 양식은 서방국가로 유입되어 큰 영향을 미쳤다. 또한 중국 가구의 짜임 구조는 한국과 일본의 전통가구에도 공통적으로 영향을 미쳤으리라 본다.

중국가구에서 가장 중요한 부분은 장식기법으로, 특히 청대는 장식기법이 모든 가구를 제작하는데 가장 중요한 요소였다. 명대 가구에서 가장 많이 쓰여 진 장식 기법으로는 작은 면적(面積)의 조각(彫刻)과 상감(象嵌)으로 조각하지 않은 다른 면적과 대비하여 장식적인 효과를 극대화(極大化) 하였으며, 청대에는 상감(象嵌), 조각(彫刻), 묘금(描金), 법랑(琺瑯)등 다양한 기법들을 가구 전체에 사용하여 화려함을 강조하였다.

중국가구의 장식표현은 다양한 문양으로 이루어져 있으며 대체로 길상문양(吉祥文樣)인 이들은 선사(先史)시대 토기문양에서 유래되어 청동기 칠기(漆器)에 표현되었던 중국 고유의 문양에 서양문화와 불교(佛敎)문화 및 도교(道敎) 사상이 복합되어 이루어진 것으로 아름다운 형태를 이루고 있다. 이러한 문양들은 가구 형태에 따라 조각(彫刻, 상감(象嵌)등 다양한 기법을 표현하고자 할 때 사용되었으며, 또한 가구에 장식된 문양은 건축의 장식이나 기타 일상(日常) 장식품들과 조화를 이루는데 중요한 역할을 하였다.

중국의 전통가구는 조선조 가구에 비해 조형적으로 입체적, 표현적, 기교적 특성을 보여주고 있으며, 이는 서로 다른 생활문화와 공간적 특성에서 기인한다고 하겠다.

표 .  중국 전통 가구의 조형적 특성

특성	이미지	요인
입체적		1.입식주거 2.대륙적 문화 3.장대한 스케일
표현적		1.건축장식의 화려함 - 명·청대 2.시각적 포만감의 지향 3.길흉화복의 위한 풍부한 장식
기교적		1.특히 청대 장식의 유행 2.다문화의 융합과 표현 3.유리, 금속 등 세공기술의 발달

제3절 일본의 전통가구

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

1. 일본의 자연환경 특성

일본 국토의 대부분을 차지하고 있는 산지는 아한대 침엽수림부터 아열대림까지를 포함하는 무성한 삼림으로 덮여있다. 이는 일본이 2천년 가까이 목구조의 개방적인 건축양식을 지속해 오면서 일본적인 생활양식을 확립할 수 있는 중요한 배경이 되어왔으며, 다양한 수종을 이용한 목가구가 발달할 수 있었던 좋은 조건을 제공해 주었다.

그림 . 쿠루마단스(車箪笥) 이동의 편리성이 강조된 가구의 예

또한 빈번한 태풍이나 지진과 같은 자연재해는 일본인 특유의 생활감각과 현실에 대한 대응력이 남다르게 발달하도록 하였으며, 이는 특히 붙박이장의 발달과 같이 실내 수납가구가 건축의 일부로 편입되는 경향이 강한 것과 개별가구에 있어서는 이동의 편리성이 강조되어온 점에서 구체적으로 확인해 볼 수 있다. <그림 1> 참조

이 밖에도 가구의 제작에 있어서 재료의 선택과 사용법, 짜임기법 및 구조의 특성 등 여러가지 제반 문제들이 일본의 자연환경과 불가분의 관계로 연결되어 있다.

일본의 기후는 고온다습하여 사람이 살기에 적합한 기후라고 할 수는 없다. 그러나 겨울 추위와 여름더위가 그다지 심하지는 않아 특별한 방한시설 없이도 겨울을 지낼 수 있고, 개방형의 건물구조만으로도 여름 더위를 넘길 수 있었다.

평좌식 생활과 지면의 습기를 피하기 위해 다다미 바닥이 존재하였으며, 이러한 바닥의 존재는 인간이 앉을 장소를 지면으로부터 떨어지게 하려는 점에서 의자나 침대와 같은 의미를 갖고 있다. 따라서 귀족이 자리의 위치를 높이려 할 때에도 의자와 침대를 높이지 않고 마루바닥 전체를 높게 하였다. 일본 건축의 내부는 평좌식 생활로 의자나 침대가 없지만 책상은 필요하여 높이가 낮은 형태를 갖게 되었다. 따라서 불필요할 때는 치우기도 하고 앉기 위해서는 방석을, 잠잘 때에는 요를 펴고 생활하였다.

사계절의 변화에 따른 자연의 변화, 남북으로 길게 뻗은 국토가 보여주는 풍경의 다채로움은 일본인 특유의 자연에 대한 섬세한 감각을 키워주었으며, 이는 생동감 있고 변화가 풍부한 일본 미술의 표현양식에 잘 나타나 있다. 이는 다시 일본 목공예 전반의 장식표현기법에 영향을 주었는데, 시적인 풍취의 사실적이고 회화적인 문양, 온갖 미묘한 표현들이 마끼에(蒔絵)를 통해 여러 가구들의 장식으로 활용되었다.

칠로 무늬를 그리고 칠이 마르기 전에 금, 은가루나 채색분을 뿌려 꾸미는 기법

2. 일본 전통가구의 역사적 배경

가. 나라 시대 (奈良時代 710~794)

일본 조정이 율령국가의 체계정비를 통한 중앙 집권력 강화를 위해 수도를 후지와라쿄（藤原京)에서 헤이죠쿄(平城京)로 옮긴 710년부터, 794년 다시 헤이안쿄(平安京)로 옮기기까지의 시기를 나라 시대라 한다.

8세기가 되자 중국에서는 당(唐)이 최고의 전성기를 맞이하여 서아시아와도 활발한 교류를 하는 등, 국제적 감각이 풍부한 문화를 꽃피우게 되었다. 일본은 702년부터 8차례에 걸쳐 견당사(遣唐使)를 파견하여 중국의 문물과 제도를 적극적으로 받아들였는데, 이러한 영향으로 이 시기 일본에서도 당(唐)문화의 영향을 받은 국제적 감각의 문화가 번영하였다. 특히 쇼무(聖武)천황시대(729~749)에 펼쳐진 불교진흥정책과 함께 고도의 불교문화가 성립되는데, 일본 고대문화의 최고 전성기 덴표(天平)문화 라 일컬어질 만큼 크게 융성하였다.

이 시기 문화의 다양한 양상을 구체적으로 설명해 주는 유물들이 현재까지도 토다이지(東大寺)의 쇼소인(正倉院)에 전해져 오고 있다. 특히, 두짝의 여닫이 문이 달린 단층장 형식의 수납가구인 즈시(厨子), 목제 궤인 히쯔(櫃), 선반인 타나(棚) 등은 중국과 한국을 통해 전래된 일본 수납가구의 고대 원형을 확인해 볼 수 있는 귀중한 자료가 되고 있다.

나. 헤이안 시대(平安時代 794~1185)

일본 조정은 나라시대 말기의 정쟁을 불식하고 불교정치로 인한 폐단을 제거해 율령국가의 재건을 도모하는 의미에서 794년 헤이죠쿄(平城京)에서 헤이안쿄(平安京)로 천도한다. 이때부터 1185년 카마쿠라에 무사(武士)정권인 막부(幕府)가 설립되기까지의 약 400년에 걸친 시기를 헤이안 시대라 한다.

894년, 일본은 세력이 약화된 당나라와의 교역을 중단하고 기존에 유입되어 있던 당나라식의 문화적 바탕 위에 자국의 풍토와 민족성에 맞는 새로운 일본풍의 문화를 탄생시켰다.

국풍(國風)문화

10세기 중엽부터는 귀족의 주택양식인 신덴즈쿠리(寝殿造)가 발달했는데, 이는 일본 토착의 목구조 건축과 중국의 건축양식이 합쳐진 양식이었다. 신덴즈쿠리(寝殿造)의 실내는 마치 텅 비어있는 무대와도 같이 일체의 고정된 벽이 없는 완전 개방형 구조로, 벽 대신에 얇은 창호지를 바른 장지문, 커튼, 병풍 등이 공간분할에 이용되었다. 이 시기에는 중국에서 전래되어 왕실과 귀족 사이에서 유행했던 의자와 테이블이 사라진 대신, 마루로 된 실내 가운데의 한 단을 높여 위에 다다미를 깔아 침상으로 사용하였는데, 이러한 침상을 초오다이(帳台)라고 했다. 초오다이의 주변은 발, 커튼 등으로 둘러 완전 개방된 실내에서 하나의 독립된 영역을 확보하였으며, 그 바로 뒤쪽 왼편에는 타나(棚)를 쌍으로 배치하고 타나의 뒤쪽에는 병풍을 세웠다.

이렇게 일본 고유의 주택형식이 완성되어가는 동안 가구들도 좀 더 일본적인 색채를 띄고 변화하기 시작하여, 즈시와 타나가 합쳐진 형태의 즈시타나(厨子棚)가 등장했다. 나라시대의 즈시보다 옆으로 넓고 높이가 낮은 형태의 즈시 위쪽으로 개방형의 선반이 덧붙고 하단에는 다리를 달아서 성립된 것으로 이전 시대에 비하여 즈시 부분이 상당히 축소되었다. 또한 2층타나, 3층타나 등과 같이 즈시 부분이 아예 없어진 형태도 만들어졌고, 여닫이로 되어있던 즈시의 문짝을 미닫이 문으로 대체하거나 즈시가 있던 자리에 서랍을 만들어 넣은 경우도 있었다. 이 즈시타나는 시간이 흐름에 따라 그 마감과 형태가 더욱 장식적으로 변해 갔는데, 이는 귀족의 실내가구로서의 성격을 반영한 것으로, 이 시기에 성립된 즈시타나의 형식은 이후 상류층의 장식용 가구의 전형적 양식으로서 중세, 근세까지 이어지게 된다. 이와 같이 헤이안 시대에 들어 즈시는 더 이상 그 원형을 지키지 못하고 타나의 형태에 흡수되게 되었다. 그러나 한편으로는 타나도 즈시와 결합되므로써 좀 더 다양한 모습으로 발전할 수 있었다.

마감은 주 사용자층인 귀족들의 취향을 반영하여 마끼에(蒔絵)로 매우 화려하게 처리하였다. 실용적인 가구로서 히쯔(櫃)가 여전히 애용되었는데, 전 시대에 비해 화려해진 치장이 특징이다. 히쯔의 표면은 마끼에나 나전마끼에 등을 이용해 장식하였으며, 그 소재는 계절별 식물이나 동물의 사실적 표현, 또는 그로부터 도출된 상징적 문양이 많았고, 이전과 달리 비대칭의 형태를 지닌 문양이 늘어난 것이 특징이다. 이는 당시 귀족계층 사이에 퍼져있던 유미주의(唯美主義)적 취향을 반영한 표현기법으로, 일본의 가구들이 중국 가구의 엄격한 형식주의로부터 벗어나 좀 더 개방적인 디자인의 요소를 도입하기 시작하였음을 보여준다.

다.카마쿠라시대(鎌倉時代1185~1333)·무로마치시대(室町時代 1336~1573)

카마쿠라 시대까지도 헤이안 시대의 귀족문화는 지속되었는데, 비록 정치권이 귀족에서 무사라는 신흥세력에 넘어가긴 했어도 무사들은 아직 자신들만의 문화를 보유하지 못했었기 때문에 무사들이 기존의 귀족문화를 적극 섭취하면서 귀족적 생활을 모방하려 하므로써, 더욱더 화려하고 장식이 과장된 사치스러운 경향으로 흘렀다. 그러나 남북조 시대에 이르러 선종사상이 무사들의 문화전반에 절대적인 영향력을 행사하기 시작하면서 또 다른 국면을 맞이하게 되었다.

주택의 양식에 있어서도 새로운 양식의 탄생과정에서 나타나는 점진적인 변화의 움직임이 일기 시작했다. 전 시대의 신덴즈쿠리(寝殿造)주택이 무가(武家)의 의례적인 생활상을 반영하면서 부케즈쿠리(武家造)주택이 등장했다. 부케즈쿠리(武家造)주택에 있어서의 가장 큰 발전은 접객 및 대면 의례 중심의 생활공간인 슈덴(主殿), 우차를 탄 사람이 타고 내리는 장소인 쿠루마요세(車寄), 신변호위를 하는 하급 무사들의 거처인 토오자무라이(遠侍), 부엌 등 점차 기능에 따른 건물로의 분화가 이루어졌다는 점이다.

西和夫,橞積和夫 저, 이무희, 진경돈 역, 일본건축사, 세진사, 1995, pp120~121

특히, 당시 무가(武家)에서는 쇼군(将軍)이 무장(武将)의 주택을 방문하고, 무장들은 다시 그 아래 무사들의 주택을 방문하는 의례가 있었는데, 이로써 무사들의 주택에서 접객을 위한 의례적 공간은 어느 공간보다도 중요한 위치를 차지하게 되었으며, 이러한 전통은 그 후에 나타나는 일본 전통 주택 건축이 접객 중심적 공간으로서의 성격을 형성하는데 중요한 배경이 되었다고 할 수 있다.

선종의 영향으로 그림이나 꽃을 장식하는 공간인 오이시타(押板)가 만들어졌고, 이는 다시 도코노마(床の間)로 발전하였다. 또한 장식용 선반인 타나와 붙박이식의 낮은 책상인 쯔케쇼인(付書院)이 설치되어 오늘날까지도 이어져오는 일본 전통 실내 장식의 기틀이 마련되기 시작했다. 또한 이 시기부터는 쵸오다이(帳台)에만 깔리던 다다미가 바닥 전체에 깔리게 되었다.

주거양식과 마찬가지로 가구에서도 헤이안 시대의 양식을 기반으로 하면서 변화의 요소가 가미된 복합적 형태의 가구가 등장했는데, 헤이안 시대의 즈시타나가 변하여 카마쿠라 즈시타나의 양식으로 성립되었다. 그리고 이 즈시타나에서 쿠로타나(黑棚)라는 장식 선반의 또 다른 양식이 파생되었는데, 이로써 일본 전통의 장식타나(飾り棚)의 세 백미라고 불리워지는 산타나(三棚) 가운데 두 가지가 이 시기에 완성되게 된다.

즈시타나(厨子棚), 쿠로타나(黒棚), 쇼타나(書棚)

또한 이 시기에 주목할 만한 것으로 목재를 세로로 켜는 2인용 내림톱과 평대패의 등장이다. 이 도구들은 무로마치 시대 말엽에 일본에 전래되었는데, 이로 인한 목재가공의 기술혁신이 가구제조업에도 영향을 미쳐, 나가모치(長持)와 츠즈라(葛篭)라는 얇은 판재로 된 상자형 가구들이 제작되었다.

라. 아즈치·모모야마시대(安士·桃山時代 1573~1603)

100여 년에 걸친 전란이 수습되고, 토요토미 히데요시(豊臣秀吉)에 의해 전국이 통일되었다. 그는 우선 봉건적 토지소유제의 확립과 신분제 확립을 위한 여러 정책을 펴기 시작하였는데, 그 뒤 도쿠가와 이에야스(德川家康)가 잔존하던 적대 세력을 물리치고 에도(江戶)에 막부를 열게 되기까지의 시기를 아즈치 · 모모야마 시대라고 한다.

이 시기에 일본에서는 산업발전과 함께 사회적, 경제적으로 안정이 되면서, 다도, 꽃꽂이, 도예, 음악, 연극 등이 동시에 성황을 이루어 일본 문화의 르네상스기로 불려졌고, 가구를 포함한 목공예도 예외는 아니었다.

주택양식에서는 신덴즈쿠리(寝殿造), 부케즈쿠리(武家造)를 거쳐 등장한 쇼인즈쿠리(書院造)가 완성되었다. 쇼인즈쿠리 주택은 접객공간, 가족생활공간, 하인생활공간의 세 부분으로 구성되어 있으며, 이미 부케즈쿠리에서부터 발전하기 시작한 실내장식요소들이 접객공간의 고정양식으로 자리잡게 되었다. 꽃꽂이와 그림으로 장식한 도코노마(床の間), 각 층의 선반 높이가 엇갈리게 구성된 장식 선반인 치가이다나(違棚), 독서의 공간인 쇼인(書院)의 세가지 요소는 이후 일본 전통 주택의 실내의장의 전형적인 양식으로 오늘날까지도 이어져오고 있다.

특히, 이 시기의 장식적 성향에 있어서, 영주들의 위세를 표현하기 위한 장대하고 화려한 표현이 직접적으로 채용되었는데, 실내의 곳곳에 금박을 입히고 금칠로 장식한 그림, 화려한 마끼에 장식의 가구들이 많았다. 가구에 있어서는 여러가지 양식으로부터 다양한 장식 요소를 도입하여 치가이다나(違棚), 히키다시(抽斗), 쇼오지(障子), 쯔이슈(堆朱) 조칠(彫漆)기법의 영향이 복합적으로 표현된 장식 선반이 유행했다.

홍민정, 일본 에도·메이지 시대의 목가구에 관한 연구, 홍익대학교 대학원, 2000, p30

중국 송대와 원대에 발달한 기법으로 척홍(剔紅)칠기라고도 한다. 이 기법은 백골에 여러 차례의 붉은 칠을 입혀, 두껍게 입혀진 칠에 조각도로 무늬를 새겨 장식하는 기법으로 여러 차례의 붉은 칠 중간에 황색, 녹색, 흑색 등의 색을 번갈아가며 사용하므로써 조각도로 파낸 부위의 깊이에 따라, 또는 모양에 따라 매우 활기찬 장식효과가 창출되는 것이 특징이다.

그러나, 이러한 화려한 치장의 극을 달리고 있던 무사들의 생활 한편에서, 그와는 정반대의 모습의 대단히 간소하고 소박한, 극히 자연적인 운치의 다실(茶室)양식이 완성되었는데, 이는 화려함과 세련됨의 극치를 모두 경험한 사람들만이 해낼 수 있는 또 다른 세련미의 표출이었다고 할 수 있다.

마. 에도시대(江戸時代 1603~1867)

토쿠가와 이에야스가 에도에 막부를 세운 뒤, 메이지유신(明治維新)으로 막부를 폐쇄하기까지 약 260년에 걸친 기간을 에도 시대라 한다. 에도 봉건체제에서 무사들은 막부의 체제를 위협하는 사회변화의 요소를 철저히 차단하고자 여러가지 보수적인 정책을 펼쳐 나갔는데, 그 첫번째가 쇄국정책이었다. 막부는 쇼군의 개인적인 진상을 위한 중국, 조선, 네델란드와의 교역을 제외하고는 일체의 국제교역을 금지하였는데, 이러한 국제교역의 통제로 인해 국내 상인들의 관심은 국내교역에 집중되었고, 중기 이후에는 국내 상품교역의 대부분이 도시상인들에 의해 운영되게 되었다. 반면, 정부 조세수입의 원천인 농업에 의한 수입은 비교적 한정되어 있는 것이었으므로, 결과적으로 지배층인 무사들이 상인계층의 경제력에 의존하게 되는 형국을 불러왔다.

상인계층의 번성으로 인한 사회적 변화의 움직임 속에서, 도시 상인들의 주택인 마치야(町屋)는 이 시대 주택양식의 도시적 특성을 이루며 퍼져나갔다. 이 주택은 도로에 접해 지은 단층, 혹은 2층 건물로, 상인들의 생업공간인 점포와 주거공간이 함께 구성된 주상복합 형식의 건물이었다.

상인계층의 실용주의적인 측면은 가구의 발달에 있어서도 매우 중요한 영향을 미치게 되는데, 17세기 말~18세기 초에 탄스((箪笥)를 비롯한 각종 실용가구들이 탄생하게 되는 기본 바탕이 되어주었다. 장식적 부장품으로서 왕실, 무사, 귀족 등의 지배계층에서만 누릴 수 있었던 가구문화가 민중의 생활 속에서 실용적 생활용구의 의미를 획득하게 된 점은, 이 시기의 상인 계층의 실용주의가 일본 목가구의 발달에 있어서 중요한 역할을 차지한다고 볼 수 있다.

또한, 이 시기에 일어난 목공기술의 혁신도 상인계층을 위한 가구 보급을 가능케 한 배경이 되었다. 무로마치 시대에 전래된 2인용 틀톱의 대중화에 의해 판재 제작과정이 훨씬 간단해졌고, 그에 따라 좀 더 싼 가격에 가구재료의 공급이 가능해졌으며, 이를 통해 민중의 요구에 부합하는 대중적 가구 제조업이 번성하게 되었다.

에도 시대의 가구디자인은 사용자층의 확대로 인해 크게 두가지의 대조적인 특성으로 표출되었다.

첫째, 상류층의 가구들에는 봉건사회 전반의 보수적이고 의례적인 분위기가 반영되어, 좀 더 표준화된 의장의 틀을 가지게 되었는데, 격식이라는 규범 안에서 계획적인 표현양식이 발전했다. 다실(茶室)의 자연적인 분위기에서 영향을 받았다고 하는 가구들도 결국은 ‘철저한 계획에 의한 의도적인 자연미’를 표현하였다.

둘째, 민중들의 가구에 나타나는 서민적 취향이 오늘날까지도 이어져오고 있는 일본 전통가구의 특성으로 자리잡게 되었는데, 매우 견고하고 실용적인 성격의 구조와 자연적 마감을 통한 소박한 아름다움이 그것이다.

바. 메이지시대(明治時代 1868~1912)

1868년 에도 막부가 붕괴되고, 일본은 새로운 역사의 장을 맞이하게 된다. 이 시기에 일본은 쇄국과 봉건주의로부터 벗어나 근대 천황제 국가로서 국제사회에 진출하게 되었다. 일본 내의 모든 관심은 근대화에 집중되어 있었는데, 이는 곧 ‘서구화’를 의미하는 것이었다. 새 정부는 에도를 도쿄(東京)로 개칭하고, 각 관청사 및 대형 건축물들의 건립에 서구의 건축가와 기술자들을 초청하여 유럽의 건축양식을 도입하였다. 또한 많은 개인사업가들이 서구식의 사옥을 건설하는데 앞장섰다.

주택평면의 변화로 가장 눈에 띄는 점은 접객공간이 서양식으로 변화한 것이었다. 특히, 메이지 시대 초기에서 중기 사이에는 한 부지 안에 일본식 건물과 서양식 건물이 동시에 지어지는 화양(和洋)복합양식이 나타났는데, 기존에 있던 쇼인즈쿠리의 주택에 접객용의 서양식 주택이 가미된 것이라 할 수 있다. 그러나 일본인들의 일상생활은 여전히 전통적인 양식에 의한 것이었으므로, 일본식과 서양식의 병존, 근대적인 것과 봉건적인 것의 공존이었다고 할 수 있다. 이 시기에는 탄스가 진정한 의미의 대중화를 이룸으로써 일본인들이 생각하는 가장 대표적인 수납가구로서의 위치를 확고히 하게 되었다. 봉건적 신분체계가 붕괴되면서 탄스를 비롯한 각종 가구문화가 도시 상인뿐 아니라 지방의 서민계층에까지 확산되었고, 각 지방 특산 재료 및 지역문화의 성격을 반영한 탄스 양식이 성립되어 그 내용도 훨씬 다양하고 풍부해졌다.

윤복자 외, 세계의 주거문화, 신광출판사, 2000, p63

小泉和子, 日本史小百科－家具, 東京堂出版, 1995, p111

3. 일본의 주거양식과 공간특성

풍부한 삼림자원을 바탕으로 한 목재의 활용은 일본 전통 주택의 성립에 매우 중요한 요소로 작용하고 있는데, 여름에 시원하고 겨울에 따뜻하며, 지진을 대비할 수 있는 유연성을 지닌 이유로 목재는 일본 건축의 가장 중요한 재료로 애용되어 왔다. 오늘날 대표적으로 거론되고 있는 일본식 주택의 성격들은 헤이안 시대(平安時代) 중반 이후 등장한 신덴즈쿠리(寝殿造) 주택과 근세 무가(武家)의 쇼인즈쿠리(書院造)주택의 발달을 거쳐 성립되었는데, 기본적으로 목가구 구조의 개방형 공간의 특성에 뿌리를 두고 있다.

무로마치 시대에 발생하여 모모야마 시대에 발달하여 에도 시대 초기에 완성된 주택건축양식. 현관, 床の間, 선반, 장지문, 맹장지가 있는 집 구조로, 현재 일본 건축의 주택은 거의 이 양식을 따르고 있다.

일본의 경우 조몬 시대(縄文時代))에는 모두 타테아나(竪穴) 주택이었으나, 야요이 시대(弥生時代) 이후에는 지배계층의 주택과 피지배계층의 주택으로 나뉘게 된다. 지배자, 귀족의 주거는 타카유카(高床) 주거이고, 피지배자, 서민의 주거는 타테아나(竪穴)주거였다. 이 두 가지 유형은 기본적으로는 바뀌지 않고 근대에 이르기까지 이어졌다.

그림 . 타테아나(竪穴)주택

그림 . 타카유카(高床)주택

(출처:小泉和子, 日本史小百科－家具, 東京堂出版, 1995, pp12~13)

그림 . 일본 주거양식의 변천

지배계층의 주거에도 궁전이 있고 주택이 있었으며, 서민의 주택도 농가만 있었던 것이 아니라 헤이안 시대(平安時代)부터는 마치야(町屋)라고 하는 형태의 주거가 많아지는 등, 주거의 형태는 다양했지만 본질적으로는 타카유카(高床) 주택과 타테아나(竪穴) 주택으로 이루어져 있다. 타카유카 주택의 경우, 고대에는 사다리를 놓고 오를 정도로 높았으나 차츰 바닥이 낮아졌다. 또한 타테아나 주택의 경우도 원시시대에는 지면에 구멍을 파고 집을 지었었는데, 이후에는 바닥이 흙바닥(土間)이라는 점만 남게 되어, 타카유카 주택과 타테아나 주택의 구분은 바닥이 마루 바닥재로 마감이 되었는가 아닌가에 의해 구분되었다. 물론 민가 중에서도 마치야(町屋)나 쇼우카(商家)는 흙바닥이 아니었으므로, 간단히 구분하기는 어렵다고 할 수 있다. 위의 표에서 대략적인 일본 주택의 변천사를 볼 수 있다. 그러나 지배층의 주택의 경우 기거양식이 부자연스럽게 변화해 왔다는 것을 알 수 있다. 고대에 의자식 생활을 했다가 중세에 다시 평좌식 생활로 바뀌어, 근대에는 의자식과 평좌식이 함께 이루어졌던 것이다. 원시적인 시대에는 평좌식이었다가 문명이 발달함에 따라 의자식으로 바뀌는 것이 일반적이라고 할 수 있으며, 유럽이나 중국에서 그 예를 볼 수 있다. 이렇듯 의자식 생활이 정착되지 못하고 다시 평좌식으로 돌아온 점은 주거문화에 있어서 보기 드문 특징이라 할 수 있으며, 가구문화에도 커다란 영향을 미쳤다.

그림 . 東三条殿:신덴즈쿠리의 시츠라이

그림 . 大臣大饗 : 신덴즈쿠리의 시츠라이

(출처 : 小泉和子, 日本史小百科－家具, 東京堂出版, 1995, pp19~20)

신덴즈쿠리의 경우 실내에는 벽이나 문 등의 설비가 없었으므로 쇼오지(障子 미닫이문), 스다래(簾 발), 카타비라 (帳帷 휘장), 뵤오부 (屏風 병풍), 츠이타테 (衝立 칸막이) 등으로 공간을 나누고 다다미를 놓기도 했으며, 이를 시츠라이(鋪設,室礼 가구를 이것저것 배치하여 집안을 장식하는 것)라고 했다. 이로 인해 신덴즈쿠리 주거양식의 실내에는 경우에 따라 필요한 가구를 사용하여 생활공간을 만들었으므로 가구가 상당히 많았으며, 중국으로부터 들어온 의자 등에 의해 평좌식과 의자식이 병용되었다.

그림 . 쇼인즈쿠리 내부(西本願寺白書院)

그림 . 쇼인즈쿠리 주거 내부의 가구배치

신덴즈쿠리와 쇼인즈쿠리의 커다란 차이점은, 몇 개의 동으로 나뉘어 지어졌던 건축이 한 개의 건물로 되어 내부에는 마지키리(間仕切り 칸막이)에 의해 집안이 몇 개의 방으로 나뉘게 되었다는 점이다. 이전에는 필요한 때마다 설치했던 쇼오지(障子)도 차츰 고정되고 선반도 건물에 붙박이로 고정됨으로써, 쇼인즈쿠리의 주거에서는 시츠라이가 필요 없게 되었다. 또한 다다미를 깔게 됨으로써 잠잘 때 쵸오다이(帳台 침대)를 사용하지 않게 되었으며, 의자 등도 필요 없게 되었다. 신덴즈쿠리의 쵸오다이에 해당되는 부분을, 쇼인즈쿠리의 경우 바닥을 한단 높여서 만들었으며, 이곳에는 신분이 높은 사람이 앉도록 하여 정식의 의식에서도 완전한 평좌식 생활이 이루어졌다.

신덴즈쿠리 건축은 근대 이전의 일본주택에 가장 영향을 미친 양식으로, 신덴즈쿠리 주거의 특징은 지금도 전환이 자유로운 특징을 가진 일본 주택의 전통으로 남아 있다. 예를 들어 손님이 많이 방문했을 때 미닫이문을 떼어내어 공간을 넓게 사용한다거나, 식사 때 젠(膳 상)을 펴는 습관 등 서구형의 1실1기능 주거와는 근본적으로 다른 특징을 보여주고 있다. 이러한 전용이 가능한 주거의 특징은 일본의 좁은 주택사정에 적합하여 계승되고 있다고 할 수 있다.

홍민정, 일본 에도·메이지 시대의 목가구에 관한 연구, 홍익대학교 대학원, 2000

목구조 건축물에서는 기둥과 들보가 주된 구조재의 역할을 담당하기 때문에 벽체는 구조적으로 그다지 큰 역할을 수행하지는 않는다. 이 점이 습기가 많은 일본의 기후조건과 함께 개방형 주택구조의 성립에 있어서 결정적 역할을 했다고 할 수 있다. 따라서 일본 주택의 실내에는 고정된 벽체에 의해서 용도 및 기능이 규정되어지는 각실(室)이 존재하는 것이 아니라 공간구획의 필요에 따라 붙였다 다시 떼어낼 수 있는 반고정식의 칸막이에 의해 각 방의 규모와 용도가 결정되어진다. 이러한 일본 주택 공간의 유기적 공간구성은 일본 전통 가구의 가장 중요한 특성 중 하나를 형성하게 되는데, 실내 평면의 유기성, 융통성은 그 안에 놓이는 가구에 있어서도 필요에 따라서 사용되고는 곧 다시 치워지고, 또 다른 가구가 배치되는 순환체계의 반복이 요구되었으며, 이는 용도가 확실한 단일 장소 안에서 기능과 위치가 고정되어 있는 서양의 가구들과 차이점을 나타낸다. 시간대별, 계절별, 일상 또는 비일상별로 실내의 설비가 신속히 변화할 수 있도록 그 사용 장소와 배치를 수시로 바꿀 수 있도록 하는 기능과, 구조에 있어서도 사용 후 수납의 특성이 강조되어 왔음을 알 수 있으며, 이와 같은 실내 공간 운용상의 특성은 일본 전통가구에 있어서 수납기능이 특별히 발달하게 된 배경이 되었다.

이진민, 동양의 가구-한일중을 중심으로, 월간 인테리어, 1999.8, pp114~127

일본 주택은 상호 의존되는 몇 가지 기본 모듈에 의해 건물 전체의 통일된 비례가 구성되고 있는데, 바닥 재료인 다다미, 실내공간을 구획하는 쇼오지(障子), 후스마(襖)는 실내 의장 요소의 조화에 기여하는 가장 기본적인 모듈로서, 그 크기(900×1800mm)가 일정해서 각 실의 크기는 이것들의 결합방식에 의해 결정되어진다. 이처럼 표준화된 틀을 지니고 있는 실내 공간에서 가구들도 어느 정도의 규격적인 틀을 가지고 발달하였으며, 어느 공간에서든 어느 가구끼리든 몇 단이고 효과적으로 쌓아 놓고 사용하는 데에 불편이 없도록 제작되었음을 알 수 있다. 결과적으로 배치의 가변성, 컴팩트한 구조 및 모듈화 등의 일본 가구의 특징은 이러한 일본 실내 구성 요소들의 규격성과 통일된 비례감에 의한 특성이라고 할 수 있다.

그림 . 수납가구의 규격성과 모듈화

(출처:Azby Brown, Small Space, Kodansha International, 1993, p8)

일본 목가구 구조 건축의 실내에서는 구조재인 기둥이나 들보 등을 다른 재료로 마감하지 않고 그대로 노출시켜 보이게 함으로써 치장재(治裝材)로 활용하고 있음을 알 수 있다. 특히 때에 따라서는 껍질을 벗기지 않고 그대로 등 어두운 색의 목재로 실내 공간에 있어서 시각적으로 매우 강한 직선적 조형미를 주기도 한다. 이러한 실내에서 일본 전통 가구는 직선 요소가 강조된 실내 의장의 특성과 조화를 찾으려 하였으며, 가구의 외형에서 볼 수 있는 직선미와 단순미가 바로 이와 같은 조화의 의도를 잘 설명해 주고 있다.

4. 일본 전통가구의 생활양식과 가구

현대 일본의 입식 생활문화는 제2차 세계대전 이후에 성립된 것으로, 그 전까지 일본인들은 의자나 침대를 사용하지 않은 철저한 평좌식 생활을 하였다. 기록에 의하면 일본에 의자가 처음으로 소개된 것은 고분(古墳) 시대 말기(300~552년경)에서 나라(奈良) 시대 초기까지 거슬러 올라가며, 그 사용은 대륙으로부터 소개된 중국식 생활방식에 매료된 상류층에서만 극히 제한적으로 이루어졌다고 한다. 그리고 이것은 일시적인 유행과도 같은 것이었기 때문에 일본의 생활양식을 크게 변화시킬만한 것은 아니었으며, 이후 카마쿠라(鎌倉) 시대, 모모야마(桃山) 시대에도 의자가 상류층에서 유행했던 기록은 있으나, 의자는 결국 일본인들의 생활양식을 바꿔놓지는 못했다.

생활문화사적 측면에서 볼 때, 고온다습한 기후임에도 불구하고 일본인들이 평좌식 생활양식을 지속해 온 것은 매우 특이한 점이라 할 수 있다. 중국에서도 본래는 의자를 사용하지 않고 평좌식 생활을 했었으나 고대 문명사회로 진행되면서 점차 의자와 침대를 중심으로 한 입식생활로 변화하였으며, 이러한 변화의 과정은 세계 어느 곳에서나 같게 나타나고 있다. 이러한 입식 생활양식으로 이행된 원인으로 하나는 지면으로부터의 직접적인 습기와 한기를 피하기 위한 목적에서이고, 다른 하나는 사회적 지위체계가 발생하면서 사회적 지위의 상징을 위한 의자 사용을 들 수 있다. 그러나 일본은 이 두 가지의 문제를 해결하는 데 있어서, 바닥으로부터 한 단계 상승된 타카유카(高床) 주거의 형식을 도입함으로써 의자의 기능을 대체한 것으로 보고 있다. 습기를 막는데 뛰어난 구조의 타카유카(高床) 주거는 처음에는 곡식 저장고와 같은 목적으로 사용되다가 점차 지배계층에서 주택으로 사용하기 시작하였고, 이로써 피지배 계층의 타테아나(竪穴) 주거나 평지(平地) 주거와는 구분되는 주거양식으로써, 신분계층을 상징하는 의미까지 지니게 되어 의자의 상징적 역할을 대신하게 된 것이다.

太田博太郞 저, 박언곤 역, 일본 건축사, 발언, 1994, pp33~34

일본은 줄곧 평좌식 생활양식의 특성을 유지해 오면서 일본 전통가구의 중요한 양식적 특성을 형성해 왔다.

첫째, 대부분의 수납가구에서는 그 기능이나 형태가 강조된 다리를 찾아보기 힘들다는 점이다. 물론 일본 가구의 대부분이 중국 및 한국을 통해 전래된 양식에 기초를 두고 발전해 온 까닭에 다리의 구조가 남아 있는 경우가 간혹 있지만, 대개가 장식적인 목적에 의한 것들이고, 중국이나 한국의 가구처럼 실용적 목적에 의해 제작된 경우는 드물다. 중세 이후 평좌식 실내의 기본 바닥 재료로 보급된 다다미는 짚이나 골풀을 짜서 만든 것으로 우리나라의 온돌바닥, 목제의 마루바닥과 같이 단단한 바닥 재료와는 달리 탄력이 있고, 온도나 습도의 변화에 비교적 안정적인 재료였으며, 평좌식 생활공간에서는 대부분의 가구들을 사용자가 바닥에 앉은 키 범위 안에서 낮게 배치하였으므로, 가구의 안정적인 배치를 위해서나 실용적인 측면에서나 일본의 가구에는 높은 다리가 불필요했을 것이다. 또한 일본의 가구들이 필요에 따라 포개놓고 사용하는 경우가 많았던 점도 그 이유로 들 수 있다.

평좌식 생활양식에 의한 일본 가구의 또 다른 특성은 전면의 의장이 강조되고 있다는 점이다. 이는 평좌식 생활에서 사용자의 동선범위의 한계에 따른 것으로, 사람들의 움직임이 어느 정도 고정되었으므로 사물의 정면이 주로 시야에 들어오게 되는 가구의 전면이 중요하게 되었다. 특히 일본 가구의 이러한 특징은 단순한 상자형의 구조를 취하고 있는 수납가구에서 더욱 두드러지게 나타난다.

5. 일본 전통가구의 세부요소

가. 재료

일본의 가구에는 여러 가지 재료들을 사용하기보다는 목재를 중심으로 실용성에 맞추어 제작된 것이 대부분이다. 이러한 목재 중심의 가구양식이 발달하게 된 데에는 전 국토의 3/4를 덮고 있는 다양한 수종의 풍부한 산림자원이 가장 큰 영향을 주었으며, 수시로 장소를 바꿔가며 사용되는 기능상의 특성에 의해 최대한 가볍고 간소하게 만들어 사용했다.

지방에 따라 다르게 나타나는 수종의 분포에 따라 가구의 지방별 특색을 형성하기도 했다. 가구에 사용된 침엽수림으로는 노송나무(히노끼 檜), 삼나무(스기 杉)가 가장 대표적이고 활엽수림으로는 오동나무(키리 桐), 느티나무(케야끼 欅), 밤나무(쿠리 栗)가 가장 많이 사용되었다. 상자형, 서랍형 수납가구의 외곽 프레임을 구성하는 판재나 골재, 내부의 서랍용 재료 등의 구조재(構造材)로는 노송나무, 삼나무, 오동나무, 느티나무, 밤나무가 주로 사용되었으며, 그 중에서도 노송나무와 삼나무는 일본만의 독특한 재료로서 우리나라에서는 찾아보기 힘든 가구 재료이다. 한편, 치장재 및 기타 부재는 구조재에 속하지 않으면서 주로 장식적 용도로 쓰이는 판재나 그 밖에 눈에 보이지 않는 부분을 이루는 재료로서 뽕나무(쿠와 桑), 감나무(카키 柿), 주목(이찌이 櫟), 일본 전나무(모미 樅) 등이 많이 쓰였다.

나. 구조

일본의 수납가구는 그 구조에 따라 상자형, 선반형, 서랍형으로 나눌 수 있는데, 상자형 가구에 속하는 나가모치(長持), 하사미바코(挟箱) 등은 판재 결구 위주의 짜임새를 하고 있고, 선반형 가구인 타나(棚)는 골재 결구 위주의 짜임새를 하고 있다고 할 수 있다. 서랍형 가구인 탄스(箪笥)에는 종류에 따라 위의 두 가지 구조가 복합적으로 사용되었다.

목재 사이의 짜임 구조는 자연목재의 결점을 보완하고 목재의 유연성을 최대한 활용함으로써 특별한 접착제나 쇠못을 사용하지 않고서도 가구에 있어서의 역학적 문제, 견고성의 문제를 해결할 수 있다는 특징을 가지고 있다. 특히 일본에서는 이와 같이 목재를 짜 맞춰서 만든 목가구를 사시모노(指物)라 하여, 놓이는 위치가 고정되어 있지 않아서 장소의 이동이 많고 잦은 지진, 태풍 등으로부터 자유롭지 못한 가구에 있어서의 특수한 충격흡수 장치로써 오랫동안 활용해 왔다.

Kazuko Koizumi 저, Alfred T. Birnbaum 역, 'Traditional Japanese Furniture', Kodansha International, 1986, p.185

목재 사이의 결구는 크게 이음기법과 짜임기법으로 나누어 생각해 볼 수 있다. 이음기법은 기둥이나 판을 사용할 때 목재를 좀 더 길게, 혹은 넓게 이어서 사용하는 방법으로 가구에서는 그 규모의 특성상 길이를 잇는 방법보다는 너비를 넓히기 위해 이어 쓰는 방법이 주로 사용되었으며, 짜임기법은 판재와 골재들을 이용하여 가구의 구조를 형성하는 방법으로 천판, 기둥, 문판, 서랍 등의 입체적인 형태 구성에 사용되었다.

다. 문양 및 금구장식

목가구에 있어서 금속장식은 목재 결구의 구조 보강을 비롯한 각종 기능적 필요성에 의해 부착되었지만, 동시에 가구의 장식요소로서 목가구 조형의 특징적 성격을 부여하기도 했다. 특히, 일본은 습기가 많은 기후 때문에 목재의 휨과 뒤틀림을 최소화하기 위해서 목재끼리의 짜임 이외의 추가적인 구조보강이 필요했으며, 또한 운반 기능이 강조된 가구의 특성이 금속장식에 영향을 미치기도 했다. 이렇듯 일본 가구의 금속장식도 초기에는 기능적 필요에 의해 합리적 용도로 사용되었으나, 점차 그 형태가 복잡해지고 실제 기능과는 상관없는 장식적 성격이 과다하게 강조되기도 했다.

일본 전통가구의 금속장식은 부착되는 장소, 기능, 형태에 따라 자물쇠, 경첩, 손잡이, 들쇠, 모서리장식, 띠장식으로 나누어 볼 수 있다. 문짝이나 서랍을 잠그는 용도로 사용된 자물쇠는 가구에 붙박이식으로 부착되어 별도의 자물통이 없이도 잠궈지도록 된 형태와 자물통의 형태가 있는데, 일본에서는 전자의 경우가 더 많이 쓰였다. 문을 여닫을 수 있도록 하는 경첩은 노출형 경첩과 숨은 경첩이 있는데, 노출형 경첩은 장식의 기능을 함께 했으며, 특히 일본 가구에서는 날개의 폭이 좁고 길이가 긴 형태의 노출형 경첩을 연속적으로 여러 개 부착함으로써 가구의 견고함 이외에도 장식성을 강조한 것이 특징이라 할 수 있다. 서랍이나 문짝을 여닫을 수 있도록 부착된 장식인 손잡이는 ㄷ자형, 활형, 부채형 등의 다양한 형태가 있고 환봉이나 각봉을 원형으로 구부려 만든 고리가 있다. 미서기 문에는 약간의 깊이를 파고 박아 넣도록 되어 있는 원판형 손잡이가 쓰였다. 손잡이와 형태는 비슷하지만 가구의 측면이나 뚜껑에 달려서 가구를 들어 오리기 위해 사용하는 장식을 들쇠라 한다. 일본 가구의 최대 특징인 ‘이동성’을 반영하여, 다양하게 발달했다. 특히, 탄스나 나가모치의 옆면에는 일반적인 형태의 들쇠 이외에 특이한 형태와 용도의 사오토오시(棹通し)라는 장식이 부착되었는데, 이 장식은 손으로 운반하기 힘든 큰 가구를 이동할 대 고리에 긴 장대를 끼워서 두 사람이 어깨에 메고 운반할 수 있도록 고안된 것으로, 두단 이상 쌓아 놓고 사용하는 가구의 경우에는 윗단과 아랫단을 고정시키는 고리로서의 역할을 겸하기도 했다. 가구의 구조상 접합부분이나 모서리 부분의 보강을 위하여 모서리 장식을 부착했는데, 목가구의 구조적 완결과 장식적 마무리를 도왔다. 문짝의 전면이나 가구의 전면에 긴 띠 모양으로 부착하는 띠장식은 보강과 장식의 역할을 겸하는 것으로, 무거운 탄스(箪笥)나 제니바코(銭箱)와 같이 특히 견고성을 요하는 가구에 사용하였다.

라. 마감

일본 가구는 직선적인 구조가 보여주는 단순미가 특징으로, 표면처리를 어떻게 하느냐가 그 가구의 미적 가치를 결정하는 중요한 요소로 자리 잡게 되었다. 일본 목가구의 표면 마감처리 방법은 옻칠의 유무에 따라 크게 두 가지로 나누어 볼 수 있다.

첫번째는 옻칠을 하지 않고 목재의 자연스러운 질감을 살리는 방법으로, 오동나무, 노송나무, 삼나무, 소나무, 목련나무 등 밝은 색감을 지닌 목재로 제작된 가구는 이 처리법을 많이 사용했다. 이는 다시, 아무런 칠을 하지 않고 나무의 질감 그대로를 살리기 위해 맨 바탕 그대로 두는 시라키(白木)방법과 식물성 천연 재료를 사용해 목리(木理)를 강조하고 최소한의 방부와 방충처리를 한 방법으로 구분된다. 이런 식으로 마감된 가구들은 매우 소박한 느낌을 주며, 다소 거칠게 보이기도 하지만 오랜 시간이 흐르면서 갖춰지는 고색창연한 멋으로 에도 시대 이래로 많은 사랑을 받아왔다.

두번째는 목재 표면에 옻나무에서 채취한 수액을 도장함으로써 목재의 결점을 보완하는 동시에 색채, 광택, 부드러운 감촉을 강조하는 방법인데, 일본에는 조몬(縄文)시대에 그 기법이 전래되었으며, 중국, 한국, 일본, 태국 등의 지역에서 특히 발달된 동양 특유의 마감기법이다.

이종석, ‘한국의 목공예’, 열화당, 1993, p.162

나뭇결을 살리기 위해 투명 또는 반투명의 칠을 입히는 기법으로는 키지누리(木地塗り), 후키우루시(拭漆), 슌케이누리(春慶塗り) 등이 대표적이고, 목재 표면에 불투명한 칠을 입혀 칠 자체의 장식 효과를 살리는 기법으로는 마끼에(蒔絵), 로이로누리(蝋色塗り) 등이 많이 사용되었다.

6. 소결

일본인은 역사적으로 가구를 사용하지 않는 생활을 해왔으므로, 가구에 대한 관심이 낮은 편이다. 전통적인 일본의 주거는 가구가 없어도 생활이 가능하도록 되어 있다. 다다미방(특히 객실)에는 오히려 가구가 없는 편이 좋게 평가되기도 했다. 집안에 가구를 많이 놓는 것은 천박하다고 하는 생각은 역사적으로 일관되어온 일본인의 주거관이었다. 이러한 주거관을 갖게 된 배경은, 전통적으로 평좌식 생활을 해왔다는 점과 신덴즈쿠리(寝殿造) 주택을 기본으로 주택이 발달했다는 점을 들 수 있다.

일본에서는 고대(5,6C~12C)에 지배층을 중심으로 국부적으로 의자나 침대를 사용하는 생활을 했던 때를 제외하고는 근대에 이르기까지 평좌식 생활을 해왔다. 예외적으로 사원이나 예능용 등으로 의자가 사용되기는 했지만, 이는 특수한 예라고 할 수 있으며, 일상생활에서는 물론 권력을 나타내는 자리도 모두 기본적으로 평좌식이었다. 평좌식은 의자식과 비교했을 때, 상대적으로 사용하는 가구의 종류나 수가 압도적으로 적은 생활양식이다. 의자식 생활의 경우는 적어도 의자, 테이블, 침대는 필요하므로, 가구가 없는 생활은 있을 수 없지만, 평좌식 생활의 경우에는 이러한 것들이 필요 없다. 또한 의자식 생활의 경우 가구는 의자나 침대 등의 신체와 직접 접촉해서 사용되는 가구가 많으므로 자연스럽게 가구에 대한 관심이 높아지게 되지만, 평좌식 생활의 경우는 수납용 가구 정도가 사용되었으므로 물건을 수납하는 기능만 만족시키면 된다는 생각이 일반적이어서 가구에 대한 관심이 낮은 편이다.

신덴즈쿠리 주택은 가구를 조합하여 설치하므로서 집이 완성되는, 건물과 가구가 밀접한 불가분의 관계였으며, 가구는 조합, 조립이 손쉽고, 실내를 아름답게 보이도록 하는 인테리어의 중요한 요소였다. 이 시기가 일본의 주택사를 통해 볼 때 가구문화가 가장 발전한 시대이기도 하며, 일본 가구의 대부분이 이 시기에 형성되었다. 그러나, 건물과 가구가 일체화되어 구성되는 주택구조(쇼인즈쿠리 書院造)가 발달하게 되면서 가구는 건축화 되었다. 중세부터 근세에 이르는 시기에는 칸막이(마지키리 間仕切り)가 완성되고 다다미를 깔게 되므로써 신덴즈쿠리(寝殿造) 주택의 경우와 같이 가구를 배치할 필요가 없어지게 되었으며, 병장용구나 다다미 등은 창호나 바닥재로서 건축에 흡수되게 되었다.

이러한 역사적인 배경을 가진 일본 가구의 특징으로는 첫째, 수납가구를 중심으로 발달이 되었으며, 둘째, 병장용 가구가 발달되었고, 셋째, 가구에 계절이 있다는 점을 들 수 있다.

小泉和子, 和家具, 小学館, p111

①수납용 가구가 발달하였다 : 의자나 테이블이 없는 일본의 주거에서는 수납가구가 가구의 중심이었다. 실용적인수납가구로서 나가모치(長持)나 탄스(箪笥)가 사용되었으며, 선반형태의 실내장식용 가구인 타나(棚)가 중요시 되었다.

②병장(屏障)용 가구가 발달하였다 : 병장용 가구는 수납가구와 더불어 일본 가구 중에서 중요시 되어 발달하였으며, 일본 특유의 형식을 가진 미술적으로도 뛰어난 것들이 많이 있다. 뵤오부(屏風 병풍), 츠이타테(衝立 방의 칸을 막기 위해 세워두는 판으로 만든 가리개), 스다래(簾 발), 토바리(帷 장막), 만마쿠(幔幕 식장이나 회장 등의 주위에 치는 장막), 노렌(暖簾 상점 입구의 처마끝이나 점두에 치는 상호가 든 막) 등이 있다.

③가구에 계절이 있다 : 계절에 따라서, 행사에 따라서 가구를 바꾸는 풍습은 신덴즈쿠리(寝殿造) 주택의 전통에서 유래한 것으로, 특히 병풍에는 연중행사나 계절적인 풍물을 그려 넣은 것이 많으며, 칸막이의 일종인 츠이타테(衝立)는 가운데를 분리할 수 있도록 하여 여름에는 스다래(簾 발)로 겨울에는 쇼오지(障子 장지문)로 바꿀 수 있도록 하기도 했다.

가구 자체의 특징으로는, 기능적인 면에서 시스템화가 발달되어 있다는 점과 의장적인 면에서는 ①직선적이다 ②단순하다 ③좌우비대칭이다 ④마감을 중시한다 ⑤다리나 받침대가 없다 ⑥정면성이 강하다는 점을 들 수 있다.

小泉和子, 和家具, 小学館, p111

일본의 가구는 대부분 시스템 퍼니쳐라고 할 수 있으며, 이동하거나 조합하기 쉽도록 표준치수나 분해방식, 유니트 방식 등이 발달되어 있다. 예를 들어 탄스(箪笥)나 타나(棚)와 같이 실내에 놓는 가구는 3자(尺)를 기준으로 되어 있어서, 같은 3자를 기준으로 지어진 주택에도 잘 맞도록 되어 있으며, 나란히 놓을 때도 편리하고 가구 자체를 2～3개씩 쌓아 놓을 수 있도록 되어 있다. 이동할 때는 하나씩 운반할 수 있도록 되어 있으며, 운반용 손잡이는 조인트 금구의 역할을 할 수 있도록 되어 있다. 이는 완전한 유니트 가구라 할 수 있다. 또한 챠부다이(卓袱台 상)는 접이방식의 넉다운 가구로서, 이레코(入れ子 크기의 차례대로 포개어 안에 넣을 수 있게 만든 그릇이나 상자), 쥬바코(重箱 찬합), 쵸아시(蝶脚 다리의 모양이 마치 나비가 날개를 펴고 있는 것 같은 상) 등에 계속 이어져 오고 있다.

의장적인 특징으로서 우선 일본 가구는 직선적인 구성이 대부분이다. 유럽가구는 몸체나 다리가 곡선으로 이루어진 것이 대부분인 반면 일본이 가구는 사각이 일반적이다. 탁자나 상의 다리 등에 사기아시(鷺脚 가늘고 굽은 다리), 네코아시(猫脚 고양이 다리같이 생긴 책상이나 상의 다리) 등의 곡선을 사용한 것이 있으나, 이는 중국의 영향을 받은 것으로 불교의 의식용이나 제례용으로 한정되어 사용되었다. 이렇게 직선적인 디자인이 발달된 데는, 시스템 퍼니쳐로서 조합하기에는 직선이 편리하기 때문이기도 하고, 그로 인해 감각적으로도 직선적인 심플함을 추구하게 되었다고 할 수 있다.

단순하다는 점은 직선적인 형태 때문이기도 하지만, 가구의 구조 자체가 단순하게 되어 있다는 것을 의미한다. 가구 하나에 사용되는 재료의 종류도 적고 조각 등의 장식도 적은 간소한 디자인이 많다. 이는 유럽이나 중국의 가구와 차별되는 특징이기도 하다.

그러나 일본 가구의 이러한 평판 위주의 단순한 구조가 주는 지루함을 해소시키기 위해 비대칭 구성과 마감의 기법이 사용되었다. 비대칭은 좌우대칭에 비해 불안정하고 조화를 이루기가 어려운 반면 경쾌하고 자연스럽고 자유로운 느낌을 준다. 특히 미묘한 발란스를 잘 이용하여 세련된 긴장감과 역동감을 줄 수 있다. 이러한 비대칭 감각은 가구만이 아니라 일본의 조형에 공통적으로 나타나는 특징이다.

그리고 무엇보다도 가구의 미를 연출하는 것이 마감법이라 할 수 있는데, 중세까지는 우루시(漆 옻칠)로 마무리하는 것이 일반적이었으나 근세 이후에는 나뭇결이 그대로 보이는 마감이 주로 행해져서 세련된 미를 보여준다.

가구에 다리나 받침대가 없는 것은 평좌식 생활 때문이라 할 수 있다. 평좌식 생활의 경우 동선도 눈높이도 낮아지므로 다리나 받침대가 필요 없게 되었다. 그러나 같은 평좌식 생활공간에서 사용되었으나, 조선조 가구의 경우는 가구에 다리가 있는 것은 온돌에 직접 가구를 놓으면 너무 건조되어 변형이 이루어지기 때문이라고 볼 수 있으며, 일본의 경우는 그렇지 않으므로 다리가 없이 직접 바닥에 놓게 되었다.

정면성이 강하다는 특징은 평좌식 생활 때문이라 할 수 있다. 입식생활의 경우 공간에서의 이동이나 움직임이 많은 편이므로 가구를 옆이나 뒤에서 볼 경우가 많아지며 이를 위해 입체적인 디자인의 가구가 발달하지만, 평좌식 생활의 경우 움직임이 제한되므로 정면에 집중한 가구디자인이 발달하였다.

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

제3장

한국, 중국 및 일본 전통가구의 DB 체계

제1절 전통가구의 DB 고찰

제2절 전통가구의 DB 구성

제3절 전통가구의 DB 분류

전통가구의 현대적 활용방안에 관한 연구

제3장 한국, 중국 및 일본 전통가구의 DB 체계

전통가구의 현대적 활용방안에 관한 연구

제1절 전통가구의 DB 고찰

1. 데이터베이스의 특성

데이터베이스란 여러 사용자의 다양한 정보 요구를 충족시키기 위한 자료의 집합이며, 일반적으로 데이터베이스가 지녀야 하는 두 가지 중요한 특성은 통합과 공용이다. 데이터의 통합이란 데이터베이스가 기존의 체제에서 나타나는 문제점을 방지하고, 공용성은 사용자는 각자의 용도에 맞게 사용하는 것을 의미한다.

따라서 데이터베이스를 이용하여 얻어지는 이점으로는 중복된 정보를 감소시키고, 정보의 일관성을 유지, 정보의 공유, 표준화의 용이성, 보안유지 등이 있다.

한국, 중국 및 일본 전통가구의 데이터베이스는 그 내용을 쉽게 접근하여 처리하고 갱신할 수 있도록 구성된 데이터의 집합체다. 현재 일반적인 데이터베이스는 데이터를 다양한 방법으로 접근하고 재구성할 수 있도록 정의한 테이블형의 데이터베이스인 관계형 데이터베이스 (DBMS)형으로 설계한다.

DBMS (database management system) ; 데이터베이스 관리 시스템 DBMS[디비-엠-에스] 는 때로는 데이터베이스 관리 시스템이라고도 불리는데, 다수의 컴퓨터 사용자들이 데이터베이스 안에 데이터를 기록하거나 접근할 수 있도록 해주는 프로그램이다. DBMS는 사용자 요구사항들이나 다른 프로그램의 요구사항들을 관리함으로써, 사용자들이나 다른 프로그램들이 실제로 그 데이터가 저장매체의 어느 곳에 저장되어 있는지를 이해하지 않고서도, 다중 사용자환경의 그 누구라도 데이터를 이용할 수 있다.<자료출처: http://www.terms.co.kr>

일반적인 데이터베이스에는 제품정보, 상품정보, 고객정보 등의 데이터가 수록될 수 있다. 사용자는 데이터베이스 관리도구를 이용하여 데이터의 읽고, 쓰기를 제한하거나, 보고서 작성 또는 고가구 정보를 통하여 디자인업무에 데이터의 활용을 할 수 있다.

2. 데이터베이스의 개발원칙

한국, 중국 및 일본의 데이터베이스를 개발하는데 다음과 같은 원칙을 중심으로 개발하게 되었다.

가. 정확성

소비자가 검색하는 카테고리와 키워드를 중심으로 정확한 인지 표현을 하였다는 의미다. 이는 데이터베이스를 개발하는 가장 중요한 원칙이다.

나. 가독성

한국, 중국 및 일본의 다양하고 많은 정보를 포함하고 있으므로 보다 신속한 정보의 검색과 표현을 하기 위해서 다이내믹한 인터페이스를 설계하였으며 이는 검색자가 원하는 곳으로 이동 및 현재 위치를 통해서 앞으로 행위를 보다 신속하게 하기 위함이다.

다. 다양한 사용성 표현

단순한 그래픽데이터의 표현뿐만 아니라 고가구의 구조적인 표현을 위해서 Web3D 애니메이션을 부가시켰으며 이는 각종 결구법에 해당하는 사항을 중심으로 표현했다. 이는 다양한 카메라의 이동과 컨트롤러에 의해서 보다 사용자의 시각에 맞춰 원하는 정보의 검색을 할 수 있도록 하였다.

라. 가변적 구조체계

데이터베이스는 누적된 데이터의 량을 중심으로 검색자의 검색과 사용성에 따른 표현이 그 데이터베이스의 가치를 인정하고 있다. 본 연구의 데이터베이스 구조는 관리자의 지속적인 관리에 의해서 가변적인 구조를 이행할 수 있도록 관리 모듈을 설계 해두었다. 간단한 예로 국가별 항목 설정은 현재는 한국․중국․일본의 3개국데이터만을 입력해두었으나 다른 국가를 입력할시 관리모듈에서 국가추가를 누르고 해당되는 국가명을 입력하는 순간 입력필드에 국가명이 추가된 것을 알 수 있을 것이다. 국가별 필드는 가변성을 가짐으로써 주의사항이 있다. 국가추가는 전체 가구요소의 데이터 추가 및 삭제를 의미하므로 추가 삭제 및 수정 시에 주의를 해야 한다. 이는 한시적으로 바라보는 데이터베이스의 구조적인 결함을 좀더 폭넓게 장기간에 걸친 구조적 수정을 할 수 있도록 배려하였다는 의미이다

표 .  데이터베이스 개발원칙

개발원칙	의미
정확성	소비자가 검색하는 카테고리와 키워드를 중심으로 정확한 인지 표현을 하였다는 의미
가독성	다양하고 많은 정보를 보다 신속한 정보의 검색과 표현을 하기 위해서 다이내믹한 인터페이스를 설계하여 검색 자가 원하는 정보를 신속하게 검색하기 위함
다양한 사용성 표현	고가구의 구조적인 표현을 위해서 Web3D를 부가시켰으며 이는 각종 결구법에 해당하는 사항을 중심으로 표현하여 사용자의 맞춤형 정보검색이 가능
가변적 구조체계	관리자의 지속적인 관리를 통해서 가변적인 구조를 수정 할 수 있도록 관리 모듈을 설계하여 장기간에 걸친 구조적 수정을 할 수 있도록 배려

3. 데이터베이스의 디자인 방향

현재 개발하려는 고가구의 데이터베이스를 개발하기 위해서는 관계형 구조를 가진 데이터베이스로 구현하여야 한다. 관계형 데이터베이스를 연결시켜주는 표준 검색 언어를 SQL(Structured Query Language)이라고 하는데, SQL 문장은 관계형 데이터베이스에 있는 데이터를 직접 조회하거나 추출하는데 사용된다.

관계형 데이터베이스(relational database):관계형 데이터베이스는 1970년에 IBM의E. F. Cod에 의해 개발되었다. 관계형 데이터베이스는 일련의 정형화된 테이블로 구성된 데이터 항목들의 집합체로서, 그 데이터들은 데이터베이스 테이블을 재구성하지 않더라도 다양한 방법으로 접근하거나 조합될 수 있다.

관계형 데이터베이스는 이용하기가 비교적 쉬우며, 무엇보다도 확장이 용이하다는 장점을 가지고 있다.  데이터베이스를 만든 후 관련되는 응용 프로그램들을 변경하지 않고도, 새로운 데이터 항목을 데이터베이스에 추가할 수 있다

관계형 데이터베이스는 미리 정의된 내용에 따라 테이블들이 구성되는데, 각 테이블은 데이터 종류나 성격에 따라 여러 개의 컬럼(column)이 포함될 수 있다. 예를 들어, 가구 데이터베이스에는 시대, 국가, 용도 등의 컬럼 항목으로 구성된 테이블과 또한 가구개체 오브젝트를 나타내는 테이블이 포함될 것이며, 데이터베이스 사용자는 사용자의 필요에 맞는 형태로 데이터베이스의 내용을 볼 수 있으며 여러 요소별 시대별 구조적 측면에서의 다양한 변수를 포함하고 있기 때문이다.

그림 . 데이터베이스 구축 단계

본 한국, 중국 및 일본의 가구 데이터베이스 연구를 진행하기 위해서 크게 3단계의 진행 과정을 진행하였다. 첫째, 기초 조사 및 현지 조사, 문헌 연구를 기반으로 한 자료조사단계를 중심으로 한국, 중국, 일본의 데이터베이스를 위한 목표를 중심으로 분류 체계를 검토하였다. 둘째, 자료간의 관계를 설정하는 단계로 개체 정보간의 관계 속에 새로운 가능성을 중심으로 프로그램의 설계를 하였고, 셋째, 이는 데이터베이스의 구축과 실행을 중심으로 새로운 정보의 입력과 사용자의 화면 설계에 따르는 데이터 표현으로 새로운 인터페이스를 접목하여 개체간의 데이터 표현을 하였다.

제2절. 전통가구의 데이터베이스 구성

1. 전통가구의 정보

가. 전통가구 데이터베이스 개요

조선조 가구는 사용하는데 충실하고 제격에 맞춰 겉치레를 피하면서 간결하고 실용중심으로 제작, 사용되었다. 과장되지 않고 소박하며 자연스러운 조선조 가구는 작위적으로 아름다움을 앞세우려 하지 않고 실용에 최선을 다하면서 오랜 경험을 통해 가다듬어져 승화된 세련미를 지니고 있다. 독특한 비례감각에 의한 선과 면 의 분할, 직선과 곡선의 조화 등의 조형표현은 현대적 공간과 주택양식에도 어울리는 미적 감각으로 높이 평가되고 있으며, 조선조 가구에 내재되어 있는 한국인의 생활양식과 정신은 오늘날에도 전승되고 있는 소중한 유산이다. 21세기 자원으로 문화가 중요하게 대두되고 있는 현 시점에서 조선조 가구의 DB시스템은 조선조 가구의 특징과 우수성을 현대가구 디자인에 활용하기 위한 연구의 결과로서 흩어져 있는 조선조 가구의 자료를 집대성하고 체계적으로 정리하였을 뿐만 아니라 디자인 요소를 추출하여 현대가구디자인에 실제로 활용 가능하게 정보화 하였다. 이러한 우리의 노력이 한국가구의 문화적 정체성을 확보에 기여하기를 기대한다.

나. 분류의 기준

조선조 가구의 DB시스템은 조선조 가구에 관심이 있는 일반인부터 가구업계 및 교육계 종사자, 학생, 디자이너에 이르기까지 광범위한 계층이 사용할 수 있도록 일반정보검색, 세부정보검색, 활용자료 검색 등 크게 3 개의 영역으로 구분하여 정리되었다.

일반정보 검색(classified by user pattern)은 조선조가구를 유형(사람의 행위패턴)별로 분류하여 시대, 소장사항, 크기 등의 일반적인 정보부터 목적에 따라 세부요소, 및 활용자료를 깊이 있게 검색할 수 있다.

(1)일반정보 검색(classified by user pattern)

조선조가구를 유형(사람의 행위패턴)별로 분류하여 시대, 소장사항, 크기 등의 일반적인 정보부터 목적에 따라 세부요소, 및 활용자료를 깊이 있게 검색할 수 있다.

표 . 일반정보 분류

구분	사람의 행위패턴	행위내용	기기명
사물	Put thing in	사물을 넣는 패턴을 지원하는 가구유형	장
			농
			함
			궤
			약장
			소품
			+추가
	Put things in & on	사물을 넣거나 올리는 패턴을 지원하는 가구유형	서안
			경상
			사방탁자
			문갑
			탁자장
			뒤주
			찬탁
			소품
			+추가
	Put things on	사물을 올려두는 패턴을 지원하는 가구유형	서안
			경상
			탁자
			사방탁자
			진설탁자
			향안
			소반
			소품
			+추가
자세	seating	앉는 패턴을 지원하는 가구유형	걸상
			의자
			방석
			자리
			+추가
	Reclining	기대는 패턴을 지원하는 가구유형	평상
			궤
			보료
			+추가
	Lying	눕는 패턴을 지원하는 가구유형	이부자리
			베게
			퇴침
			죽부인
			+추가
공간	Partition device	공간을 나누는 패턴을 지원하는 가구유형	병풍
			발
			+추가
	Light & Heating	공간을 밝히는 패턴을 지원하는 가구유형	촛대
			등잔
			초롱
			좌등
			등롱
			+추가

(2)세부요소검색(classified by detail)

조선조 가구의 자료를 디자인 활용도가 높은 장식, 문양, 재료, 마감, 구조 등의 세부요소별로 분류하여 각 분야의 아이템별 정보와 적용사례를 검색할 수 있다.

표 . 세부요소별 분류

구분	내용	종류
문양	문양이란 pattern 도안, 무늬, 혹은 양식을 일컬으며, 장식적 기능과 인간의 사상과 감정 등을 표현하는 상징적 기능을 수행한다. 특히 조선시대에는 길상과 부귀를 염원하는 문양이 많이 쓰였다.	자연문
		동물문
		식물문
		기하문
		길상어문
		길상문
		+추가
금구장식	금구장식이란 가구에 부착되는 쇠붙이 일체를 말하는데 조선시대의 금구장식은 구조적인 기능뿐만이 아니라 노출시켜 그 자체로서 장식의 기능을 함께 수행한 점이 큰 특징이다.	경첩
		들쇠
		고리
		붙박이형자물쇠
		은혈자물쇠
		뻗침대
		앞바탕
		거멀감갑이
		광두정
		귀장식
		귀싸개 장식
		+추가
재료	우리나라의 국토는 남북으로 길게 뻗어 있고, 70%이상이 산림으로 이루어져 있기 때문에 수목의 종류가 다양하고 자연의 무늬결도 아름다워서 조선시대 가구의 재료는 주로 목재가 많았다. 그 밖에는 죽재, 나전, 화각, 직포, 지류 등이 부수적으로 사용되었다.	나무(골재)
		나무(판재)
		나무(부재)
		죽재
		지재
		나전
		화각
		포지
		+추가
마감	목기에 있어서의 마감은 목재의 결점을 방지함과 미적인 요구를 충족시키기 위해 베풀어졌다. 검소함을 미덕으로 삼는 조선시대 유교 사상의 영향으로 대부분 목리문이 드러나는 식물성 기름으로 도장을 하고, 소반, 목반 등 물과 자주 접하는 용기에는 칠을 하여 내구성을 도모하였다.	유도장
		칠도장
		색칠
		+추가
구조	조선시대 가구는 구조적으로 판재와 골재로 이루어져 있으며, 접착제를 가급적 쓰지 않고 이음과 짜임의 다양한 결구로 이루어져 있는 것이 특징이다.	판재이음새
		골재이음새
		짜임
		주짜임
		턱짜임
		판짜임
		마대 짜임
		족대짜임
		문판및서랍짜임
		+추가

(3)활용자료검색(classified by design factor)

조선조가구를 디자인 요소별로 분류하여 가구디자인 프로세스에 실제 적용하기에 편리하게 정리된 DB이다.

표 . 활용자료 분류

구분	분류	표현방법
물리적 요소	공간의 효율성	image	Web3D	Text
	구조의 효율성
	사용의 편리성
	보관유지의 효율성
	+추가
형태미학적요소	형	image	Web3D	Text
	색
	조형
	+추가
표식적요소	조작	image	Web3D	Text
	유지
	보관
	+추가
상징적 요소	사회적 지위	image	Web3D	Text
	나이 성별표시
	생활양식
	주술적 상징
	+추가

표  . Group 분류

Field	Type	Null	Key	Default	Eatra
Large	char(1)		PRI
Medium	char(2)
Small	char(3)
LargeName	varchar(30)
Medium Name	varchar(30)
Small Name	varchar(30)

표 . Class 분류

Field	Type	Null	Key	Default	Eatra
Small	char(3)		PRI
Small Name	varchar(5)
Name	varchar(30)
Time	varchar(30)	YES
National	varchar(10)	YES
Sizelnfo	varchar(30)	YES
Source	varchar(30)	YES
Space	varchar(20)	YES

2. 전통가구의 그래픽 데이터

전통가구의 그래픽 데이터는 오래된 데이터를 중심으로 데이터베이스를 구현하는 데에 상당히 많은 어려움이 존재했다. 이런 이유로 고가구의 데이터들이 거의 대부분은 칼라보다는 흑백의 데이터들이 대부분을 차지했고, 이는 다시 복원 작업을 통해서 새로운 그래픽 단도 칼라를 중심으로 사용자에게 표현해 주었다. 그래픽 데이터를 복원하는 작업은 상당히 많은 시간을 요했으며 이는 단순 그래픽 데이터로 현존 가구 데이터와는 차이가 있음을 인지해야 한다.

3. 웹3D 모듈

현재 제작된 가구의 접합방법에 따른 표현을 위해서 3D Module을 개발하여 데이터베이스에 탑재하였다. 단순한 알고리즘으로 web3D는 표현하고 있지만 구조적인 측면으로 분석해보면 상당히 복잡하고 전문적인 데이터의 체계를 포함하고 있다. 이는 사용성에 따른 내용을 면밀하게 검토하기 위한 것으로 보다 현실적인 견지에서 사용자의 이해를 돕고자 web3D는 사용하게 되었음을 밝혀둔다. Web3D 디자인을 위해서는 다음과 같은 공정을 중심으로 제작하게 된다. 해당 프로세스는 일반적으로 제작되는 순서도를 참고 바란다.

그림 . Web3D Design Process

가. 3D 오브젝트 모델링 (3D Object Modeling)

결구법에 해당되는 데이터의 표현 중 그림으로 표현 시에는 한계가 많아서 다수 사용자들을 고려하여 Web3D 플랫폼을 첨부하였다. 이를 위해서 기본적으로 결구법에 해당되는 3D 파일을 제작하여야만 한다. 이때 결구법에 해당되는 애니메이션을 같이 제작하여 3D max 파일에서 Export를 할 때 *.WRL . WRL : Web3D 확장자로 과거 VRML의 대표적인 파일의 유형이다. 파일로 변환하여 제작하게 되는데 이때 제작된 파일 중 매핑소스는 같은 디렉터리 내에 존재할 수 있도록 파일을 저장하기 바란다. 이는 추후 웹데이터베이스 중 매핑소스 필드 내에 저장될 파일이므로 동일한 폴더에서 저장 및 운영 관리한다.

그림 . ISB 제작화면

나. 최적화 (Optimizer)

제작된 파일은 간단한 박스의 구조로 이루어져서 진 것이 대부분이어서 최적화 시킬 필요는 없지만 조립도의 경우에는 복잡한 구조를 이루고 있어서 보다 웹의 활용성을 감안하여 압축을 할 필요가 있다. 이때 압축하여 면의 상태를 면밀하게 검토한 후 적용하여 웹에서 활용하기 바란다.

그림 . 최적화 화면

그림 .Optimizer 화면

다. 컴파일 (Compile)

압축된 파일은 ISA에서 불러들여 Routing Diagram과 함께 생성된 인터랙션 요소를 터치센서와 함께 제작하게 된다.

그림 . ISA 제작화면

그림 . Diagram Routing

라. 제작 (Compress, HTML)

제작 단계에서는 기 제작된 파일을 커맨드 중 Publish를 누르게 되면 가상의 컴파일 된 파일과 매핑소스가 생성되게 되는데 이때 만들어 진 파일을 서버에 연동해서 업로드(Upload)하게 되면 클라이언트 화면에서 라이브러리와 함께 3D View를 볼 수 있다.

마. Web3D의 제어

Web3D의 제어는 크게 3개의 핸들러 들이 있다. 원하는 화면으로 바꾸는 View Point 와 설정해놓은 카메라 앵글로 보게 되는 것과 기타 설정된 애니메이션을 보여주는 모드세팅이 있다.

표 . Controller command

구분	제어명령	내용
View Point	Top	대상 물체의 상단 화면
	Front	대상 물체의 정면
	Left	대상물체의 왼쪽 면
	Right	물체의 오른쪽 면
	Back	물체의 뒷면
	Default	기본설정으로 구성된 화면
Camera	Camera 1	설정된 카메라 1
	Camera 2	설정된 카메라 2
	Camera 3	설정된 카메라 3
Mode	Examine	테스트 화면 설정 모드
	Zoom in/out	카메라 확대 축소
	Pan	카메라의 이동
	Reset	원래 설정된 초기값으로 이동

1)Web3D 기본 Node

VRML에서 가상세계를 구축하는 것을 장면(Scene)을 만든다고 한다. 장면을 구성하는 것은 노드(Node)이고 여러 개의 노드가 모여 하나의 객체를 구성하게 된다. 이런 노드들은 장면 그래프(Graph)라고 하는 계층적 구조 속에서 조정된다. 장면 그래프가 노드를 위한 순서를 정의하는 것이다. 따라서 장면의 앞에 있는 노드가 뒤에 나타나는 노드에 영향을 미칠 수도 있다.

예들 들어, Rotation이나 Material 노드는 장면 내에서 다음에 나오는 노드에 영향을 주게 된다. VRML에는 60개의 노드 타입이 있으며 노드와 노드를 이었을 때 이를 그룹핑 노드(Grouping node)라고 하고, 위쪽의 노드를 부모 노드(Parent node) 그리고 아래쪽 노드를 자식 노드(Child node)라고 한다. 노드들이 어떤 기능을 수행하는 부분이라고 한다면 각각의 노드에는 일련의 필드(Field)를 포함하며 이것은 기능적 요소 값을 가진다. 간단히 Cone 노드에 대해 살펴보면,

표 . Code Node

Cone {

field SFFloat bottomRadius  1

field SFFloat height        2

field SFBool  side          TRUE

field SFBool  bottom        TRUE

}

위의 Cone 노드는 4개의 필드로 되어있고 각각의 필드는 초기값을 가진다. 또 필드는 그 성격에 맞는 타입으로 정의가 되어있다.

VRML에서 규격을 나타내는 모든 숫자는 미터 단위를 사용하며 위의 필드에서 bottomRadius와 height는 각각 1미터와 2미터를 나타낸다. 또한 SFBool 타입으로 지정된 side와 bottom은 TRUE일 때 보이고 FALSE일 때는 보이지 않는 것을 의미한다. 이 외에도 VRML의 필드타입은 총 18가지가 있다. 앞서 나온 Cone 노드를 가지고 실제로 VRML 장면을 구성해 보면 다음과 같다.

표  VRML 필드타입

#VRML V2.0 utf8

Shape {

appearance Appearance {

material Material {

diffuseColor 1 0 0

}

}

geometry Cone { height 3 }

}

유닉스나 PC에서 아스키 파일을 저장할 경우에는 각각 EOL(End OF Line) 문자가 다르기 때문에 읽혀지는데 있어서 약간의 혼란성이 생길 수 있기 때문이다.

Shape 노드는 appearance와 geometry 필드를 가지고 있으며, 각각은 다시 Appearance와 Cone 노드를 포함하고 있다. 이런 식으로 Appearance 노드는 material 필드를 가지고 다시 Material 노드는 diffuseColor 필드를 가진다.

2) VRML 사용목적

Virtual Reality Modeling Language (VRML)은 상호대화적인 3D 오브젝트와 세상을 표현하기 위한 파일 포맷이다. VRML은 인터넷, 인트라넷과 로컬 클라이언트 시스템에 사용하기 위해 설계되었다. 또한 VRML은 3D 그래픽과 멀티미디어의 통합을 위해 범용적인 호환 포맷이 될 수 있다. VRML은 공학과 과학에서의 시각적 표현, 멀티미디어 프레젠테이션, 오락과 교육목적, 웹 페이지 그리고 가상세계를 만드는데 사용할 수 있다.

3) 설계 범주

VRML은 다음과 같은 요구를 만족시킬 수 있도록 설계되었다.

구분	내용	비고
저작성	공통으로 사용되는 다른 3D 파일 포맷을 VRML 파일로 변환하기 위한 자동변환 프로그램뿐 아니라 VRML 파일을 만들고 편집하고 유지할 수 있는 컴퓨터 프로그램의 개발을 가능케 한다.	저작의 용이
조직성	VRML 세계 내에서 동적인 3D 오브젝트를 사용하고 조합할 수 있는 능력뿐 아니라 재사용이 가능토록 한다.	구성의 용이
확장성	VRML에서 명확히 정의되지 않은 새로운 오브젝트 형태도 추가	확장가능
수행능력	다양한 시스템에서 수행이 가능하도록 설계한다. 이는 현재 IBM의 NT 께열 하드웨어와 유닉스를 중심으로 브라우저 테스트를 기반으로 설계
성능	다양한 컴퓨팅 플랫폼에서의 최대한의 성능을 발휘할수 있도록 설계
무한가능성	임의적인 3D 세계의 확장성을 중심으로 기능의 무한 가능성을 중심으로 설계

4) VRML의 특징들

VRML은 텍스트, 사운드, 무비와 이미지와 같은 다른 미디어와의 하이퍼링크된 멀티미디어와 정적이고 움직이는 동적 3D를 표현할 수 있다. VRML 파일을 만들기 위한 저작도구뿐 아니라 VRML 브라우저는 많은 다양한 플랫폼에서 이용할 수 있다.

VRML은 허가된 응용업계에서 기본 표준에 따라 상호운용 가능한 확장형 모듈을 개발해 정의한 새로운 동적 3D 오브젝트를 가능하도록 한 확장 모델을 지원한다. 이것은 VRML 오브젝트와 공통적으로 사용되는 3D 응용프로그래머 인터페이스(API) 특징들 사이에서 쓰인다.

VRML을 본 연구에 적용하여 사용성에 그리고 좀더 남다른 흥미 위주의 서비스를 개발하려는데 그 목적이 있었던 것이 아니라 구조적인 측면의 재해석을 일반인을 포함한 전문인들까지도 이해가 가능하도록 하기 위하여 본 연구에서 VRML을 통해서 자세한 상세 설명을 VRML 애니메이션을 중심으로 설계하게 되었다. 이는 추후 데이터베이스를 검색하게 될 검색자의 궁금증을 자세하게 사용자 중심에서 보여줄 수 있는 계기가 될 것이다.

제3절. 전통가구의 DB 분류

1. 유형별 분류

가.사물

1) Put things in

사람의 행위패턴 중에서 사물을 넣는 패턴을 지원하는 가구유형

분류	내용	비고
장	의류를 보관하는 가구로서 중, 상류 이상의 가정 내방가구를 대표한다. 장은 맨 윗부분이 개판(蓋板), 가운데 부분인 몸체, 아랫부분인 다리로 구성되어 있는데 측이 긴 한 장의 판재로 구성되어 있어 각 층이 분리되지 않는 점이 농(籠)과 다르다. 여닫이로 된 문이 각 층마다 달려 있고, 내부에는 층마다 저고리, 치마 등 부인의 옷을 넣을 수 있도록 빈 공간이 마련되어 있다. 장의 앞면은 쇠목과 동자주에 의해 분활되어 머름칸, 벽손(쥐벽칸), 문갑, 서랍 등으로 이루어져 있으며 이들이 나타내는 독특한 나뭇결은 세련된 조화와 무궁한 변화미를 보여 준다. 또한 모든 장의 내면에는 종이를 발랐는데 고급 장에는 당지(唐紙)를 , 일반 장에는 반물을 들인 청색지(靑色紙)를 발랐고, 조선시대 말기에는 황지(黃紙)를 바르는 것이 유행하였다.
농	장과 더불어 내실용 가구를 대표한다. 농은 아래 위짝이 분리되므로 분리되지 않는 장과는 구별된다. 농(籠)은 한자(漢字)의 표기로서도 알 수 있듯이 윈래 대(竹) 또는 싸리로 엮어 만든 죽기(竹器)를 뜻하는 말이었다. 이러한 죽기나 유기(柳器)는 밑짝이 얕은 것을 상(箱), 밑짝이 뚜껑보다 깊은 것을 농이라 하여 구분한다. 뚜껑이 위에 있으며 시렁 위에 올려 두거나 크기가 같은 것을 두세 개 포개어 놓고 사용하였다. 그러나 포개어 놓고 사용하기 때문에 뚜껑을 여닫으려면 여간 불편하지 않았다. 이러한 불편을 없애기 위해 만주인이 농의 앞면에 문을 달았다는 『임원경제지(林園經濟志)』의 기록으로 미루어 1800년대를 전후한 시기에 나무로 네 기둥과 개판이 없는 수장농이 만들어지기 시작한 듯하다.
함	함은 깊은 밑짝에 운두가 얕은 뚜껑을 경첩으로 연결하여 여닫을 수 있도록 한 상자이다. 귀중품을 넣는 용도로 쓰였기 때문에 자물쇠로 채우도록 되어 있다. 자물쇠는 뚜껑에 부착된 긴 뻗침대(길채 또는 낙목이라고도 함)의 중간에 달린 고리(길목)와 몸체에 박힌 두 배목의 고리를 연결하여 잠그도록 되어 있다. 양측 널에는 들쇠가 있어 이동하기에 편하도록 하였다. 함은 요즈음도 혼인 때 신랑 집에서 혼서지와 채단을 넣어 신부 집에 보내는 데 사용된다.
궤	나무로 된 장방형의 상자를 가리키며 장(欌)을 세우는 궤(櫃), 곧 수궤(竪櫃)라는 한자어로 표기하는데, 대비하여 누워 있는 궤라는 뜻의 와궤(臥櫃)라고도 한다. 궤에는 윗닫이와 반닫이(앞닫이)의 두 가지 형태가 있다. 천판(윗면)을 앞뒤로 절개하여 앞쪽을 문판으로 삼은 것을 위쪽에 문이 있다 하여 윗닫이 라고 하며, 앞면을 상하로 이등분하여 위쪽을 문판으로 삼은 것을 반닫이 또는 앞닫이라 한다.
약장	직업 한의사들은 많은 서랍이 달린 약장을 사용하였다. 중국에서는 위에서 언급한 바와 같이 여닫이문 속에 여러 개의 서랍이 있는 백안(천안)주에 약재를 보관하였으나 우리나라에서는 극약이 아닌 일반약재는 노출된 서랍에 보관하였고 극약은 잠금 장치가 달린 장 또는 그 안에 내재해 있는 서랍에 보관함으로써 좀더 안전하고 간편하게 약재 관리를 하였다.
소품	조선조 가구에는 각종 기물을 수납할 다양한 소품이 발달하였는데 문방소품으로 고비, 문서통, 필통, 연갑 등이, 안방소품으로 좌경, 경대, 반짇고리, 부엌소품으로 찬합, 구절판, 함지 등이 있었다.

2) Put things in & on

사람의 행위패턴 중에서 사물을 넣거나 올리는 패턴을 지원하는 가구유형

분류	내용	비고
서안	서안은 평좌용의 낮은 책상을 말한다. 한자로는 기, 서상(書牀)이라고도 표기한다. 상판의 길이가 짧은 것과 긴 것이 있다. 장소와 용도에 맞추어 독서용으로는 길이가 짧은 것을 사용하고 두루마리에 글을 쓸 때에는 긴 것을 사용한다. 그러므로 작은방과 침실에는 작은 서안을 비치하였다. 상판 아래에는 선반이나 서랍을 달았고 상판이 곧고 판판한 것을 격이 높은 것으로 보았다. 상판의 양끝이 위로 들렸으며 다리와 서랍에 조각 장식을 한 경상은 사찰에서 사용되었던 것으로 민간에서도 사용되었다.
경상	서안은 평좌용의 낮은 책상을 말한다. 한자로는 기, 서상(書牀)이라고도 표기한다. 상판의 길이가 짧은 것과 긴 것이 있다. 장소와 용도에 맞추어 독서용으로는 길이가 짧은 것을 사용하고 두루마리에 글을 쓸 때에는 긴 것을 사용한다. 그러므로 작은방과 침실에는 작은 서안을 비치하였다. 상판 아래에는 선반이나 서랍을 달았고 상판이 곧고 판판한 것을 격이 높은 것으로 보았 다. 상판의 양끝이 위로 들렸으며 다리와 서랍에 조각 장식을 한 경상은 사찰에서 사용되었던 것으로 민간에서도 사용되었다.
사방탁자	서책이나 완상품을 진열하도록 층널을 삼층 내지 오층으로 얹은 네모반듯한 탁자로 문갑이 수평적임에 반하여 수직이 강조된 문방가구이다. 전체에 면(面) 막음이 없이 단순 간결하게 결구 된 것과 가운데 한 층을 장으로 막은 것을 사방탁자라 하며, 하단 또는 중앙의 한 두층에 장을 설치하고 나머지 측널은 세 면이 판재로 막혀 앞면만이 뚫린 양식을 탁자장이라고 한다. 이와 같은 사방탁자의 양식은 중국의 탁자장에서 영향을 받았으나 층널과 기둥으로만 이루 어진 쾌적한 비례의 사방탁자는 간결 단순미의 본보기라 할 수 있으며 중국과 일본에서는 제작하지 않은 일품이다.
문갑	각종 문방 용품과 문서 등을 총괄하여 보관하기 위한 가구로서 문구갑(文具匣)의 준말이다. 문갑의 형태는 중국의 항( ; kang) 위에서 쓰였던 캉문갑의 영향을 받아 형성된 듯하다. 문갑은 평좌 생활에 알맞은 책상 높이 또는 문지방 높이로 제작되는 경우가 많으며 벽면 을 따라 길게 한 쌍을 놓고 사용한다. 문방에 필요한 소품들을 넣기 위한 작은 서랍과 선반으로 이루어진 유형과 서랍과 선반을 네 짝의 두껍닫이 문으로 감춘 형태도 있다. 천판 위에는 필통, 연적, 수석, 난분 등을 늘어놓아 진열대의 구실도 한다.
탁자장	서책이나 완상품을 진열하도록 층널을 삼층 내지 오층으로 얹은 네모반듯한 탁자로 문갑이 수평적임에 반하여 수직이 강조된 문방가구이다. 전체에 면(面) 막음이 없이 단순 간결하게 결구 된 것과 가운데 한 층을 장으로 막은 것을 사방탁자라 하며, 하단 또는 중앙의 한 두층에 장을 설치하고 나머지 측 넓은 세 면이 판재로 막혀 앞면만이 뚫린 양식을 탁자장이라고 한다. 이와 같은 사방탁자의 양식은 중국의 탁자장에서 영향을 받았으나 층널과 기둥으로만 이루 어진 쾌적한 비례의 사방탁자는 간결 단순미의 본보기라 할 수 있으며 중국과 일본에서는 제작하지 않은 일품이다.
뒤주	뒤주는 도궤(度櫃), 두주(斗廚), 두도(斗度) 등으로도 표기하는 곡물을 담아 두는 가구로서 궤의 일종이다. 크기가 다양해 크기에 따라 쌀과 잡곡을 구분해 보관하였으나 일반적으로 큰 것은 쌀뒤주, 작은 것은 팥뒤주라 부른다. 제물다리를 겸한 튼튼한 네 기둥(부출)의 상하에 두툼한 쇠목을 대어 만든 방형의 울거미 에 홈을 파서 두꺼운 널을 끼워 몸판으로 삼았다. 위측 쇠목은 몸체보다 돌출되어 네 귀에 서 귀틀을 이루었다. 천판은 이등분하여 위로 곡식을 꺼내도록 한 형태가 경기, 서울 지역에 서 사용되는 기본형이다. 앞면은 무늬가 좋은 나무의 통판을 끼웠으며 측면과 후면은 두세 쪽의 판자를 대었다.
찬탁	찬탁은 그릇과 음식을 얹기 위해 2, 3층으로 된 것으로 층널과 장으로 놋그릇, 사기그릇 등의 하중을 받기 위해 튼튼하게 짜여진 점이 특징이다. 2, 3층을 올려 만들었다. 층널의 뒤가 막힌 유형은 탁자장이라 부르며, 층널로만 구성된 진설탁자도 있다.
소품	조선조 가구에는 각종 기물을 수납할 다양한 소품이 발달하였는데 유형에 속하는 것으로는 연상과 목판 등이 있다.

3) Put things on

사람의 행위패턴 중에서 사물을 올려두는 패턴을 지원하는 가구유형

분류	내용	비고
서안	서안은 평좌용의 낮은 책상을 말한다. 한자로는 기, 서상(書牀)이라고도 표기한다. 상판의 길이가 짧은 것과 긴 것이 있다. 장소와 용도에 맞추어 독서용으로는 길이가 짧은 것을 사용하고 두루마리에 글을 쓸 때에는 긴 것을 사용한다. 그러므로 작은방과 침실에는 작은 서안을 비치하였다. 상판 아래에는 선반이나 서랍을 달았고 상판이 곧고 판판한 것을 격이 높은 것으로 보았 다. 상판의 양끝이 위로 들렸으며 다리와 서랍에 조각 장식을 한 경상은 사찰에서 사용되었던 것으로 민간에서도 사용되었다.
탁자	일반적으로 널리 사용되지는 않았으나 궁궐, 관공서에서의 집무와 연회, 재력 있는 선비, 사대부의 서재에서 사용되었다. 정방형, 원형, 접도록 된 연궤(燕 )라는 중국식 탁자와 좁고 긴 탁자, 대라고 하는 연회용 소 탁자가 있다.
사방탁자	서책이나 완성품을 진열하도록 층널을 삼층 내지 오층으로 얹은 네모반듯한 탁자로 문갑이 수평적임에 반하여 수직이 강조된 문방가구이다. 전체에 면(面) 막음이 없이 단순 간결하게 결구 된 것과 가운데 한 층을 장으로 막은 것을 사방탁자라 하며, 하단 또는 중앙의 한 두층에 장을 설치하고 나머지 세 면이 판재로 막혀 앞면만이 뚫린 양식을 탁자장이라고 한다. 이와 같은 사방탁자의 양식은 중국의 탁자장에서 영향을 받았으나 층널과 기둥으로만 이루 어진 쾌적한 비례의 사방탁자는 간결 단순미의 본보기라 할 수 있으며 중국과 일본에서는 제작하지 않은 일품이다.
향안	향안은 향탁 또는 향상이라고도 한다. 향안은 제탁과 형태나 짜임기법이 유사하나 서랍이 달린 것과 중대에 층널을 얹은 형태가 있으며 크기는 향제구를 놓기에 충분한 크기로 제작되었다.
소반	소반은 식기를 받치고 옮기는 기능의 쟁반이면서 방안에서 들어와서는 그대로 상이 되도록 긴 다리를 달아 놓아서 상과 반의 기능을 동시에 가진다. 이는 침실, 거실, 식당이 분리되지 않는 좁은 공간에서 여러 용도로 활용하기에 적당한 지극히 합리적이며 편리한 생활 용구인 것이다. 좁은 방에 식사를 위한 상을 따로 비치하지 않고 식사 후 상을 내가도록 고안한 이중 기능의 소반은 조선인의 기발한 생각의 소산이고 우리만의 특색이다. 이러한 이중 기능이 바로 소반의 가장 큰 특징이기도 하며 소반의 크기와 구조를 결정짓는 요인이 되기도 하였다. 보통 민가에서 일반적으로 쓰이는 소반의 크기는 그 너비가 50센티미터 내외이다. 이 너비 는 한 사람이 소반을 받쳐들고 부엌에서 마당을 지나 대청을 오르고 그곳을 건너 안방이나 사랑방으로 옮겨가는 데 과다한 힘을 쓰지 않도록 계산된 크기이다. 높이는 25-30센티미터 내외로서 몸을 심하게 구부리지 않고 팔을 움직이는 데도 불편함이 없다.

나.자세

1)Seating

사람의 행위패턴 중에서 앉는 패턴을 지원하는 가구유형

분류	내용	비고
걸상	조선시대에는 좌식생활이 정착되어 의자는 일반적으로 많이 쓰이지 않았다. 중국제의 등직(藤織) 좌판이 달린 의자를 상품으로 여겼으며 대로 만든 의자는 여름철에 사용되었다. 지금의 스툴(stool)이라고 하는 원형, 방형의 돈(墩)도 함께 사용되었다. 교의(交椅)는 원래 접을 수 있는 의자이나 제례용 교의는 접을 수 없으며 제사 때 신위를 모시는 일종의 의자를 가리키는 용어이다. 이 교의는 앉기 위한 실용적인 목적보다 신주를 봉안하기 위한 목적이므로 좌판이 좁으며 또 신좌의 위치가 제상보다 높아야 하므로 다리가 길다. 탈상 전 궤연( 筵)을 모실 때 쓰는 교의는 영좌교의(靈座交椅)라 하며 제사와 사당에서 쓰는 교의를 신좌교의(神座交椅)라 부른다.
의자	조선시대에는 좌식생활이 정착되어 의자는 일반적으로 많이 쓰이지 않았다. 중국제의 등직(藤織) 좌판이 달린 의자를 상품으로 여겼으며 대로 만든 의자는 여름철에 사용되었다. 지금의 스툴(stool)이라고 하는 원형, 방형의 돈(墩)도 함께 사용되었다. 교의(交椅)는 원래 접을 수 있는 의자이나 제례용 교의는 접을 수 없으며 제사 때 신위를 모시는 일종의 의자를 가리키는 용어이다. 이 교의는 앉기 위한 실용적인 목적보다 신주를 봉안하기 위한 목적이므로 좌판이 좁으며 또 신좌의 위치가 제상보다 높아야 하므로 다리가 길다. 탈상 전 궤연( 筵)을 모실 때 쓰는 교의는 영좌교의(靈座交椅)라 하며 제사와 사당에서 쓰는 교의를 신좌교의(神座交椅)라 부른다.
방석	방석은 보료와 같은 방식으로 만들었으나 크기가 작고 정방형으로 되어 있어 한 사람이 깔고 앉기 위한 것이다. 안석(案席)은 등받이로서, 윗부분은 대개 높고 낮은 산의 모양으로 되어 있다. 원래 우모 (牛毛)나 돈모(豚毛)를 넣어 만들었으나 근래에는 솜을 넣고 누벼서 만든다. 한가운데에는 장수를 상징하는 글씨를 수놓거나 거북 학 봉황 등을 수놓기도 하였다.

2) Reclining

사람의 행위패턴 중에서 기대는 패턴을 지원하는 가구유형

분류	내용	비고
평상	우리나라의 실내용 평상은 예외적인 경우도 있으나 대체로 다리와 난간이 낮고 바닥은 목재의 띠살 또는 대쪽을 대었으며 두 개를 맞붙여 사용하도록 된 짝 평상이 특징이다. 여름에는 띠살 사이로 통풍이 되어 시원하며 겨울에는 온돌의 온기가 띠살 사이로 올라와 따뜻하다. 평상 위에 여름에는 등자리를, 겨울에는 보료나 담요를 깔았다. 이 평상은 두 쪽으로 나뉘어져 이동하기에 편하며 겨울에는 방에, 여름에는 누마루에 두었으며 때에 따라 밖에서도 사용하였다.
궤	궤는 앉았을 때 겨드랑이 밑에 괴어 편히 기대게 하는 제구이다. 신라 문무왕 때 중국 한나라 공광(孔光)의 고사에 의거하여 삼국통일에 공을 세운 김유신에게 궤장을 하사하기 시작한 이래 고려를 거쳐 조선시대 말기까지 그 전통은 계승되었다. 궤의 양식은 크기(총길이 70∼75cm, 높이 30cm 정도)가 크고 장식은 운문, 영지 등을 음 양각하였으며 양측에 투공된 판각의 다리를 대었다. 일반인들의 사제 팔걸이는 규모가 작으며 투각한 세 개의 다리로 상하 판을 연결시켰고 위아래의 구별 없이 사용할 수 있다.
보료	보료는 요의 한 종류로, 솜이나 짐승의 털로 두껍게 속을 넣고 헝겊으로 싸서 선을 두르고 가장자리를 누벼서 단단하게 만든 아랫목 깔개이다. 안방과 사랑방 등의 방치레로 항상 깔아 두는데, 낮에 그 위에 앉거나 눕는데 사용하지만 밤에 잠을 잘 때는 사용하지 않는 것이 일반적이다.

3) Lying

사람의 행위패턴 중에서 눕는 패턴을 지원하는 가구유형

분류	내용	비고
이부자리	이불과 요, 한자로는 금(衾)이라 한다. 궁중용 이부자리는 색상이나 천이 매우 화려하고 다양하였다. 천은 겨울용으로 도류단(挑榴緞), 가을용으로는 수화주(水禾紬)·왜주(倭紬) 등의 명주류, 여름용으로는 별문영초나 항라같은 얇은 옷감을 사용하였다. 이불깃은 여름에는 모시, 그밖에는 서양사를 썼다. 일반 서민용 이부자리의 형태는 지금과 크게 다르지 않다. 착포단이라는 이불과 부포단이 라는 요가 있는데 계절에 따라 구별되었다. 이불의 겉감은 대개 무명·광목·명주 등이 쓰였고, 안감은 겉감과 어울리는 색으로 주로 무명류를 많이 썼다. 색깔도 남성용은 감색·흑 색·적색 등을, 여성용은 초록색·적색·분홍색 등을 썼으며, 동정은 두 경우 모두 흰색이었다. 요의 솜은 대개 목화솜을 넣었다.
베게	잠을 자거나 누울 때 머리를 괴는 물건. 한국의 전형적인 베개는 헝겊으로 길게 만들어 왕겨·메밀껍질로 속을 넣고 봉한 뒤, 흰색 무명천으로 호청을 만들어 겉을 싼 것이다. 양쪽 모는 둥글게 하여 밀려나지 않도록 조를 넣어 만든다. 베갯모는 베개의 양 끝 부분을 막는 마구리로 자수를 놓은 것, 목재판에 양각한 것, 나전칠기, 회각등의 재료를 이용해 사용자의 취향에 맞게 사용되었다. 일반적으로 네모난 것은 여자용, 둥근 것은 남자용인데 이것은 천원지방(天圓地方)의 하늘 은 둥글고 땅은 네모나다 해 음양(陰陽)을 뜻하는데 간혹 여자들이 둥근 것을 사용하기도 한다. 대부분이 무늬가 시문된 얇은 판재 (8~12mm)의 둘레에 여러 개의 구멍을 뚫어 꿰매거나, 주석으로 테두리를 견고하게 두른 후 베갯잇무늬는 보이게 하고 주변의 주석은 덮어 씌워 고정시키는 형식을 취한다.
퇴침	퇴침(退枕)은 휴식할 때 사용하는 베개로서, 주로 사대부집 사랑방에서 남성들이 낮잠을 잘 때 사용하였다. 궤 모양으로 만든 남성용 베개. 빗 등을 넣어두는 서랍이 달린 것이 많고 베개보다는 탄력이 있다. 목침은 오수(牛睡)를 즐기거나 잠시 누울 때 베개 대신 사용하는 것으로, 특히 여름철에 시 원하며, 단단한 목질(木質)은 후두부(後頭部)에 지압(指壓)효과를 주기도 하여 노인들이 즐겨 사용했다. 목침은 실내 분위기에 어울리도록 작고 맵시 있게 만들어지는데, 두꺼운 통목 을 그대로 사용하거나 네 귀를 판재로 짜서 맞춘 것, 무늬를 투각한 것, 자개로 시문한 것, 대나무로 짠 것 등 다양한 종류가 있다.
죽부인	죽부인은 죽궤라고도 불리는데, 죽침과 더불어 여름철을 시원하게 즐기기 위한 사랑방 소품이다. 죽부인은 대나무를 열두 날로 쪼개어 연통처럼 안을 비워 놓고 짜여진다. 따라서 여름철에 죽부인을 안고 자면 살과 살이 닿지 않아 통풍이 잘 되어 시원하게 잠을 잘 수 있었다. 또한 크기가 사람의 몸통 정도여서, 안고 자기에 적당해 죽부인이라는 이름이 생겼다는 기록이 있다. 특히 죽부인은 대를 물려 사용하지 않는다는 관습이 있어 현재 남아 있는 유물이 많지 않다.

다.공간

1) Partition device

사람의 행위패턴 중에서 공간을 나누는 패턴을 지원하는 가구유형

분류	내용	비고
병품	병풍은 방안이나 마루에 둘러쳐서 바람을 막거나 시선을 가리기 위한 가리개로서, 벽면을 장식하나 경우에 따라서는 주술적인 목적으로 사용되기도 하였다. 병풍은 직사각형의 나무틀에 종이를 여러 겹 바른 후 그림이나 서예, 자수 등을 붙여 장식하였다. 폭과 폭은 주로 직물로 접합시켜, 접었다 폈다 하기에 편리하도록 되어 있는데, 두 폭인 것에서부터 네 폭, 여섯 폭, 여덟 폭, 열 폭, 열두 폭 등 짝수로 구성되어 있다. 특히 두 폭으로 된 것을 보통 가리개 또는 곡병(曲屛)이라 하고, 머리맡에 치는 얕은 병풍을 머리병풍 또는 침병(枕屛)이라고 부른다.
발	발은 여름에 보통 창문이나 대청에 쳐서 시선이나 햇볕을 막고 바람을 통하게 하기 위해 갈대 또는 가늘게 쪼갠 대나무를 실로 엮어서 만든 가리개를 말한다. 한여름 뙤약볕을 가리는 발은 방 안 분위기를 시원스럽고 아늑하게 만들고 외부로부터의 시선을 막아 준다. 발의 문양과 금속발걸이와 매듭이 이루는 조화 때문에 발은 벽면 장식용으로도 쓰인다.

2) Light & Heating

사람의 행위패턴 중에서 공간을 밝히는 패턴을 지원하는 가구유형

분류	내용	비고
촛대	조선시대에는 초가 희귀하여 사회계층에 따라 사용에 엄격한 제한이 있었고, 초 생산량이 수요에 못 미쳐 가격이 비쌌기 때문에 각종행사나 상류층의 실내조명에 사용되었다. 의식용이 아닌 일상용도로 사용된 촛대는 사각이나 원형의 받침 위에 등간주를 세우고 그 위에 다양한 초받침을 세운 상태였다.
등잔	토기, 청자, 백자 등의 도자기나 금석, 옥석을 사용하여 만든 단순한 사발을 말하며, 등잔을 거는 등경을 등잔이라고도 한다. 등경은 사각, 팔각, 원형의 밑판에 기둥을 세우고 그 위에 이단, 삼단의 층을 내어 등잔높이를 자유롭게 높이거나 낮출 수 잇도록 고안되었다. 밑판에는 성냥이나 부젓가락을 놓아두거나 때로는 재떨이로도 사용되었으며, 서랍을 만들어 소도구를 넣기도 하였다. 크기는 주택의 구조와 좌식 생활을 하는 사람의 앉은키에 맞추어 40-90㎝정도였으며, 재료는 주로 목재를 사용하였다.
초롱	내부에 초를 넣어 다닐 수 잇는 휴대용 등기로서 의식에 사용하는 사촉롱, 야행용인 지촉롱, 순라꾼이 순라를 돌 때 사용하던 조족등 등이 있다. 형태는 사각, 육각, 팔각으로 되어 있고, 접을 수 있는 것도 있는데, 사군자, 산수화, 화조화 따위를 채색하기도 하는 등 형태가 다양하고 장식적 요소가 많이 사용되었다. 손잡이는 끈을 모아 만든 것, 죽절마디를 이용하여 만든 것, 나무로 조각한 것 등이 있는데 손잡이의 안을 비워서 여분의 초를 끼울 수 있도록 만들었다.
좌등	좌등은 직육면체 모양의 등 내부에 초나 등잔을 넣어 방안에 놓아두는 조명기구이다. 좌등은 네 옆면의 안쪽에 비단이나 한지를 바르고, 한 면은 문으로 열 수 있도록 구성되어 있다. 크기는 대개 1m내외이며 사각, 육각, 팔각형 등으로 되어있고 아래쪽에는 서랍이 있어 부싯돌, 초 등을 넣어 두었다.
등롱	등롱은 처마밑 이나 외부 기둥에 거는 외부 조명기구로 양각등, 사방등, 유리등, 청사, 홍사초롱이 있다. 주로 옥등석으로 제조되어 권위를 상징하거나 종교적 성격을 띄고 있다.

2. 세부요소별 분류

가.문양

문양이란 패턴(pattern) 도안, 무늬, 혹은 양식을 일컬으며, 장식적 기능과 인간의 사상과 감정 등을 표현하는 상징적 기능을 수행한다. 특히 조선시대에는 길상과 부귀를 염원하는 문양이 많이 쓰였다.

분류	내용	비고
자연문	우주공간의 생활환경에서 볼 수 있는 영원과 수복을 상징하는 문양이다.
동물문	동물문은 서수(瑞獸)문양이라 하며, 길조(吉兆)를 상징하는 동물을 골라 장식문양에 도입한 것이다.
식물문	식물문은 영초문양(靈草紋樣)이라 하며, 부귀(富貴), 다남(多男), 수복(壽福)을 상징하는 뜻에서 널리 애용되었다.
기하문	기하문(幾何紋)이란 어떠한 물체의 형태를 문양화한 것이 아닌, 직선과 곡선이 자유롭게 연속되거나 교체되어 질서있는 아름다운 구성을 이루는 문양을 말하는 것이다. 곡선으로만 이루어진 문양도 있지만 직선으로만 구성된 것 이 더 많이 보이며, 다른 문양 의 테두리나 윤곽선을 만드는 대문(帶紋)의 역할을 하는 것도 있다.
길상어문	길상어문(吉祥語紋)은 한자가 지니는 표의적(表意的)인 성격으로부터 유래된 것으로 문학숭상의 기풍이 있던 조선사회에서 크게 애호받았다. 특히 임진왜란 이후 오랜 전 란과 정치적 혼란 속에서 재앙을 면하고 평안과 복을 구 하고자 하는 민간의 염원이 가구의 장식문양에 반영되었다.
길상문	세습적 신분사회에서 오는 불평등, 경제적 빈곤, 정치적 불안, 유교의 영향으로 만연된 권위의식 등으로 당대의 위축되고 억압된 사회 속에서 평화적이고 목가적인 분위기를 희구하면서 나온 문양이다.

나.금구장식

금구장식이란 가구에 부착되는 쇠붙이 일체를 말하는데 조선시대의 금구장식은 구조적인 기능뿐만이 아니라 노출시켜 그 자체로서 장식의 기능을 함께 수행한 점이 큰 특징이다.

분류	내용	비고
경첩	장, 농, 반닫이 등의 문짝과 옆널에 부착되어 문짝을 개폐할 수 있도록 하는 금구장식이다. 경첩은 다른 장식보다 기능성이 강하기 때문에 모양의 면화가 풍부하다. 옛날에는 칡, 끈 따위로 묶었는데 대추나무, 박달나무를 거쳐 철기시대부터 무쇠로 대용됨으로써 장식적으로 발달되었다.
들쇠	가구를 들어 올리거나 서랍, 문짝을 열 수 있도록 만든 손잡이를 말한다. 초기에는 가구 자체를 들어 올린다는 의미에서 들쇠라는 이름을 사용한 것으로 보이나 점차 장식성을 띤 손잡이까지 총칭하게 된 듯하다.
고리	고리는 둥근 형의 손잡이나 자물쇠를 거는 손잡이를 지칭하며 배목이나 사슬에 달려 있는 것이 통례이다. 고리의 용도는 문이나 서랍을 개폐할 때 손잡이로 쓰이거나 또는 문짝의 배목에 부착되어 문을 걸어 두고 자물쇠를 채울 수 있는 기능을 하는 등 매우 다양하다. 형태는 이미 철기시대부터 건축 부문에 나타난 환의 형태에서 찾아 볼 수 있다.
붙박이형 자물쇠	문짝이나 서랍을 잠그는데 사용되는 금구로서 도난 방지 및 비밀 유지의 용도 외에도 가구 장식의 미적 효과를 돋구는데 사용되었다. 조선시대에 이르러서 보석함에서부터 이불장, 옷장, 책장, 뒤주, 창고문, 대문 등 용도와 규모에 따라 매우 다양하게 또 기능에 맞게 사용되었다.
은혈자물쇠	서랍과 문짝 표면에서 자물통 없이 잠그게 된 형태이다. 장식적 미가 강하며 앞바탕의 장식 역할과 더불어 자물통의 역할을 하고 있다.
뻗침대	뻗침대는 문짝에 붙어 있는 긴 막대모양으로 들쇠를 겸한 장식용 쇠붙이이다.
앞바탕	앞바탕이란 가구의 문을 여닫는 손잡이나 자물통을 받쳐주는 밑판을 말한다.
거멀감잡이	감잡이는 접합 부분이나 모서리 부분을 잡아 줄 뿐만 아니라 외부와의 접촉시 자구 자체의 모서리를 보호해 주는 역할을 하는 금구장식이다.
광두정	광두정이란 못자국을 감추어 주는 구조적 기능과 허전한 공간을 조화있게 메꾸는 미적 기능을 하는 금속장식이다.
귀장식	귀장식 역시 감잡이와 같이 귀부분을 구조적으로 잡아주면서 외부로부터 물체가 가구에 직접 닿는 것을 방지하고, 또한 장식을 겸한 역할을 하게 된다. 감잡이가 가구의 두 부분을 구조적으로 잡아주는데 반하여 귀장식은 가구의 귀(모퉁이)부분만을 잡아주는 것이 차이점이라 할 수 있다.
귀싸개장식	귀싸개장식 역시 감잡이와 같이 귀부분을 구조적으로 잡아주면서 외부로부터 물체가 가구에 직접 닿는 것을 방지하고, 또한 장식을 겸한 역할을 하게 된다. 감잡이가 가구의 두 부분을 구조적으로 잡아주는데 반하여 귀장식은 가구의 귀(모퉁이)부분만을 잡아주는 것이 차이점이라 할 수 있다.

다.재료

우리나라의 국토는 남북으로 길게 뻗어 있고, 70%이상이 산림으로 이루어져 있기 때문에 수목의 종류가 다양하고 자연의 무늬결도 아름다워서 조선시대 가구의 재료는 주로 목재가 많았다. 그 밖에는 죽재, 나전, 화각, 직포, 지류 등이 부수적으로 사용되었다.

분류	내용	비고
나무(골재)	가구에서 구조상 힘을 받쳐주는 뼈대 구실을 하는 주와 대 외에 동자, 쇠목, 가루동자, 옆쇠목, 벽선 등에 사용되는 목재를 말한다. 즉 단단하고 결이 고운 소나무, 배나무, 느티나무, 단풍나무, 물푸레나무, 가래나무, 호도나무, 은행나무가 골재로 선택된다.
나무(판재)	두께가 얇고 너비가 넓은 판자와 두께가 두껍고 너비가 넓은 판대기가 있다. 판자는 넓은 결과 확연한 목리가 있는 오동나무, 소나무, 뽕나무, 잣나무의 곧은 결 판재를 쓰고 판대기는 오동나무, 전나무, 소나무를 쓴다.
나무(부재)	가구의 문판(門板)처럼 나뭇결의 기이한 형상을 취하여 치장하려는 목적에 사용된다. 기이한 무늬결을 가진 것일수록 성질이 고약해서 웬만큼 두터운 판자가 아니고는 뒤틀리기 잘하기 때문에 적합하지 않다. 이런 나무를 판재로 이용할 때에는 오동나무나 소나무, 분비나무 등의 내공재를 뒤에 받쳐서 쓰게된다. 그래서 문목의 실제 두께는 1-2㎜밖에 안되며 , 이같이 부판하는 기술은 톱질의 묘미로 얻어지는 것이다.
죽재	죽은 수목보다 생장이 빠르고 재배 관리가 용이하여 매우 경제적으로 이용이 가능했다. 또한 나이테가 없이 곧고 속이 비었으며 마디가 있는 죽의 구조와 갈라지기 쉬운 성질을 지녔으나 반면에 탄력성이 매우 강하고 건조에 의한 수축이 적으며 목재에 비해 인공적으로 착색하거나 변형하기가 쉽기 때문에 일찍부터 가구와 공예품에 널리 사용되었다.
지재	닥나무를 원료로 하여 만든 한지로 함, 궤 등의 가구를 제작하거나 소쿠리, 채상과 반짇 그릇이나 실첩 등의 생활 소품을 만들었다.
나전	나전이란 조개껍질을 가공하여 여러 가지 문양으로 잘라 물건 위에 붙이는 것을 말하며, 자개를 붙이고 옻칠을 하여 만든 공예품을 나전칠기라 한다.
화각	화각은 투명도가 높은 소의 뿔을 종이장 같이 얇게 펴서 각지로 만든 뒤에 각지 뒷면에다 화려한 채색 그림을 그려 이것을 나무제품인 백골의 표면에 붙여서 장식한 일종의 목공예술이다. 중국에서 전래된 이 기법이 조선시대까지 계승되어 오는 과정에서 얻기 힘든 남방산 대신에 투명도 높은 양질의 한우의 뿔을 사용하여 발전시키게 된 것이다.
포지	가구나 작은 장식품을 장식하는 용도의 옷감을 말한다. 여성소품인 노리개나 수저집을 만들기도 하였고, 함이나 궤에 배접하여 천의 부드러운 질감과 아름다운 색채를 띤 가구도 제작되었다.

라.마감

목기에 있어서의 마감은 목재의 결점을 방지함과 미적인 요구를 충족시키기 위해 베풀어졌다. 검소함을 미덕으로 삼는 조선시대 유교 사상의 영향으로 대부분 목리문이 드러나는 식물성 기름으로 도장을 하고, 소반, 목반 등 물과 자주 접하는 용기에는 칠을 하여 내구성을 도모하였다. 그러나 궁중에서 쓰는 가구나 특수 귀족층의 내실용 가구에는 주칠, 흑칠 등의 칠을 올려 화려하게 장식하였다.(이조 목공가구의 미)

분류	내용	비고
유도장	식물성기름은 나무의 표면에 엷은 막을 형성하여 트는 것을 막아 기물을 보호하고 은은한 광택과 자연 무늬결을 잘 살릴 수 있어 아름다움을 더해줄 뿐만 아니라 도장도 간편하여서 일반적으로 많이 쓰이는 마감법이다. 보통 식물성 기름을 헝겊에 적셔 여러 차례 문질러주면 표면이 매끄러워지고 나뭇결이 두드러지는 효과를 볼 수 있다. 도장에 사용된 기름에는 채유(採油), 두유, 호도유가 있다.
칠도장	칠기는 신라시대 유물로도 발견되는 것으로 미루어 아주 오랜 옛날부터 우리 기물에 많이 쓰인 투명도장이다. 옻칠이나 옻나무 껍질에서 즙을 받은 것으로 생칠과 숙칠로 구분된다. 우리나라의 칠은 강유를 겸하고 윤택이 나며 두껍게 오르는 장점이 있으며 주로 소반 과 고급가구에 사용되었다.
색칠	불투명 도장인 색칠에는 주칠, 황칠, 흑칠 등이 있는데, 주칠은 장, 궤 도장함 등에 주로 칠하고 궁중용으로 사용되었으며 일반 민가에는 주칠과 황칠을 사용했다. 특히 가구의 홍장은 정비(正妃)외에는 사용하지 못하게 하였다. 흑칠은 나전에 많이 쓰였고 장, 농, 함, 연상에도 쓰였다. 칠기는 동백기름으로 닦으면 더욱 윤이 난다고 한다.

마.구조

조선시대 가구는 구조적으로 판재와 골재로 이루어져 있으며, 접착제를 가급적 쓰지 않고 이음과 짜임의 다양한 결구로 이루어져 있는 것이 특징이다.

분류	내용	비고
판재이음새	문갑이나 책상의 천판과 같이 일상 사용하는 판의 이음새에는 '홈'과 '턱'으로 된 '쪽매'와 '촉'의 구조로 접합된다.
골재이음새	탁자의 기둥이나 일반가구의 골재가 되는 부분은 '홈'과 '턱'을 기반으로 한 장부이음으로 접합한다.
짜임	가구몸체의 뚜껑부분을 천판 이라 하고 이 부분의 짜임을 말한다. 천판이란 뚜껑과 몸체가 꼭 같이 연속된 윗부분의 판이고 개판이란 몸체보다 큰 따로 대어진 윗부분의 판을 말한다. 그밖에 끝 부분이 위로 말려 올라간 두루마리형 천판도 있다.
주짜임	조선조 가구의 기둥(柱) 재료들은 대부분, 강한성질의 목재를 골라 형태가 길고 가늘어도 충분히 힘을 받을 수 있게 사용되었다. 이것은 우리나라 같이 수목의 종류는 많아도 거목은 부족한 환경에서 용재에 적합한 구조를 창출한 좋은 예라 할 수 잇을 것이다. 기둥의 짜임새에는 맞짜임, 연귀짜임, 턱짜임새가 있다. 기둥과 쇠목이 짜여지는 부분에는 풍혈이라는 장식조각을 부착시킨 것이 많은데, 이는 장방형의 직선적인 조선조 가구에 유일하게 곡선적인 형과 선을 가진 것으로서 부드러움과 조화를 제공하는 역할을 한다,
턱짜임	조선조 가구의 기둥(柱) 재료들은 대부분, 강한 성질의 목재를 골라 형태가 길고 가늘어도 충분히 힘을 받을 수 있게 사용되었다. 이 것은 우리나라 같이 수목의 종류는 많아도 거목은 부족한 환경에서 용재에 적합한 구조를 창출한 좋은 예라 할 수 잇을 것이다. 기둥의 짜임새에는 맞짜임, 연귀짜임, 턱짜임새가 있다. 기둥과 쇠목이 짜여지는 부분에는 풍혈이라는 장식조각을 부착시킨 것이 많은데, 이는 장방형의 직선적인 조선조 가구에 유일하게 곡선적인 형과 선을 가진 것으로서 부드러움과 조화를 제공하는 역할을 한다,
판짜임	판이란 두께에 따라 그 짜임이 다른데, 얇고 넓은 것은 그 자체로는 구조적인 힘을 못 받기 때문에 사변에 변자나 기둥을 대고 여기에 끼워 맞추는 구조를 하고 있고, 두껍고 넓은 것은 판 자체로도 구조적인 힘을 받을 수 있어 그 자체의 짜임을 쓰고 있으며, 농이나 문갑, 반닫이 서안 등에서 흔히들 볼 수 있으며. 연귀짜임, 사개짜임, 맞짜임, 촉짜임, 장부짜임 등으로 구분된다.
마대짜임	마대란 농이나 장의 받침다리 전체를 칭하는 말로서 구조적으로 몸체와 분리되어 있는 것과 그렇지 않은 두 종류가 있다.
족대짜임	다리를 구조적으로 보강하기 위한 짜임새로 족대에 장부구멍을 만든 후 다리에 촉을 만들어 끼우고 아래쪽에서 쐐기를 박았다.
문판 및 서랍짜임	문판과 서랍의 짜임은 어느 가구나 동일한 구조를 보여주고 있는데 서랍의 짜임은 현대의 것과 별 차이를 보이지 않고 잇는데 이는 서랍의 사용연대가 잛음를 의미한다.

3. 추가정보 분류

가.물리적 요소

가구의 물리적 기능을 위한 디자인 요소를 말한다.

분류	내용	비고
공간의 효율성	가구의 물리적 기능을 위한 디자인 요소 중에서 공간사용의 효율성을 증진시키는 기능요소가 포함된다.
구조의 효율성	가구의 물리적 기능을 위한 디자인 요소 중에서 가구자체의 구조적 견고함이나 가구의 용도를 효율적으로 수행하기 위한 요소가 포함된다.
사용의 편리성	가구의 물리적 기능을 위한 디자인 요소 중에서 사용시 신체의 편안함이나 일의 효율을 증대시키는 요소
보관유지의 효율성	가구의 물리적 기능을 위한 디자인 요소 중에서 보관 및 유지의 효율성을 위한 요소

나.형태 미학적 요소

조형요소(형, 색, 질)와 조형원리 등 형태와 미학에 관련된 디자인 요소를 말한다.

분류	내용	비고
형	조형요소(형, 색, 질)와 조형특성 등의 디자인 요소 중에서 형에 관한 것으로 몸체의 형태와 다리 유형, 문의 개폐방식 등을 검색할 수 있다.
색	조형요소(형, 색, 질)와 조형원리 등 형태와 미학에 관련된 디자인 요소를 말한다.
조형원리	조형원리 중에서 조선조가구의 대표적 조형특성인 면 분할의 비례미와 직선과 곡선의 조화 등의 사례를 검색할 수 있다

다.표식적 요소

가구의 기술적인 기능이나 조작 및 취급, 보관에 관한 정보를 사용자에게 시각적으로 설명하는 디자인 요소를 말한다.

분류	내용	비고
조작	가구의 기능이나 조작에 관한 정보를 사용자에게 사인이나 형태 등을 통하여 시각적으로 설명하는 디자인 요소
유지	가구의 유지·보수에 관한 정보를 사용자에게 사인이나 형태 등을 통하여 시각적으로 설명하는 디자인 요소를 말한다.
보관	가구의 보관에 관한 정보를 사용자에게 사인이나 형태 등을 통하여 시각적으로 설명하는 디자인 요소를 말한다.

라.상징적 요소

가구의 실질적인 기능 외에 가구를 소유함으로부터 얻을 수 있는 정신적, 사회적 만족감 같은 기능을 위한 것으로서 시대적 배경이나 지역에 따라 새롭게 해석되는 디자인 요소. 상징적 요소는 제품과 연관된 문화, 사회의 역사, 사용방법을 위한 문맥(context)안에서 의미가 있으며, 사용자 개개인의 인생스타일의 존중과 차별화를 존중하는 디자인 요소이다.

분류	내용	비고
사회적 지위	가구를 통하여 사회적 지위를 표현하고 궁극적으로 정신적, 사회적 만족감을 얻을 수 있는 요소
나이 성별 표시	가구에 나이, 성별을 표시하는 요소
생활양식	가구에 사용자의 취향, 행위패턴 등을 반영할 수 있는 요소
주술적 상징	가구에 사용자나 그 사회의 염원을 표현하여 그 염원이 실행되기를 바라는 필요를 충족시키는 요소

전통가구의 현대적 활용방안에 관한 연구

전통가구의 현대적 활용방안에 관한 연구

제4장

한국, 중국 및 일본 전통가구의 데이터베이스 구축

제1절 데이터베이스 시스템 환경설정

제2절 관리자 환경시스템

제3절 오리엔탈 데이터베이스 사용자 환경

제4장 한국, 중국 및 일본 전통가구의 데이터베이스 구축

전통가구의 현대적 활용방안에 관한 연구

제1절. 데이터베이스 시스템 환경 설정

1.하드웨어 구성

가. 서버(Server)

1)웹호스팅(Web Hosting)

제작된 웹 서비스를 위해서는 웹 서버가 셋업 되어 있어야 한다. 웹 서버의 하드웨어 사양으로는 아래 도표와 같다. 하드웨어 사양으로 현재 1.5 GHz를 CPU로 하며 메모리는 523M를 사용하였으며 하드디스크의 요량은 40G 이상으로 세팅 되어있다.

표 . Web Hosting Server 기준사양

항목	값
OS	Microsoft Windows 2000 Server
Version	5.0.2195 Service Pack3 빌드 2195
System Model	AWRDACPI
Processor	X86 Family 15 Model Stepping 7 Genuineltel 1514 Mhz
Memory	523,764Kb
H. D. D	40G

2)데이터베이스(Database)

본 연구를 위해서 데이터베이스 서버로는 아래와 같은 기준사양으로 테스트를 했다. 하드웨어 사양으로는 웹 서버와 대등하며 OS는 Microsoft Windows 2000 Server와 Microsoft SQL Server 7.0으로 데이터베이스 서버 세팅을 해서 테스트를 했다.

표 . Database server 기준사양

항목	값
OS	Microsoft Windows 2000 Server
Version	5.0.2195 Service Pack3 빌드 2195
DB	MS-SQL 7.0
System Model	AWRDACPI
Processor	X86 Family 15 Model Stepping 7 Genuineltel 1514 Mhz
Memory	523,764Kb
H.D.D	40G

나. 클라이언트(Client)

다음은 데이터베이스의 정보와 웹서버에 저장된 정보를 사용하게 되는 클라이언트 기준사용표로 OS는 Microsoft Windows 2000 Professional을 기준으로 했으며 사용을 위해서는 웹서버에서 제공하는 플러그인(Plugin)을 설치하여야 한다.

표 . Client 기준사양

항목	값
OS	Microsoft Windows 2000 Professional
Version	5.0.2195 Service Pack3 빌드 2195
System Model	AWRDACPI
Processor	X86 Family 15 Model Stepping 7 Genuineltel 1514 Mhz
Memory	523,764Kb
H.D.D	40G

2.소프트웨어 구성

가. ISA (Internet Scene Assembler)

ISA(Internet Scene Assembler) : 3D 데이터에 인터랙션 요소를 부가하는 소프트웨어로 러시아의 패러럴그래픽스 제작, 세계 표준규격 VRML97 호환 Web3D 소프트웨어

ISA (Internet Scene Assembler)는 web3D Module을 위해서 사용하였으며 현재 가구의 결구법에 대한 자세한 화면을 사용자에게 제공하게 된다. 이는 러시아 패러럴그래픽스(Parallel Graphics)에서 개발된 소프트웨어로 현재 가장 경제적으로 활용되고 있는 인터랙션 인터페이스 개발 툴이다.

그림 . ISA (Internet Scene Assembler) View

나. ISB (Internet Space Builder)

ISB(Internet Space Builder) : 인터넷의 공간을 설계할 때 사용되는 프로그램

ISB(Internet Space Builder)는 공간을 만들어주는 개발 툴로서 구조적인 측면의 결구 형식을 가상의 공간 속에서 표현 시켜주는 툴이다.

그림 . ISB Vie

다. IMO (Internet Modeling Optimizer)

IMO(Internet Model Optimizer) : 제작된 3D파일을 압축할 때 사용되는 프로그램

IMO는 인터넷 상태에서 즉 온라인 상태에서 정보의 유통이 원활하게 될 수 있도록 3D 데이터의 압축을 도와주는 툴이다. 이는 본 연구의 가장 핵심적인 데이터를 원활하게 사용하게 해주는 사용성과도 접목이 되어 있으므로 한 개의 데이터 오브젝트가 300Kb이상을 넘지 않을 수 있도록 데이터의 압축을 적극 권장한다.

그림 . IMO View

라. VR PAD 2.0

VRPAD는 원활한 사용성을 위해서 프로그래밍 하는 코딩단계 솔루션이다. 이는 사용자의 사용성을 위해서 마우스의 이벤트 핸들러 등을 필드별로 관리 운영 할 수 있도록 되어 있다.

그림 . VRPAD View

마. 업로드 컴포넌트(Upload Component)

파일을 업로드하기 위한 업로드컴포넌트(Upload Component)는 현재 웹서버의 관리시 데이터의 업로드를 위해서 연동하는 프로그램을 기본으로 구매하여 설정하고 덱스트 업로드(DEXTUPLOAD)를 기준으로 데이터베이스 프로그램의 설계를 했다. 기본 설정 업로드(Upload Component)를 보유하고 있다면 데이터베이스 및 ASP의 업로드(Upload) 명령을 수정하여 사용하기 바란다.

그림 . DexUpload Component View

3.웹 프로그램 구성

가구 데이터베이스를 위해서 기본적인 환경을 IBM환경을 설정하여 개발하였다. 웹환경의 구성을 보면 다음과 같다.

가.NT Server 2000

마이크로 소프트의 NT Server 2000으로 기본 IIS (Internet Information Server)를 포함하고 있어서 인터넷 서비스를 기본으로 할 수 있다. 물론 이밖에도 많은 서버 서비스를 가지고 있으나. 본 서버는 현재 운영하려는 웹서비스를 위한 OS 이다.

OS (operating system) ; 운영체계

운영체계는 부트스트랩 프로그램에 의해 컴퓨터 내에 최초로 적재된 후에, 컴퓨터 내의 다른 프로그램들을 관리하는 프로그램이다. 여기서 다른 프로그램이란 응용프로그램들을 말한다. 응용프로그램들은 정의되어 있는 응용프로그램 인터페이스(API)를 통해 서비스를 요청함으로써 운영체계를 이용한다.

그림 . NT Server View

나.액티브서버페이지( ASP : Active server Page)

ASP는 마이크로소프트 IIS (Internet Information Server)만의 특징이지만, 서버측 스크립트가 평범한 HTML 페이지를 만들어 주기 때문에 거의 모든 브라우저에서 무리없이 사용될 수 있다. 가구데이터베이스를 위해서 ASP 파일은 HTML 파일 내에 비쥬얼베이직 스크립트(VBScript)나 자바스크립트(JScript)가 포함되도록 작성한 다음 파일 확장자를 “.asp"로 활용하여 사용하였다.

다. MS-SQL(Microsoft SQL)

마이크로 소프트의 데이터베이스 서버 제품으로 현재 가구데이터 베이스를 위해서 MS-SQL 7.0을 기준으로 개발하였다. 이는 3장에서 개발된 여러 변수들을 레코드와 함께 입력할 수 있는 저장고 역할을 한다.

그림 . MS SQL View

라. IIS 5.0 (Internet Information Server)

NT Server 기본 탑재되어 있는 서버 서비스로 웹호스팅시 홈페이지 및 기타 ASP파일을 응용스크립트와 함께 실행하는 역할을 해주며 많은 사용자들을 동시에 접속하여 다량의 정보를 웹페이지 형식으로 구현해주는 역할을 한다.

그림 . IIS Server View

4. 시스템 설치 및 실행

본 연구의 구체적인 방법은 첫째 선행연구에서 연구되어진 내용을 토대로 한국 중국 일본의 고가구 데이터를 분석하고 사용자의 취향을 분석하여 데이터베이스 기반연구에 임했으며 둘째, 가구 콘텐츠의 구성 및 유형별 데이터베이스 방향을 설정하고 셋째 가구 디자인 데이터베이스를 웹서버 시스템의 구축과 관련 산업과의 연계정보 체계 및 호환시스템의 구현을 통해 데이터베이스를 구현하였으며 넷째로 데이터의 입력 및 관리시스템의 입력 모듈을 개발하여 테스트하였다.

본 프로그램을 개발하기 위해서 웹을 기반으로 하여 리빙디자인랩(livingdesignlab)사이트를 오픈 하였으며,  구성으로는Introduction, Product, News, Clients, Gallery로 구성되어 있으며 본 사이트의 가장 중요한 검색기능에는 크게 카테고리별로 일반정보의 검색, 세부요소별 검색, 활용자료별 검색으로 분류하였다. 다음 그림은 기본적인 사이트 맵으로 현재 데이터베이스의 이용을 위해서 사용자 인증을 부여하고 원하는 정보를 검색하는 OFDB(Oriental Furniture Data Base)를 보유하고 있다.

http://www.livingdesignlab.org

그림 .  Site Map

가. 프로그램의 설정

본 프로그램을 사용하기 위해서는 데이터베이스 전문가가 필요하다. 하지만 그 과정이 간단해서 일반 사용자도 설치과정을 이해하면 설치가 가능할 수 있다. 이를 테면 현재 웹호스팅 서비스를 하는 사설단체를 찾아 적정유지비용을 포함해서 설치하면 간단하다. 그러나 로컬(Local)에서 설치를 원한다면 웹서버와 데이터베이스서버를 세팅하고 준비해야만 한다. 물론  한 대를 준비해서도 사용은 가능하지만 누적되는 데이터양을 감안한다면 두 대를 준비하는 것을 권장한다. 준비된 시스템의 운영체제는 NT를 설치하면 된다. NT OS를 선택한 목적은 범용성에 있다.  데이터베이스 프로그램의 구현을 위해서 데이터베이스 프로그램 설치와 웹연동 프로그램의 설치가 있다. 먼저 데이터베이스의 설치를 위해서는 MS-SQL을 설치해야만 한다. 설치한 후 데이터베이스의 이름을 LDL라고 명명해서 데이터베이스를 생성해야만 한다. 물론 원하는 데이터베이스 명을 활용해도 상관없도록 환경설정 프로그램을 설계해두었다. 다음 파일을 중 DBNAME을 수정하면 원하는 데이터베이스 명으로 활용이 가능하다. 주의 사항은 LINUX는 대소문자를 인식하므로 대문자 소문자를 확인하며 사용하여야 한다. 마찬가지로 $DB_USERID 아이디를 "USERID"에 입력하고 DB_PASSWD를  "PASSWD"에 입력한다. 데이터베이스의 입력시 사용되는 아이디와 패스워드는 호스팅 사용자 아이디, 패스워드와 다를 수 있다는 점을 감안하여야 한다.

표 .Config.inc File

<?

//     File Name : config.inc (global variables definition)

//    Written By : Jang,Jung-Sik

//      Dated On : 2003. 1. 23

$BBS_NAME = "Livingdesignlab";     //  이름

$BBS_VERSION = "2.3.1";             // version number

$ADMIN_EMAIL = "kmjanggo@kookmin.ac.kr";  //  관리자e-mail address

//

// 데이터베이스 지정

//

$DB_TYPE = "mssql";            // MySQL, MSSQL

$DB_SERVER = "db3.netis.net";

$DB_NAME = "LDL";

$DB_USERID = "USERID";

$DB_PASSWD = "PASSWD";

//

// 최대값 지정

//

$MAX_LIST_NORMAL = 20; // 게시만 목록 최대 표시 갯수 (Normal)

$MAX_LIST_QnA = 15; // 게시만 목록 최대 표시 갯수 (Q&A)

$MAX_LIST_ANNOUNCE = 5; // 초기 화면 공지 목록 표시 갯수

$MAX_UPLOAD_FILE_SIZE = 8 * 1048576; // 8 MB

//

// Session Timeout 시간 설정

//

$SESSION_TIMEOUT = 60;

?>

생성된 데이터베이스를 중심으로 웹서비스를 하게 되는데 나머지 한 대에 설문조사용 패키지를 압축을 해제하고 웹서비스를 연동하면 된다. 본 데이터베이스의 기본 시스템의 구성은 다음 표와 같다.

그림 . 데이터베이스 시스템 구성

나. 데이터베이스 프로그램 실행

리빙디자인랩(livingdesignlab)은 웹연동 프로그램이므로 웹서비스가 되면 실행된다고 볼 수 있다. NT의 IIS가 바로 웹서비스로 실행중이면 도메인의 기타 관련 기본 설정 파일은 Default.asp 라고 설정해두면 된다. 이는 기본 설정항목이므로 변동하지 않고 사용하는 것을 권장한다. 설정된 항목의 폴더를 웹상에서 열어보면 웹상에서 기본페이지가 보이는 것을 볼 수 있다. 검색을 위해서는 다양한 정보를 지속적으로 업그레이드 해 나아가야 한다. 이는 데이터베이스의 성격상 다양한 정보의 검색이 용이하도록 설계 되어져 있으므로 설치시 및 실행시에는 보다 범용성이라는 측면과 데이터베이스의 용도별 목적을 감안하여 하드디스크의 용량을 선택할 필요가 있다.

1)Plugin

플러그인 (Plug in) : 플러그인은 웹 브라우저의 일부로서 쉽게 설치되고 사용될 수 있는 프로그램을 말한다. 넷스케이프 브라우저를 통해 사운드나 동영상을 재생하거나, 다른 기능들을 수행해주는 추가 프로그램들을 다운로드하여 설치하고, 또 정의할 수 있도록 한 것이 그 시초

Web3D 그래픽 렌더링 엔진인 코토나(Cortona 4.0)와 플래쉬 플레이어(flash player)  가 요구된다. 현재 플러그인을 실행하기 위한 제원은 다음 표와 같다.

코토나4.0(Cortona 4.0) : 러시아 패러럴그래픽스 사에서 제작된 Web3D엔진으로 사용자와 인터랙션 요소를 적용하기 적합한 프로그램

플래쉬 (Flash) : 매크로미디어 사에서 제작된 다이나믹 그래픽 플러그인으로 생동감 있는 동영상을 벡터 그래픽과 래스터 그래픽을 토대로 제작할 때 사용

표 . 구동 시스템 제원

구분	기본사양
Operating system	Microsoft(r) Windows(r) 98/ME/2000/XP or Windows NT(r) 4.0.
Web Browser	Internet Explorer 4.0 or a later version, Netscape Navigator 4.0 or a later version, or Mozilla 1.0 or a later version.
Computer	Pentium(r) 90 MHz or faster processor.
RAM RAM (Random Access Memory) : 램은 컴퓨터 프로세서가 빠르게 접근할 수 있도록 하기 위하여, 운영체계, 응용프로그램 그리고 현재 사용 중인 데이터를 유지하고 있는 저장 장소 Random Access Memory	minimum of 16 MB
Free disk space	6 MB of hard disk space for program files
Display	SVGA/256 colors. The 800x600 high color mode is recommended
Input devices	Mouse and keyboard, joystick optional.
Sound card	optional

제2절. 관리자 환경 시스템

1.관리자 로그인(Administrator Login)

가. 관리자 설정

오리엔탈 퍼니춰 데이터베이스로 들어가기 위해서는 초기화면에서 “Admin"이라고 아이디를 입력한 다음 “암호” 를 입력하면 관리자 화면으로 전환된다. 이는 사용자 계층을 관리자와 일반 사용자로 구분지어 설정해 두었으므로 관리상 용이하다.

그림 . 로그인 호

그림 . 로그인 화면

그림 . 관리자 화면

최종적으로 관리자 화면이 생성되면 좌측에 기본 컨텐츠의 구조를 상단에는 풀다운 메뉴로 설정되어 있음을 알 수 있다. 기본 컨텐츠의 구성으로는 행위패턴, 라이브러리, 회원관리, 국가추가로 구성되었다.  자세한 사항은 다음 항에 각 항목별 관리를 참고하기 바란다.

2.항목별 관리

가. 행위패턴 관리

・메인그룹 추가

현재 메인그룹의 추가는 관리자 초기 페이지에 들어오게 되면 나타나도록 설정했다. 이는 가장 상위에 해당하는 카테고리이기 때문이며 메인그룹추가라는 텍스트를 누르면 추가정보를 입력할 수 있는 항목이 나타나게 된다. 이때 현재 설정된 유형이 아닌 다른 국가별 특성에 따르는 국가별 가구 그룹을 적용시만 할 요소가 있다면 카테고리에 해당하는 텍스트를 입력하고 해당 그룹 설명을 입력하고 그룹생성을 입력하면 하단부에 그룹이 추가된 것을 볼 수 있게 된다.

그림 . 메인그룹 추가

・서브카테고리 생성

데이터베이스의 서브그룹페이지의 생성은 기본적으로 아래 그립과 같은 구성을 가지고 있다. 제조국, 명칭, 그리고 해당 데이터의 설명을 입력할 수 있도록 설계했으며, 하단에 저장, 삭제, 취소, 리스트 의 버튼을 통해서 새로운 카테고리를 저장하고, 선정된 카테고리를 삭제 하며, 입력한 데이터를 취소하고 해당 필드 내 서브카테고리를 볼 수 있는 리스트 검색버튼이 설정되어 있다.

그림 . 서브 그룹의 수정

- 제조국

기본적으로 한국, 중국, 일본에 해당하는 텍스트가 풀 다운으로 나타나게 되는데 이는 본 연구에서 한국, 중국, 일본에 해당하는 범위만을 동일시대에 다루고 있기 때문이다.  카테고리의 설정 중 국가별로 그 특성이 상당히 차이가 있음을 연구를 진행하면서 알게 되었다. 이로 인하여 제조국가의 해당 필드를 유동성을 가지게 해두었다. 제조국의 선택을 나중에 국가별로 특성이 있는 카테고리만 출력할 수 있도록 하였다.

- 명칭

서브카테고리의 명칭에는 기본적으로 한국어, 일어, 중국어, 영어를 사용할 수 있도록 설계했으며 추가 국가가 나타나면 국가별 데이터를 자동 생성할 수 있도록 설계해 두었다. 기본적으로 해당필드를 전부 채워서 입력해야하는 것이 아니므로 있는 필드 내에 데이터가 출력될 수 있도록 설정해두었다.

- 설명

서브그룹의 설명은 하위 카테고리의 설명을 의미하며 각종 검색시 사용자의 화면에 서브그룹의 출력을 나타나게 되기 위해서 설명을 입력할 수 있도록 설계했다.

・데이터의 입력

데이터 입력은 각 메인 카테고리별로 리스트 화면이 나타나게 설계되어 있는데 마지막 하위 디렉터리까지 4단계의 서브그룹을 설정할 수 있도록 되어 있다. 이때 마지막 그룹에 우측에 가구추가라는 항목이 있는데 이를 선택하면 가구데이터를 입력하는 항목이 나타나게 된다.

그림 . 서브카테고리별 리스트화면

- 가구추가

가구추가 버튼을 누르면 다음 그림과 같은 가구데이터의 입력 폼이 나타나게 된다.

그림 . 가구데이터의 입력 폼

자세한 입력 데이터의 유형으로는 다음 표로 정리했다.  대표적으로 가구요소 한 개에는 다음과 같은 항목들이 저장되게 된다.

- 제조국

기본적으로 국가추가항목에서 입력되었던 항목이 출력되게 되는데 풀다운 키를 누르고 선택하면 된다.

- 명칭

명칭은 해당 가구의 명칭을 의미하며 각종 특수 물자를 입력할 수 있도록 하였다.

- 시대

시대 항목으로는 기본적으로 19세기와 같은 숫자와 글씨를 전부 입력할 수 있도록 설계했다.

- 크기

크기는 가로, 세로, 높이를 기준으로 밀리미터(mm)를 기준으로 입력할 수 있도록 설계했다. 이는 사용자화면에서 키워드 종합검색시 나타나는데 이때 해당 필드별 즉, 가로, 세로, 높이를 기준으로 오름차순과 내림차순으로 정리할 수 있도록 설계하기 위해서 3개의 항목으로 설계했다.

- 출처

데이터를 찾았던 참고문헌으로 해당데이터를 입력하면 된다.

- 조형적 특성

조형적 특성으로는 구조적인 해석과 재료 문양 및 금구장식 마감 등을 텍스트로 입력할 수 있도록 설계했다. 여기서 마지막에 사용된 재료와 중복되는 항목이 있는데 여기서의 재료는 주재료를 포함하고 있는 보조 재료를 의미한다.

- 요소별 특성

요소별 특성으로는 행위패턴, 물리적, 형태미학적, 표식적, 상징적 요소를 입력하는 필드가 있는데 행위패턴 또한 국가별 상황에 따라서 다른 해석이 나타날 수 있기 때문에 중첩된 항목으로 다른 해석을 할 수 있도록 설계 했다.

- 이미지

이미지는 제이피쥐(*.JPG),와 쥐아이에프(*.GIF) 파일 타입을 설정하였으며 기본적으로 640 * 480 비례를 기준으로 작성되었다.

- 도면

도면파일은 해당 도면을 그림파일 즉, 제이피쥐(*.JPG),와 쥐아이에프(*.GIF) 파일 타입을 설정하여 출력하도록 하였으며 이 파일도 입력된 도면파일이 있다면 나타나게 설계하였다.

- 구조

라이브러리에 기본적으로 적용된 구조의 국가선택이 나타나게 되는데 이때 해당 국가를 누르면 우측에 하위메뉴가 나타나게 된다. 이때 나타난 하위데이터를 선정하기만 하면 기본적으로 구조가 일반사용자의 정보 선택시 나타나게 된다. 이때 다른 점은 각종 구조를 일반인이 이해하기 힘든 부분이 많기 때문에 보다 이해도를 높이기 위해서 Web3D를 설계해서 구조를 자세히 관찰할 수 있도록 설계했다.

- 문양

라이브러리에 기본적으로 적용된 문양의 국가선택이 나타나게 되는데 이때 해당 국가를 누르면 우측에 하위메뉴가 나타나게 된다. 구조와 마찬가지로 이때 나타난 하위데이터를 선정하기만 하면 기본적으로 문양이 일반사용자의 정보 선택시 나타나게 된다.

- 금구장식

라이브러리에 기본적으로 적용된 금구장식의 국가선택이 나타나게 되는데 이때 해당 국가를 누르면 우측에 하위메뉴가 나타나게 된다. 구조와 문양과 마찬가지로 이때 나타난 하위데이터를 선정하기만 하면 기본적으로 금구장식이 일반사용자의 정보 선택시 나타나게 된다.

- 구조

라이브러리에 기본적으로 적용된 구조의 국가선택이 나타나게 되는데 이때 해당 국가를 누르면 우측에 하위메뉴가 나타나게 된다. 이때 나타난 하위데이터를 선정하기 만 하면 기본적으로 구조가 일반사용자의 정보 선택시 나타나게 된다.

표 . 가구데이터 입력 필드

구분	데이터입력필드
제조국	한국, 중국, 일본 .... < 국가추가시 자동생성 >
명칭	해당국가별 언어 사용
시대	숫자, 글자 입력가능0
크기	( )mm x ( ) mm x ( ) mm
출처	해당데이터의 출처
조형적 특성	구조해석	해당 필드 내 설명
	재료	해당 필드 내 설명
	문양 및 금구장식	해당 필드 내 설명
	마감	해당 필드 내 설명
요소별 특성	행위패턴	해당 필드 내 설명
	형태미학적	해당 필드 내 설명
	표식적	해당 필드 내 설명
	상징적	해당 필드 내 설명
이미지	이미지 파일 입력
도면	이미지 파일 입력
구조	국가선택 --> 하위카테고리 선택 (라이브러리의 구조항목 연동)
문양	국가선택 --> 하위카테고리 선택 (라이브러리의 문양항목 연동)
금구장식	국가선택 --> 하위카테고리 선택 (라이브러리의 금구장식항목 연동)
재료	국가선택 --> 하위카테고리 선택 (라이브러리의 재료항목 연동)

나. 라이브러리 관리

・라이브러리 카테고리 추가

현재 라이브러리 카테고리 추가는 관리자 풀다운 메뉴의 리이브러리 추가 페이지에 들어오게 되면 나타나도록 설정했다. 이는 구조, 문양, 금구장식, 재료와 같이 상위에 해당하는 카테고리이기 때문이며 그룹추가라는 텍스트를 누르면 추가정보를 입력할 수 있는 항목이 나타나게 된다. 이때 현재 설정된 유형이 아닌 다른 국가별 특성에 따르는 국가별 가구 그룹을 적용시만 할 요소가 있다면 카테고리에 해당하는 텍스트를 입력하고 해당 그룹 설명을 입력하고 그룹생성을 입력하면 하단부에 그룹이 추가된 것을 볼 수 있게 된다.

그림 . 라이브러리 리스트 화면

・서브카테고리 생성

데이터베이스의 서브그룹페이지의 생성은 기본적으로 아래 그립과 같은 구성을 가지고 있다. 제조국, 명칭, 그리고 해당 데이터의 설명을 입력할 수 있도록 설계했으며, 하단에 저장, 삭제, 취소, 리스트 의 버튼을 통해서 새로운 카테고리를 저장하고, 선정된 카테고리를 삭제 하며, 입력한 데이터를 취소하고 해당 필드 내 서브카테고리를 볼 수 있는 리스트 검색버튼이 설정되어 있다.

기본적으로 한국, 중국, 일본에 해당하는 텍스트가 풀 다운으로 나타나게 되는데 이는 본 연구에서 한국, 중국, 일본에 해당하는 범위만을 동일시대에 다루고 있기 때문이다.  카테고리의 설정 중 국가별로 그 특성이 상당히 차이가 있음을 연구를 진행하면서 알게 되었다. 이로 인하여 제조국가의 해당 필드를 유동성을 가지게 해두었다. 제조국의 선택을 나중에 국가별로 특성이 있는 카테고리만 출력할 수 있도록 하였다.

그림 . 서브그룹의 생성

- 명칭

서브카테고리의 명칭에는 기본적으로 한국어, 일어, 중국어, 영어를 사용할 수 있도록 설계했으며 추가 국가가 나타나면 국가별 데이터를 자동 생성할 수 있도록 설계해 두었다. 기본적으로 해당필드를 전부 채워서 입력해야하는 것이 아니므로 있는 필드 내에 데이터가 출력될 수 있도록 설정해두었다.

- 설명

서브그룹의 설명은 하위 카테고리의 설명을 의미하며 각종 검색시 사용자의 화면에 서브그룹의 출력을 나타나게 되기 위해서 설명을 입력할 수 있도록 설계했다.

- 라이브러리 추가

라이브러리 추가 버튼을 누르면 다음 그림과 같은 라이브러리 데이터의 입력폼이 나타나게 된다.

・라이브러리 데이터의 입력

데이터 입력은 각 메인 카테고리별로 리스트 화면이 나타나게 설계되어 있는데 마지막 하위 디렉터리까지 3단계의 서브그룹을 설정할 수 있도록 되어 있다. 이때 마지막 그룹에 우측에 라이브러리 추가라는 항목이 있는데 이를 선택하면 라이브러리 데이터를 입력하는 항목이 나타나게 된다.

그림 . 라이브러리 데이터 입력 폼

자세한 입력 데이터의 유형으로는 다음 표로 정리했다.  대표적으로 라이브러리 요소 한 개에는 다음과 같은 항목들이 저장되게 된다.

- 보유국가

기본적으로 국가추가항목에서 입력되었던 항목이 출력되게 되는데 풀다운 키를 누르고 국가를 선택하면 된다.

- 명칭

명칭으로는 한국어, 중국어, 일어, 영어를 사용할 수 있도록 설계하였으며, 있는 필드 내에 데이터만 일반사용자는 출력되게 제작하였다. 명칭은 해당 가구의 명칭을 의미하며 각종 특수 물자를 입력할 수 있도록 하였다.

- 설명

서브그룹의 설명은 라이브러리의 설명을 의미하며 각종 검색시 사용자의 화면에 서브그룹의 출력을 나타나게 되기 위해서 설명을 입력할 수 있도록 설계했다.

- 특징

서브그룹의 특징은 라이브러리의 설명을 의미하며 각종 검색시 사용자의 화면에 서브그룹의 출력을 나타나게 되기 위해서 설명을 입력할 수 있도록 설계했다.

- VRML

해당파일을 구체적으로 설명하기 위해서 VRML 파일을 저장하도록 제작하였다.

-VRML_map

VRML 파일의 매핑 소스를 저장하도록 설계했다.

표 . 라이브러리 입력폼

구분	해당필드
보유국가	한국, 중국, 일본, ...
명칭	한글( ), 일어( ), 중국어( ), 영어( )
이미지	*.JPG ; *.GIF
설명	이미지 설명
특징	특징 설명
VRML	VRML 파일
VRML_Map	VRML 매핑소스 파일

다. 회원관리

・사용자 그룹

가구 데이터베이스를 위해서 사용자의 그룹은 관리자의 목적에 맞도록 설정할 수 있게 설계했다. 기본적으로는 연구소를 운영하면서 기업과 학생, 교수, 그리고 관리자 그룹으로 네 가지 그룹으로 설정하였으나 기본 설정으로는 관리자와 일반 사용자로 그룹을 설정하였다. 그룹설정 항목에서 추가 설정을 하면 원하는 그룹설정을 추가 할 수 있다. 또한 필요하지 않은 그룹을 삭제 할 수 있다.

그림 . 사용자 입력 폼

・사용자 리스트

사용자의 리스트를 볼 수 있는 항목으로 사용자의 그룹별 소트가 가능하도록 설계되어져 있다. 이는  그룹별 소트를 통해서 원하는 이들의 정보를 적재적소에 필요요인을 추가검색해서 추가정보를 발송하려는데 그 목적이 있다.

그림 . 사용자 리스트 화면

라. 국가추가

현재 오리엔탈 퍼니춰 가구데이터베이스의 대상 국가로는 한국・중국・일본이다. 그러나 확장성을 위해서 국가 추가를 관리모듈에 포함시켰다. 이는 무한대 국가를 생성할 수 있도록 설계하였으며 기본적으로 국가성정을 하게 되면 항목 추가와 아울러서 국가의 언어설정항목으로 이어지며 이는 각 가구별로 국가별 추가가 자동으로 생성될 수 있도록 관계 데이터베이스로 구성 설계하였다.

그림 . 국가추가 항목화면

마. 게시물 관리

관리자의 게시물 관리로 현재 운영되고 있는 사이트의 게시판에 쓰기, 삭제, 그리고 수정을 할 수 있도록 기본 권한(Permission)을 관리자에게 만 할 수 있도록 설계했다. 이는 지속적으로 자주 검색하여 원하는 정보의 정확성과 신속성 불필요한 정보의 삭제 등 여러 업무를 관리자는 이행하여야 한다.

제3절. 오리엔탈 데이터베이스 사용 환경

1.일반사용자(Guest)

일반 손님들은 가구디자인의 제한된 정보를 볼 수 있다. 각종정보는 일반디자인 관련 디자인정보와 데이터베이스 내용으로 분리되어 있으며, 해당 정보 중 일반인들이 사용하지 못하는 정보는 일단 가입을 하고 관리자의 승인을 얻은 후에 활용할 수 있다.

그림 . Site Structure

가. 초기화면

초기화면에는 기본적인 정보를 출력하는 이벤트가 있는 리스트 출력 부분과 가구데이터와 메인카테고리로 이동할 수 있도록 설계 되어져 있다.

그림 . 초기화면

나. 일반 검색화면

그림 . 일반내용 검색화면

다. 가구 검색화면

가구검색화면은 다음 그림과 같다.

그림 . 가구데이터 카테고리별 검색화면

그림 . 구조검색화면

2.관리자(Administrator)

관리자는 본 프로그램 및 데이터베이스 관련정보를 모두 수정할 수 있는 권한을 가지고 있다. 이는 사이트와 프로그램의 데이터베이스 관리 및 업그레이드를 위해서 상당히 중요한 부분이며, 관리자의 권한(Permission)을 상당히 중요하므로 관리권한을 가진 자만 활용하기를 바란다. 또한 여러 게시물의 삭제 권한을 가지며 Web3D 데이터를 변수별로 업로드하기 위한 여러 오브젝트를 생성 및 삭제, 매핑소스의 생성 및 삭제 할 수 있는 권한을 가진다. 이는 가구의 데이터베이스의 효율성을 위한 부분이므로 막연한 개발제작보다는 관련 있는 전문가와 상의하여 조사하려는 대상의 데이터베이스의 구성을 다채롭게 하는 방법을 채택하는 것이 좋다.

그림 . 관리자 모듈 (메인그룹추가설정)

그림 . 카테고리생성 및 수정화면

그림 . 가구리스트 화면

그림 . 라이브러리 리스트

3.등록사용자(User)

등록사용자는 일반 손님과는 다르게 제한된 정보를 사용 및 활용 할 수 있다. Web3D의 결과를 중심으로 관련사용자들의 분류체계를 검색할 수 있다. 마찬가지로 관리자가 입력한 각종 가구관련 정보의 변화를 볼 수 있으며 이 값들을 중심으로 새로운 아이템 개발에 적용할 수 있다. 또한 폼메일 발송으로 각종 정보 저널을 온라인 구독할 수 있다. 이는 관리자의 재량에 따라서 목적 여부에 따라 설정하기 바란다.

가. 사용자 등록 화면

그림 . 사용자 등록화면

그림 . 도움말 화면

나. 사용자 OFDB 화면

그림 . 재료 검색화면

그림 . 종합검색화면

그림 . 검색결과 비교검색

그림 . 행위패턴 화면

그림 . 카테고리 검색화면

그림 . 구조 검색화면

전통가구의 현대적 활용방안에 관한 연구

제5장

기대효과

제1절 오리엔탈 퍼니춰 데이터베이스를

통한 기대효과

제2절 연구결과를 통한 기대효과

전통가구의 현대적 활용방안에 관한 연구

제5장 기대효과

전통가구의 현대적 활용방안에 관한 연구

제1절 오리엔탈 퍼니춰 데이타베이스를 통한 기대효과

오리엔탈 퍼니춰 데이터베이스를 통한 기대효과로는 첫째, 동서양을 막론하고 현재 가구디자인에 있어서 화제가 되고 있는 것은 오리엔탈 리즘의 새로운 변화 모색이다. 현 유럽시장의 간결한 느낌의 모더니즘 속에서 현재 새로운 동양적 사고 체계를 수렴하여 오리엔탈리즘을 부여하려 하고 있는 실정이다. 이는 현재 오리엔탈 퍼니춰 데이터베이스를 구축하는 가장 큰 기대효과로 현재 국내 가구 시장에서 활용 가능한 데이터베이스 리소스들은 전무 한 상태로 상당히 많은 가구 시장에서 오리엔탈 가구 데이터 검색을 희망할 것이다.

둘째, 가구산업의 새로운 변화 기대 할 수 있다. 지능화(Intelligent)에 따라 보다 편리한 서비스제공으로 개인화 된 주문형 서비스와 통신처리장치, 데이터베이스를 통하여 기술발전과 함께 다양한 가구 디자인 서비스를 제공할 수 있게 된다. 다국적 차원에서 정보를 비교 검토 할 수 있다는데 그 핵심이 있다.

셋째, 다양한 화면과 정보의 표현방법에 따라서 돌발가치(Surprise Value)를 기대할 수 있다. 물론 현존하지 않은 방식을 이유로 보다 다른 가치 있고 유용한 정보를 기대할 수 있다는 점을 먼저 이해해야한다. 단순한 정보의 표현 아닌 구조적인 이해와 함께 여러 변수를 통한 정보의 습득과 해석이므로 근미래를 위해서 오리엔탈 퍼니춰의 현실적 차원의 돌발가치가 기대된다.

제2절. 연구결과를 통한 기대효과

본 연구는 현재 가구 산업체, 가구관련 업종에서 현존해있지 않은 한국의 조선조 가구데이터베이스를 통해서 가구의 접합방법, 재료, 재질감, 미학적인 측면, 접합부위의 해결방안 등 다채로운 데이터의 검색을 통해서 다양하게 접목해서 활용할 수 있다.

첫째, 가구 데이터베이스의 종합적인 정리 내용을 통하여 시대적 흐름과 과거와 현재의 새로운 변화를 모색하고 이를 새로운 컨셉에 따른 조형적 측면과 가구의 데코레이션 측면에서 오리엔탈 개념의 새로운 가구를 창출 시킬 수 있다 하겠다.

둘째, 데이터의 새로운 표현 방법을 통한 정보의 정확한 인식이 가능하다 하겠다. 과거 가구디자인의 요소를 현재에 활용한다는 것은 단순 미학적 측면에서 겉으로 드러난 형태학적 측면만을 모방하기에 급급했으나 이를 현존 데이터의 새로운 표현 방법과 아울러 아주 세밀한 정도의 차이를 그리고 표현에 따른 방법을 모색하고 있기 때문에 단순한 모방에서 근본적인 구조적 측면과 개념적인 측면에서의 탈 변이가 일어난다고 할 수 있다.

셋째, 한국, 중국, 일본의 가구의 새로운 변이 요소와 함께 시대적인 근황을 통해서 시대의 반영에 따른 디자인의 변화요소를 예측할 수 있다. 이는 시대적인 측면에서 분류되어 필드별로 저장된 데이터를 국가별로 비교 검토 할 수 있으므로 3면이 바다로 되어있는 우리나라의 특성과 대륙을 중심으로 한 중국 바다로 둘러싸여있는 일본의 지리학적, 시대 문화적인 측면이 적절하게 조화된 조형적 측면을 비교 검토할 수 있다.

디자인에 있어서 새로운 개념과 형식은 창조라는 차원에서 새로운 디자인 타입의 가능성을 제공해 준다. 현대사회의 인터넷은 이런 가능성에 또 다른 변수를 포함하고 있으며 이는 가상의 공간을 보면서 근미래의 예측되는 디자인과 스타일을 창출시키기도 한다.  본 연구의 성과로 보다 소비자의 입장에서 문화적 정체성을 중심으로 디자인 할 수 있다라는 생각을 했다. 단지 많은 시간이 흘러야만 다양한 견지에서 보다 신뢰성이 있는 데이터를 근간으로 현실적 상황을 연출해 낼 것이라는 생각하지만 과거와는 다른 소비자들의 교육적, 문화적 환경이 달라졌다는 것을 디자이너들은 인지해야만 할 것이다.

여러 고가구의 데이터베이스의 세세한 연구결과를 중심으로 국가별 가구스타일의 유형을 분석하고 분석된 유형결과를 중심으로 보다 신속한 정보의 유통이 결국 디자이너에게 있어서 다른 창조적 이미지를 제공해준다면 본 연구의 본질적인 목적을 달성했다고 본다. 아울러 많은 서비스의 개선과 이 프로그램을 국내 많은 기업에 제공하여 옛선조들의 새로운 자연친화적 요소분석 즉, 다시 말해서 디자인의 포커스를 문화적인 정체성을 인지하며 디자인에 몰입하였으면 하는 바램이다. 본 연구는 디자인의 새로운 변화를 주력해 나갈 수 있는 새로운 시도라고 볼 수 있다. 앞으로 본 프로그램의 개발과 아울러서 향후 계속 지속적인 보완으로 근 미래 가치 있는 창조적 구조해석을 위한 개발연구에 주력할 것이다.

전통가구의 현대적 활용방안에 관한 연구

참고자료

1.참고문헌

2.참고URL

3.개발소스                4.개발구조

전통가구의 현대적 활용방안에 관한 연구

참고자료

전통가구의 현대적 활용방안에 관한 연구

1.참고문헌

- 국내 -

1.가토 슈이치, 『일본문화의 숨은 형』, 김진만 역, 한림신서 1995

2.강영환 『한국 주거 문화의 역사』, 기문당, 1996

3.강희수, 『조선조 가구중 농에 나타난 의장요소의 분석』, 이화여대석사 논문, 1998

4.권삼윤, 『우리 건축, 틈으로 본다』, 대한 교과서, 1999

5.김병기, 『한국문화의 정체성 확립과 세계화의 길』, 한국 정신 문화 연구원, 1995

6.김삼대자, 『전통 목가구』, 대원사, 1994

7.김삼대자, 『한국의 전통 목가구Ⅲ,Ⅳ』, 고미술29,30, 1991

8.김혜은, 『현대 실내 공간에서의 한국 전통 가구 활용 실태에 관한 연구』, 이화여대 석사 논문, 1987

9.나선화, 『소반』, 대원사, 1989

10.다다 미치다로, 『생활 속의 일본문화』, 한림신서 1996

11.稻葉和也, 中山繁信 공저,〈日本人の すまい(일본인의 주거)〉

12.류경수, 『우리 옛 건축에 담긴 표정들』, 대원사, 1998

13.무박, 『전통의 본질- 중국 전통 건축의 13가지 특성』, 건축문화116, 1990

14.미셀 뵈르들리, 『중국의 가구와 실내장식』, 김삼대자 역, 도암 기획, 1996

15.박경희 엮음, 『연표와 사진으로 보는 일본사』, 일빛, 1999

16.박영규, 『한국의 목가구』, 삼성 출판사, 1982

17.박영규, 『한국의 목공예』, 1997

18.박영순 외, 『우리 옛집 이야기』, 열화당, 1998

19.박희란, 『조선시대 목가구의 금속장식미에 관한 연구』, 성신여대 석사 논문, 1998

20.배만실, 『이조 목공가구의 미』, 보성 문화사, 1978

21.배만실, 『한국 목가구의 전통양식』, 이대 출판부, 1988

22.西 和夫 외, 『일본 건축사』, 이무희, 진경돈 공역, 세진사, 1999

23.손세관, 『북경의 주택』, 열화당 미술문고, 1995

24.신영동, 『우리 문화 이웃 문화』, 문학 수첩

25.신용철 외, 『한국문화와 동양세계』, 한올, 1998

26.쓰다 소키치, 『중국사상과 일본사상』, 남기학 역, 소화, 1998

27.앤드류 보이드, 『중국의1 건축과 도시』, 이기준 역, 기문당, 1987

28.윤장섭 편저, 『한국건축사론』, 기문당, 1994

29.윤장섭, 『중국의 건축』, 서울대학교 출판부, 1999

30.이상노, 『동서문화의 특색과 한국 문화의 진로』, 염수, 1983

31.이어령, 『한국인의 손, 한국인의 마음』, 디자인 하우스, 1994

32.이영진, 『한국 건축 전통성의 현대적인 계승과 수용』, 서울대학 석사 논문, 1989

33.이용기, 『목조건축물과 가구의 구조방법에 관한 연구』, 동아대학 석사 논문, 1995

34.이종석 외, 『한국의 미-목칠공예』, 중앙일보사, 1985

35.이종석, 『한국의 전통공예』, 열화당, 1994

36.이중우, 『주공간 구성의 상작용에 관한 연구』, 대한 건축 학회 논문집

37.이지은, 『동아시아의 문화적 특성에 의한 환경디자인』, 이화여대 석사 논문, 1998

38.임영주 외, 『종이공예 문화』, 대원사, 1989

39.조성렬 외,『한국의 전통 공간과 인테리어 디자인』, 인테리어

40.존 K 페어뱅크, 『동양 문화사』, 조유 문화사, 1995

41.존 카터 코벨, 『한국문화의 뿌리를 찾아』, 학고재, 1999

42.주거문화 연구회,  『주거·문화·디자인』, 신광출판사,1994

43.채수명, 『디자인 마아케팅』, 국제, 1997

44.최성자,『한국의 미 - 선/면/색』, 지식산업사, 1993

45.태전박태랑, 『일본건축사』, 박언곤 역, 발언, 1994

- 국외 -

1.Arthur drexler, 『the Architecture of Japan』,

2.Arthur M. Sackler Gallery, Smithsonian Institution, 『Asian Art』, Oxford, 1991

3.Grace Wu Bruce, 『Chinese Classical Furniture』, Oxford University Press, 1995

4.Kazuko Koizumi, 『Traditional Japanese Furniture』, Kodansa, 1986

5.Melvin J. Wachowick, Jr. 『New directions in the study of chinese furniture Asian Art Vol. IV, No. 3』, 1991

6.Nancy Berliner, 『Beyond the Screen-Chinese furniture of the 16th & 17th 7.Centuries』, Museum of Fine Arts, Boston

8.Robert D. Jacobsen with Nicholas Grindley,『Connoisseurship of Chinese Furniture』, 9.Art Media Resources, 1990『Classical Chinese Furniture』, Art Media Resources, 1999 Edward S. Morse, 『Japanese Home and Their Surroundings』

10.Sarah Handler,『The revolution in chinese furniture-Moving from mat to chair』,Asian Art Vol. IV, No. 3, 1991

11.Wang Shixiang and Curtis Evarts,『Classical and Vernacular Chinese furniture In The Living Environment』,  1998

12.舊中國掠影	구중국략영

13.中國廳堂	중국청당

14.淸代家具	청대가구

15.中國歷代家具圖錄大全(Ruan Changjiang)	중국역대가구도록대전

16.中國歷代家具圖錄大全	중국역대가구도록대전

17.Ming Furniture	밍 퍼니쳐

18.Classical Chinese Furniture	클래시컬 차이니스 퍼니쳐

19.Austere Luminosity of Chinese Classical Furniture	오스터 루미노시티 오프 차이니스 퍼니쳐

20.JAPANESE STYLE	재패니스 스타일

21.SHOJI HOW TO DESIGN,BUILD, and INSTALL JAPANESE SCREENS

쇼지 하우 투 디자인, 빌드, 앤 인스톨 재매니스 스크린

22.TRADITIONAL JAPANESE FURNITURE 트래디셔널 재매니스 퍼니쳐

23.簞筍	단순

24.錄靑	록청

25.東北民藝館	동북민예관

26.和家具	화가구

27.和簞筍集成	화단순집성

28.家具	가구

29.室內家具歷史	실내와가구의역사

30.古民家	고민가의생활

31.繪物津	회물진 두루마리 그림의 건축을 읽다

32.家具室內意匠文化史	가구와 실내의 문화사

33.道具江時代	도구와 생활의 에도시대

34.京都	경도 재미있는구경

35.芳春院	방춘원

36.元離官二條城本九御殿	원리관이조성본구어전

37.THE KYOTO 京 御所離宮	더 교토 경 어소이궁

38.桂離宮	계이궁

39.京都御所	경도어소

40.단수의종류와 그형태

2.참고 사이트

1.http://www.chinese-furniture.com

2.http://www.dreamscape.co.kr

3.http://www.designdb.com

4.http://www.stsp.or.kr

5.http://www.knoll.com/RPM/RPM.html

6.http://www.rhform.se/

7.http://www.blaxxun.de

8.http://www.gomid.com

9.http://www.imao.co.jp/gift/cult3d_gallery.html

10.http://www.cfl.ca/Gridiron/cult.html

11.http://www.geometrek.com/

12.http://www.at-dream.com

13.http://www.vrml.org/

14.http://web3d.about.com/compute/3dgraphics/

15.http://www.atom.co.jp/vrml2/labo/web3d.html

16.http://www.magic-hour.co.jp/web3d/index_3d.html

17.http://web3d.co.kr/

18.http://www.wmaestro.com/web3d/

19.http://www.sc.ehu.es/ccwweb3d/

20.http://wwwdi.ujaen.es/~rsegura/web3d/

21.http://www.idg.net/english/crd_font_451685.

22.http://eureka.lucia.it/vrml/it2000/atti/materiali.html

23.http://www.gsi.it/chisiamo/esempio.htm

24.http://glossario.supereva.it/w/2062.htm

25.http://guide.supereva.it/grafica_e_spazi_3d/interventi/2001/01/27783.shtml

26.http://www.architettura.it/models/link.htm

27.http://www.xlab.it/links/index1.html

28.http://tecfa.unige.ch/~ott/web3dexamples.html

29.http://www.esa-paris.fr/LIESA/rsc/rsc_v.html

30.http://search2.msn.fr/informatique_internet/developpement/vrml/

31.http://aleph.kubos.org/vrml/outils.html

32.http://www.yesnet.co.kr/index.html

33.http://www.4di.co.kr/gallery/index.html

34.http://www.gible.com/

35.http://www.iworld3d.com/

36.http://www.visso.co.kr/solution.htm

37.http://www.bioanim.com/

38.http://www.handy.de/shop/handysGalerie.php3

39.http://www.blaxxun.de

40.http://www.hitachi.com/dvdcam/photos/index.html

41.http://www.cybelius.co.kr

42.http://www.exform.com

43.http://www.flygt.com/default.asp?sidnr=174

44.http://www.vdigm.com/home_back/vrlab/environment/test_drive/index.html

45.http://www.blaxxun.de/?solutions/showcase/index.html

46.http://www.lucia.it/vrml

47.http://www.vrml-fokus.de/

48.http://www.sumo.se/

49.http://web.nps.navy.mil/~brutzman/kelp/

50.http://www.padovani.com

51.http://www.3dcafe.com

52.http://www.vdigm.com/home_back/web3d/woonang.html

53.http://www.nextd.com/

54.http://www.shout3d.com/

55.http://www.ccon.org/

56.http://www.planet9.com

57.http://members.tripod.com

58.http://www.lucia.it

59.http://www.geometrek.com/

60.http://www.ati.com/

61.http://www.cnn.com

62.http://www.mgisoft.com

63.http://www.blaxxun.de

64.http://www.vrml.org/

65.http://www.sumo.se/

66.http://www.mgisoft.com

67.http://www.4di.co.kr

68.http://www.vdigm.com

69.http://web.nps.navy.mil/~brutzman/kelp/

70.http://www.padovani.com

71.http://www.3dcafe.com

72.http://www.vdigm.com/home_back/web3d/woonang.html

73.http://www.nextd.com/

74.http://www.shout3d.com/

75.http://www.ccon.org/

76.http://www.planet9.com

77.http://members.tripod.com

78.http://www.lucia.it

79.http://www.geometrek.com/

80.http://www.ati.com/

81.http://www.cnn.com

82.http://www.mgisoft.com

83.http://www.blaxxun.de

84.http://www.vrml.org/

85.http://www.sumo.se/

86.http://www.mgisoft.com

87.http://www.4di.co.kr

88.http://www.vdigm.com

89.http://sdk.web3d.org/

90.http://www.macweb3d.org/

91.http://webgraphics.tmfweb.nl/

92.http://www.web3d.co.kr/vrml/main.html

93.http://www.wmaestro.com/web3d/docs/apend-a.html

94.http://www.zgalaxy.com/cntct.html

95.http://www.web3d.pe.kr/

96.http://csdove.snut.ac.kr/~maxworld/

97.http://www.4di.co.kr/

98.http://www.visso.co.kr/

99.http://www.iworld3d.com/

100.http://www.lacosdng.com/3D/3d_portfolio.html

101.http://www.openworlds.com/x3d/

102.http://www.blaxxun.com/x3d/

103.http://www.newobjectivity.com/x3d/

104.http://www.marrin.com/Blendo/Blendo.html

105.http://www.shout3d.com/x3d/

106.http://cult3d.co.kr/tmain.htm

107.http://www.cica.indiana.edu/graphics/3D.objects.html

108.http://www.virtual-angelfan.com/entry

109.http://www.dccard.co.jp/tatsujin/3d_anime/index2.htm

110.http://sdk.web3d.org/

111.http://www.macweb3d.org/

112.http://webgraphics.tmfweb.nl/

113.http://www.web3d.co.kr/vrml/main.html

114.http://www.wmaestro.com/web3d/docs/apend-a.html

115.http://www.zgalaxy.com/cntct.html

116.http://www.web3d.pe.kr/web3d_f.html

117.http://www.4di.co.kr/gallery/index.html

118.http://www.iworld3d.com/

119.http://www.richfx.co.kr/html/Nui.html#

120.http://www.i2web.net/mts/gallery_main.htm

121.http://www.exciteextreme.com/holiday/

122.http://www.exciteextreme.com/fashion/

123.http://www.viewpoint.com/#

124.http://www.dhtec.com/dhhome/portfo_fm.htm

125.http://www.iworld3d.co.kr/game_demo.html

126.http://www.dhtec.com/dhhome/dhmain_m.htm

127.http://www.vdigm.com/home_back/livepicture/index.html

128.http://www.vdigm.com/home_back/web3d/woonang.html

129.http://www.vdigm.com/home_back/web3d/mono_main.html

130.http://www.vdigm.com/home_back/vrlab/showcase/test_drive/index.html

131.http://click3d.co.kr/korean/what/3dpage.html

132.http://www.dreamscape.co.kr/x3d/index.htm

133.http://gible.com/

134.http://www.geoplay.co.kr/main.asp

135.http://www.myzin.com/

136.http://www.swedishtrade.com/china/static/jubileebook/

137.http://www.ub.uu.se/carol/treasure.htm

138.http://www-vaxten.slu.se/index2.html

139.http://www.cejn.com/eng/cult/

140.http://www.rhform.se/

141.http://www.netfurn.se/inshop/jsp/se/frameset.jsp

142.http://www.nobel.se/nobel/medals/medal3d.html

143.http://www.alfort.se/

144.http://www.imao.co.jp/gift/cult3d_gallery.html

145.http://www.auran.com/koolthingz/trainz/visualz.htm

146.http://www.flygt.com/default.asp?sidnr=174

147.http://www.handy.de/shop/handysGalerie.php3

148.http://www.robotstudio.com/

149.http://www.envirotainer.com/products/2_2.htm

150.http://www.ir-vision.com/

151.http://www.city.hashima.gifu.jp/3d_enku/enku_co.htm

152.http://www.instructionsonline.com/cult3Dpage.htm

153.http://www.dturf.com/c_cooldigs/cool_index.htm

154.http://www.cfl.ca/Gridiron/cult.html

155.http://www.volvo.com/truck/exhibition/amsterdam2000/vr_cult.asp

156.http://cbc.ca/everest2000/games/

157.http://www.vrimpact.com/

158.http://www.at-dream.com/

159.http://www.gible.com

160.http://www.vrs21.com

161.http://www.iworld3d.com/

162.http://www.gomid.com

163.http://cymax.co.kr/products/kebi/main.html/

164.http://www.4di.co.kr/gallery/

165.http://www.kdib.co.kr/sample

166.http://www.t3studio.co.kr/frame.asp/

167.http://www.click3d.co.kr/

168.http://www.cybelius.co.kr

169.http://www.exform.com

170.http://www.intervice.co.kr/

171.http://www.dal3d.com/

172.http://www.ico.co.kr/

173.http://www.n-vr.com/

174.http://www.vrin.co.kr

175.http://www.neoidea.com/

176.http://www.geometrek.com/

177.http://www.shoutinteractive.com/

178.http://www.shout3d.com/

179.http://www.blaxxun.de/solutions/showcase/index.html

180.http://www.cybelius.com/FrmVir.htmFrmVir.htm

181.http://www.kitchenaid.com/virtualkitchen

182.http://town.hi-ho.ne.jp/cgtech/index-e.html

183.http://www.arenanet.fi/english/index.html Blaxxun

184.http://www.blaxxun.de/?solutions/showcase/index.html

185.http://www.familiartales.com

186.http://web.nps.navy.mil/~brutzman/kelp/

187.http://www.blaxxun.de/?solutions/showcase/index.html

188.http://www.lucia.it/vrml

189.http://www.vrml-fokus.de/

190.http://www.geocities.com/MotorCity/4630/

191.http://members.tripod.com/brasil3d

192.http://www.eonreality.com

193.http://www.viewpoint.com

194.http://www.mgisoft.com

195.http://www.cyberartcenter.co.kr

196.http://www.cnn.com

197.http://www.cobragolf.com/cult3D/index.htm

198.http://www.hitachi.com/dvdcam/photos/index.html

199.http://www.knoll.com/RPM/RPM.html

200.http://www.lego.com/justbuild/

201.http://www.tonyring.com/

202.http://www-vaxten.slu.se/index2.html

203.http://www.sew.husqvarna.com/

204.http://www.ati.com/

205.http://www.yamaha.se/3d/

206.http://www.imao.co.jp/gift/cult3d_gallery.html

207.http://www.auran.com/koolthingz/trainz/visualz.htm

208.http://www.netfurn.se/html/se/indexframe.htm

209.http://www.rhform.se/

210.http://www.sumo.se/

211.http://www.vrimpact.com

212.http://www.at-dream.com

213.http://www.gible.com

214.http://www.vrs21.com

215.http://www.iworld3d.com

216.http://www.gomid.com

217.http://www.cymax.co.kr/products/kebi/main.html

218.http://www.4di.co.kr/gallery

219.http://www.kdib.co.kr/sample

220.http://www.t3studio.co.kr/frame.asp

221.http://www.click3d.co.kr

222.http://www.cybelius.co.kr

223.http://www.exform.com

224.http://www.intervice.co.kr

225.http://www.dal3d.com

226.http://www.ico.co.kr

227.http://www.n-vr.com

228.http://www.vrin.co.kr

229.http://www.neoidea.com

3. 개발소스

Root>Public>add_insertUserFrom.java

<!--

function setFocus() {

document.insertUserForm.pUserID.focus();

return;

}

function checkFormValue() {

var pEmailStr = document.insertUserForm.pEmail.value;

var flag = true;

if(document.insertUserForm.pUserID.value.length < 1) {

alert("ID를 입력해 주세요.");

document.insertUserForm.pUserID.focus();

flag = false;

return;

}

if(document.insertUserForm.pUserID.value.indexOf(" ") > -1) {

alert("ID는 공백없이 입력해 주세요.");

document.insertUserForm.pUserID.value = "";

document.insertUserForm.pUserID.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value.length < 1) {

alert("Password를 입력해 주세요.");

document.insertUserForm.pPassword1.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value.indexOf(" ") > -1) {

alert("Password는 공백없이 입력해 주세요.");

document.insertUserForm.pPassword1.value = "";

document.insertUserForm.pPassword1.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword2.value.length < 1) {

alert("Password를 한번 더 입력해 주세요.");

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword2.value.indexOf(" ") > -1) {

alert("Password는 공백없이 입력해 주세요.");

document.insertUserForm.pPassword2.value = "";

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value != document.insertUserForm.pPassword2.value) {

alert("Password가 일치하지 않습니다. 다시 입력해 주세요");

document.insertUserForm.pPassword2.value = "";

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pKName.value.length < 1) {

alert("한글이름을 입력해 주세요.");

document.insertUserForm.pKName.focus();

flag = false;

return;

}

if(document.insertUserForm.pKName.value.indexOf(" ") > -1) {

alert("이름은 공백없이 입력해 주세요.");

document.insertUserForm.pKName.value = "";

document.insertUserForm.pKName.focus();

flag = false;

return;

}

if(document.insertUserForm.pEName.value.length < 1) {

alert("영문이름을 입력해 주세요.");

document.insertUserForm.pEName.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum1.value.length < 6) {

alert("주민등록번호를 입력해 주세요.");

document.insertUserForm.pLicenseNum1.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum1.value.indexOf(" ") > -1) {

alert("주민번호는 공백없이 입력해 주세요");

document.insertUserForm.pLicenseNum1.value = "";

document.insertUserForm.pLicenseNum1.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum2.value.length < 7) {

alert("주민등록번호를 입력해 주세요.");

document.insertUserForm.pLicenseNum2.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum2.value.indexOf(" ") > -1) {

alert("주민번호는 공백없이 입력해 주세요.");

document.insertUserForm.pLicenseNum2.value = "";

document.insertUserForm.pLicenseNum2.focus();

flag = false;

return;

}

if(flag) {

checkInsert();

}

}

function checkInsert() {

var flag = false;

flag = window.confirm("등록하시겠습니까?");

if(flag) {

document.insertUserForm.submit();

} else {

}

}

//-->

Root>Public>admin_checkLogout.java

<!--

function checkLogout(location) {

var flag = false;

flag = window.confirm("로그아웃 하시겠습니까?");

if(flag) {

var tURL = location + "../../design/jsfile/logout.asp";

window.open(tURL, '_top');

}

else {

}

}

//-->

Root>Public>admin_checkLogout.asp

<%

tuserID   = Request.Cookies("tUserID")

If tuserID <> "admin" Then

%>

<SCRIPT LANGUAGE="JavaScript">

<!--

alert("로그인하시기 바랍니다.");

location.href="/registration.asp"

//-->

</SCRIPT>

<% End If %>

Root>Public>checkDeleteWriting.java

<!--

function checkDeleteWriting(title_name, boardID, writingID, replyDepth, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_name=" + title_name + "&pBoardID=" + boardID + "&pWritingID=" + writingID + "&pReplyDepth=" + replyDepth + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeleteFTPWriting(superCategory, thisCategory, categoryDepth, groupID, boardID, mainNumber, subNumber, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?pSuperCategory=" + superCategory + "&pThisCategory=" + thisCategory + "&pCategoryDepth=" + categoryDepth + "&pGroupID=" + groupID + "&pBoardID=" + boardID + "&pMainNumber=" + mainNumber + "&pSubNumber=" + subNumber + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeletewhatWriting(title_name, sub_title_name, Menu, sub_menu, boardID, writeID, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pBoardID=" + boardID + "&pwriteID=" + writeID + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeleteself_trendWriting(title_name, sub_title_name, Menu, sub_menu, boardID, writeID, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pBoardID=" + boardID + "&pwriteID=" + writeID + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeletedesigndbWriting(title_name, sub_title_name, Menu, sub_menu, boardID, writeID, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pBoardID=" + boardID + "&pwriteID=" + writeID + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeleteinformationWriting(title_name, sub_title_name, Menu, sub_menu, boardID, writeID, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pBoardID=" + boardID + "&pwriteID=" + writeID + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeletemoduleWriting(title_name, sub_title_name, Menu, sub_menu, ID, pageNumber) {

var flag    = false;

var message = "삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deletemodule.asp?title_name=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pID=" + ID + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeletehelpWriting(title_name, sub_title_name, Menu, sub_menu, boardID, writeID, fileName, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&pBoardID=" + boardID + "&pwriteID=" + writeID + "&pFileName=" + fileName + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeleteuser(title_name, sub_title_name, Menu, sub_menu, profileID, pageNumber) {

var flag    = false;

var message = "회원정보를 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteuser.asp?title_nmae=" + title_name + "&sub_title_name=" + sub_title_name + "&menu=" + Menu + "&sub_menu=" + sub_menu + "&profileID=" + profileID + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

function checkDeleteBookMarkWriting(superCategory, thisCategory, categoryDepth, groupID, boardID, sequenceNumber, pageNumber) {

var flag    = false;

var message = "글을 삭제하시겠습니까?";

flag = window.confirm(message);

if(flag) {

var tURL = "deleteWriting.asp?pSuperCategory=" + superCategory + "&pThisCategory=" + thisCategory + "&pCategoryDepth=" + categoryDepth + "&pGroupID=" + groupID + "&pBoardID=" + boardID + "&pSequenceNumber=" + sequenceNumber + "&pPageNumber=" + pageNumber;

window.open(tURL, '_top');

}

else {

}

}

//-->

Root>Public>checkLogin,asp

<% boardID       = Request.QueryString("pBoardID") %>

<% IF boardID = 8 Then %>

<%

userID = Request.Cookies("userID")

If userID = "" Then

%>

<SCRIPT LANGUAGE="JavaScript">

<!--

alert("로그인하시기 바랍니다.");

location.href="/registration.asp"

//-->

</SCRIPT>

<% End If %>

<% End If %>

Root>Public>checkLogout.java

<!--

function checkLogout(location) {

var flag = false;

flag = window.confirm("로그아웃 하시겠습니까?");

if(flag) {

var tURL = location + "./public/logout.asp";

window.open(tURL, '_top');

}

else {

}

}

//-->

Root>Public>checkUser.asp

<!-- #include file="./sqlConnect.asp" -->

<%

userID   = Request.Form("pUserID")

password = Request.Form("pPassword")

sqlQuery = "SELECT password, kName, email " _

& "  FROM FDBuser " _

& " WHERE userID = '" & userID & "'"

Set Rs = Conn.Execute(sqlQuery)

If Rs.BOF Then

'Response.Cookies("tUserID") = userID

Response.Redirect "../default.asp?pMessageID=1"

ElseIf Rs("password") <> password Then

'Response.Cookies("tUserID") = userID

Response.Redirect "../default.asp?pMessageID=2"

Else

Response.Cookies("kName")  = Rs("kName")

Response.Cookies("tUserID") = userID

Response.Cookies("email")  = Rs("email")

Response.Redirect "/"

End IF

Rs.Close

Set Rs = Nothing

Conn.Close

Set Conn = Noting

%>

Root>Public>form.css

<STYLE TYPE="text/css">

A {

text-decoration:none;

font-size: 9pt;

color : #ff9900;

font-face:돋움,seoul,helvetica,arial;

}

A:hover {

text-decoration:none;

font-size: 9pt;

color : #ff6600;

font-face:돋움,seoul,helvetica,arial;

}

.default {

font-size: 9pt;

color: #666666;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.defaultblack {

font-size: 9pt;

color: #000000;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.defaulttable {

font-size: 11px;

color: #333333;

font-face:verdana,arial;

line-height: 15px;

}

.default333333 {

font-size: 9pt;

color: #333333;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.red {

font-size: 9pt;

color: #ff0033;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

</style>

Root>Public>insertWritingForm

<!--

function checkFormValue() {

var flag = true;

if(document.insertWritingForm.pWriter.value.length < 1) {

alert("이름을 입력해 주세요.");

document.insertWritingForm.pWriter.focus();

flag = false;

return;

}

if(document.insertWritingForm.pTitle.value.length < 1) {

alert("제목을 입력해 주세요.");

document.insertWritingForm.pTitle.focus();

flag = false;

return;

}

if(flag) {

checkInsert();

}

}

function checkInsert() {

var flag = false;

flag = window.confirm("등록하시겠습니까?");

if(flag){

document.insertWritingForm.submit();

}

else {

}

}

//-->

Root>Public>javascript

wid = screen.availwidth

hei = screen.availheight

function winsize(k,left,top) {

if (wid > 1024) {

if(document.layers) {

document.layers[k].left = ((wid - 1024)/2) + left - 8;

document.layers[k].top = ((hei - 768)/2) + top + 15;

}else{

document.all[k].style.left = ((wid - 1024)/2) + left - 8;

document.all[k].style.top = ((hei - 768)/2) + top + 15;

}

} else {

if(document.layers) {

document.layers[k].left = left;

document.layers[k].top = top;

}else{

document.all[k].style.left = left;

document.all[k].style.top = top;

}

}

}

function MM_swapImgRestore() { //v3.0

var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;

}

function MM_preloadImages() { //v3.0

var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();

var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)

if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}

}

function MM_findObj(n, d) { //v4.0

var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);

if(!x && document.getElementById) x=document.getElementById(n); return x;

}

function MM_swapImage() { //v3.0

var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)

if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}

}

function MM_showHideLayers() { //v3.0

var i,p,v,obj,args=MM_showHideLayers.arguments;

for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];

if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }

obj.visibility=v; }

}

function trim(str)

{

start = 0;

end = str.length-1;

for (i=0; i<str.length; i++) {

if (str.substring(i,i+1) != " ") {

start = i;

break;

}

}

for (j=str.length-1; j>=0; j--) {

if (str.substring(j,j+1) != " ") {

end = j+1;

break;

}

}

return str.substring(start, end);

}

function MM_openBrWindow(theURL,winName,features) { //v2.0

window.open(theURL,winName,features);

}

function MM_jumpMenu(targ,selObj,restore){ //v3.0

eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");

if (restore) selObj.selectedIndex=0;

}

Root>Public>javascript2

<!--

function post(temp) {

window.open("./post.php?type=id"+temp,"",

"height=400,width=468,toolbar=no,menubar=no,scrollbars=yes,status=no");

}

function check_in() {

var obj;

obj = document.form;

sw = 1;

if (obj.tester_name.value == "") {

alert("이름을 입력하세요");

obj.tester_name.focus();

sw = 0;

}

if (obj.tester_jumin.value == "" && sw == 1) {

alert("주민등록번호를 입력하세요");

obj.tester_jumin.focus();

sw = 0;

}

var minlength=13 // 50글자

if (obj.tester_jumin.value.length<minlength && sw == 1){

alert("주민등록번호를 정확히 입력하세요")

obj.tester_jumin.focus();

sw = 0;

}

if (sw) {

obj.submit();

}

}

//-->

Root>Public>login

<%

messageID = Request.QueryString("pMessageID")

tUserID   = Request.Cookies("UserID")

kName   = Request.Cookies("Kname")

%>

<html>

<head>

<title>STSP</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link href="/css/style.css" rel="stylesheet" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/loginForm.js"></script>

<script src="/public/checkLogout.js"></script>

</head>

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<% if tuserID = "" Then %>

<TABLE width="97%" border="0" cellpadding="1" cellspacing="1">

<TR>

<TD width="*" colspan="2" class="contents">

<%

Select Case messageID

Case 1

Response.Write "등록되지 않은 ID입니다.<BR>"

Response.Write "ID 확인 후 다시 로그인 하시거나<br> <b>관리자</b>에게 문의 하십시오."

Case 2

Response.Write "패스워드가 일치하지 않습니다.<BR>"

Case Else

Response.Write "로그인을 해주시기 바랍니다.<BR>"

Response.Write "아이디를 모르실 경우  <b>관리자</b>에게 문의 하십시오."

End Select

%>

</TD>

</TR>

<TR>

<TD width="*" height="10" colspan="2" class="contents">

</TD>

</TR>

<TR>

<TD width="110" align="left" class="contents">

<FORM method="post" name="admin" onSubmit="javascript: checkLogInFormValue();return false;">

ID : <INPUT type="text"   name="pUserID"   size="10" maxlength="10"  value="<%=tUserID%>">

</FORM>

</TD>

<TD width="*" align="left" class="contents">

<FORM action="checkUser.asp" method="post" name="loginForm" onSubmit="javascript: checkLogInFormValue();return false;">

<INPUT type="hidden" name="pUserID">

Password : <INPUT type="password" name="pPassword" size="10" maxlength="10">

<A href="" onclick="javascript: checkLogInFormValue();return false;">로그인</A>

</FORM>

</TD>

</TR>

</TABLE>

<% else %>

<TABLE border="0" width="300" align="center">

<tr>

<td>관리자인증</td>

</tr>

<TR valign="bottom" align="center">

<TD width="100%" height="35">

<b><SPAN class="userInformation">

<%=kName%>(<%=tuserID%>)로그인중입니다.

</SPAN>

<A href="" onclick="javascript: checkLogout('../public/logout.asp');return false;" class="logOut">로그아웃</A>

</TD>

</TR>

</TABLE>

<% end If %>

</body>

</html>

Root>Public>loginForm

<!--

function setFocus() {

document.admin.pUserID.focus();

return;

}

function checkLogInFormValue() {

var flag = true;

if(document.admin.pUserID.value.length < 1) {

alert("ID를 입력해 주세요.");

document.admin.pUserID.focus();

flag = false;

return;

}

if(document.admin.pUserID.value.indexOf(" ") > -1) {

alert("ID는 공백없이 입력해 주세요.");

document.admin.pUserID.value = "";

document.admin.pUserID.focus();

flag = false;

return;

}

if(document.loginForm.pPassword.value.length < 1) {

alert("Password를 입력해 주세요.");

document.loginForm.pPassword.focus();

flag = false;

return;

}

if(document.loginForm.pPassword.value.indexOf(" ") > - 1) {

alert("Password는 공백없이 입력해 주세요.");

document.loginForm.pPassword.value = "";

document.loginForm.pPassword.focus();

flag = false;

return;

}

document.loginForm.pUserID.value=document.admin.pUserID.value;

if(flag) {

document.loginForm.submit();

}

}

//-->

Root>Public>logout.asp

<%

Response.Cookies("kName")   = ""

Response.Cookies("userID")  = ""

Response.Cookies("tUserID") = ""

Response.Redirect "/"

%>

Root>Public>public.css

<STYLE TYPE="text/css">

A {

text-decoration:none;

font-size: 9pt;

color : #ff9900;

font-face:돋움,seoul,helvetica,arial;

}

A:hover {

text-decoration:none;

font-size: 9pt;

color : #ff6600;

font-face:돋움,seoul,helvetica,arial;

}

.default {

font-size: 9pt;

color: #666666;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.defaultblack {

font-size: 9pt;

color: #000000;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.defaulttable {

font-size: 8pt;

color: #333333;

font-face:verdana,arial;

line-height: 15px;

; font-family: "Verdana", "Arial", "Helvetica", "sans-serif"

}

.default333333 {

font-size: 9pt;

color: #333333;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

.Korean {

font-size: 9pt;

color: #333333;

font-face:돋움,seoul,helvetica,arial;

line-height: 20px;

}

.red {

font-size: 9pt;

color: #ff0033;

font-face:돋움,seoul,helvetica,arial;

line-height: 17px;

}

</style>

Root>Public>sqlConnect.asp

<%

Dim Conn

Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Open "DATABASE=furniture;DSN=furniture;UID= -;Password= ----;"

%>

Root>Public>updateUserForm.java

<!--

function setFocus() {

document.insertUserForm.pUserID.focus();

return;

}

function checkFormValue() {

var pEmailStr = document.insertUserForm.pEmail.value;

var flag = true;

if(document.insertUserForm.pUserID.value.length < 1) {

alert("ID를 입력해 주세요.");

document.insertUserForm.pUserID.focus();

flag = false;

return;

}

if(document.insertUserForm.pUserID.value.indexOf(" ") > -1) {

alert("ID는 공백없이 입력해 주세요.");

document.insertUserForm.pUserID.value = "";

document.insertUserForm.pUserID.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value.length < 1) {

alert("Password를 입력해 주세요.");

document.insertUserForm.pPassword1.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value.indexOf(" ") > -1) {

alert("Password는 공백없이 입력해 주세요.");

document.insertUserForm.pPassword1.value = "";

document.insertUserForm.pPassword1.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword2.value.length < 1) {

alert("Password를 한번 더 입력해 주세요.");

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword2.value.indexOf(" ") > -1) {

alert("Password는 공백없이 입력해 주세요.");

document.insertUserForm.pPassword2.value = "";

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pPassword1.value != document.insertUserForm.pPassword2.value) {

alert("Password가 일치하지 않습니다. 다시 입력해 주세요");

document.insertUserForm.pPassword2.value = "";

document.insertUserForm.pPassword2.focus();

flag = false;

return;

}

if(document.insertUserForm.pKName.value.length < 1) {

alert("한글이름을 입력해 주세요.");

document.insertUserForm.pKName.focus();

flag = false;

return;

}

if(document.insertUserForm.pKName.value.indexOf(" ") > -1) {

alert("이름은 공백없이 입력해 주세요.");

document.insertUserForm.pKName.value = "";

document.insertUserForm.pKName.focus();

flag = false;

return;

}

if(document.insertUserForm.pEName.value.length < 1) {

alert("영문이름을 입력해 주세요.");

document.insertUserForm.pEName.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum1.value.length < 6) {

alert("주민등록번호를 입력해 주세요.");

document.insertUserForm.pLicenseNum1.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum1.value.indexOf(" ") > -1) {

alert("주민번호는 공백없이 입력해 주세요");

document.insertUserForm.pLicenseNum1.value = "";

document.insertUserForm.pLicenseNum1.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum2.value.length < 7) {

alert("주민등록번호를 입력해 주세요.");

document.insertUserForm.pLicenseNum2.focus();

flag = false;

return;

}

if(document.insertUserForm.pLicenseNum2.value.indexOf(" ") > -1) {

alert("주민번호는 공백없이 입력해 주세요.");

document.insertUserForm.pLicenseNum2.value = "";

document.insertUserForm.pLicenseNum2.focus();

flag = false;

return;

}

if(flag) {

checkInsert();

}

}

function checkInsert() {

var flag = false;

flag = window.confirm("수정하시겠습니까?");

if(flag) {

document.insertUserForm.submit();

} else {

}

}

//-->

Root>Public>updateWritingForm.java

<!--

function checkFormValue() {

var flag = true;

if(document.updateWritingForm.pWriter.value.length < 1) {

alert("이름을 입력해 주세요.");

document.updateWritingForm.pWriter.focus();

flag = false;

return;

}

if(document.updateWritingForm.pTitle.value.length < 1) {

alert("제목을 입력해 주세요.");

document.updateWritingForm.pTitle.focus();

flag = false;

return;

}

if(flag) {

checkUpdate();

}

}

function checkUpdate() {

var flag = false;

flag = window.confirm("수정하시겠습니까?");

if(flag){

document.updateWritingForm.submit();

}

else {

}

}

//-->

Root>Public>imagesearch.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/ti-ani.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./imagesearch_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>imagesearch2.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/ti-ani.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./imagesearch_main2.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>imagesearch_main.asp

<%

Pcode       = Request("code")

Pnum        = Request("num")

Pk_title        = Request("K_title")

if Pcode <> "" Then

intNowPage = Request.QueryString("page")

intPageSize = 10

intBlockPage = 5

If Len(intNowPage) = 0 Then

intNowPage = 1

End If

strSQL = "Select Count(*)"

strSQL = strSQL & ",CEILING(CAST(Count(*) AS FLOAT)/" & intPageSize & ")"

strSQL = strSQL & " from f_db where Len(code2) = 6 and num = " & Pnum & " and Left(code,2) = " & Pcode & ""

Set pageRs = Server.CreateObject("ADODB.RecordSet")

pageRs.Open strSQL, conn

intTotalCount = pageRs(0)

intTotalPage = pageRs(1)

pageRs.Close

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu2.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 이미지 검색</strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF">

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<tr>

<td><img src="/images/search/s1_1.gif"></td>

<td align="right"><img src="/images/search/action_ani/total.gif"></td>

</table>

</td>

</tr>

<tr><td height="1" bgcolor="#999999"></td></tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="30" align="center"><% If Pcode <> "" Then %><font color="#999999">[ <%=Pk_title%>에서 <strong>총  <%=intTotalCount%>  </strong>개를 검색했습니다. ]</font></strong></strong><% End If %></td>

</tr>

<tr>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20">

<table width="100%" border="0" cellpadding="1" cellspacing="2" bgcolor="#CCCCCC">

<tr>

<td width="83%" bgcolor="#FFFFFF"><img src="/images/search/ddd.jpg" align="absmiddle"><strong><strong> <font size="2"> 행위패턴분류</td>

<td width="17%" valign="bottom" bgcolor="#FFFFFF">

<div align="right">

<select name="imagesearch" onChange="MM_jumpMenu('parent',this,0)" style="width:150">

<option value="imagesearch.asp">행위패턴 검색</option>

<%

subsql = "select * from f_db where LEN(code) = 2 order by num asc"

set subRs2 = server.createobject("adodb.recordset")

Set subRs2 = conn.Execute(subsql)

%>

<% IF subRs2.EOF or subRs2.EOF then %>

<option>입력된 행위패턴이 없습니다.</option>

<% Else %>

<% Do until subRs2.EOF %>

<% If subRs2("k_title") = "' & Pk_title & '" Then

selected = "selected"

Else

selected = ""

End If

%>

<option value="imagesearch.asp?code=<%=subRs2("code")%>&num=<%=subRs2("num")%>&k_title=<%=subRs2("k_title")%>" <%=selected%>><%=subRs2("k_title")%></option>

<%

subRs2.MoveNext

loop

%>

<% End if%>

</select>

</div>

</td>

</tr>

</table>

</td>

</tr>

<% If Pcode <> "" Then %>

<tr>

<td bgcolor="#FFFFFF">

<% If intTotalCount > 0 Then %>

<%

srcsql = "select * from f_db where LEN(code) = 4 and num = " & Pnum &" and left(code,2) = " & Pcode & " and Len(code2) = 4 order by code asc"

set groupRs = server.createobject("adodb.recordset")

Set groupRs = conn.Execute(srcsql)

%>

<!-- 반복구간 시작 -->

<% IF groupRs.EOF or groupRs.EOF then %>

<% Else %>

<% Do until groupRs.EOF %>

<%

subsql = "select * from f_db where Len(code2) = 6 and num = " & Pnum & " and Left(code,4) = " & groupRs("code") & " order by code2 asc"

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

srcsql = "select * from f_db where num = '" & Pnum & "' and code = " & Pcode & ""

set srcRs = server.createobject("adodb.recordset")

Set srcRs = conn.Execute(srcsql)

%>

<% If subRs.EOF or subRs.EOF Then %>

<% Else %>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#999999"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

<tr>

<td bgcolor="#F9F0E3"><strong><img src="/images/dd-dot.gif" width="26" height="16"><%=groupRs("k_title")%></strong></td>

</tr>

<tr>

<td bgcolor="#999999"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

</table>

<% End If %>

<% IF subRs.EOF or subRs.EOF then %>

<% Else %>

<% i = 1 %>

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<tr>

<% Do until subRs.EOF %>

<% j = Int(i mod 3) %>

<td>

<table width="200" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="33%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td height="24" bgcolor="#EEEEEE"><div align="center"><strong><%=subRs("k_title")%><% If subRs("c_title") <> "" Then %>(<%=subRs("c_title")%>)<% End If %></strong></div></td>

</tr>

<tr>

<%

If subRs("num") = 1 Then Pk_title2 = "사람/가구/사물" End If

If subRs("num") = 2 Then Pk_title2 = "사람/자세/가구" End If

If subRs("num") = 3 Then Pk_title2 = "사람/공간/가구" End If

%>

<%

If left(subRs("code"),2) = "01" Then Ppic = "1" End If

If left(subRs("code"),2) = "02" Then Ppic = "2" End If

If left(subRs("code"),2) = "03" Then Ppic = "3" End If

%>

<% if subRs("img_file") <> "" Then %>

<% s_extension	= Mid(subRs("img_file"), InStrRev(subRs("img_file"), ".")) %>

<% End If %>

<% if subRs("img_file") <> "" Then %>

<td width="200" height="100" bgcolor="#FFFFFF" align="center"><a href="pattern_result.asp?list_uid=<%=subRs("num")%>&uid=<%=subRs("uid")%>&pic_num=<%=Ppic%>&code=<%=subRs("code")%>&sub_title=<%=Pk_title%>&sub_title2=<%=groupRs("k_title")%>&k_title=<%=Pk_title2%>"><img src="/data/img_file/<%=subRs("num")%>_<%=subRs("code")%>_<%=subRs("uid")%><%=s_extension%>" width="178" height="114" border="0"></a></td>

<% Else %>

<td width="200" height="100" bgcolor="#FFFFFF" align="center"><a href="pattern_result.asp?list_uid=<%=subRs("num")%>&uid=<%=subRs("uid")%>&pic_num=<%=Ppic%>&code=<%=subRs("code")%>&sub_title=<%=Pk_title%>&sub_title2=<%=groupRs("k_title")%>&k_title=<%=Pk_title2%>"><img src="/images/blank.gif" width="178" height="114" border="0"></a></td>

<% End If %>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFEFE1"><img src="/images/blank.gif" width="200" height="4"></td>

</tr>

</table>

</td>

<% IF j = 0 Then %>

</tr>

<tr>

<% End If %>

<%

subRs.MoveNext

i = i + 1

loop

%>

</td>

</tr>

<tr><td height="10"></td></tr>

</table>

<% End if%>

<%

groupRs.MoveNext

loop

%>

<% End If %>

<% End If %>

<% End If %>

<!-- 반복구간 끝 -->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>imagesearch_main2.asp

<%

Pid       = Request("id")

Ptitle       = Request("title")

if Pid <> "" Then

intNowPage = Request.QueryString("page")

intPageSize = 10

intBlockPage = 5

If Len(intNowPage) = 0 Then

intNowPage = 1

End If

strSQL = "Select Count(*)"

strSQL = strSQL & ",CEILING(CAST(Count(*) AS FLOAT)/" & intPageSize & ")"

strSQL = strSQL & " from lib01 WHERE id = '" & Pid & "' and code is NOT NULL"

Set pageRs = Server.CreateObject("ADODB.RecordSet")

pageRs.Open strSQL, conn

intTotalCount = pageRs(0)

intTotalPage = pageRs(1)

pageRs.Close

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu2.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 이미지 검색</strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF">

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<tr>

<% id_num = Int(pid) + 1 %>

<td><img src="/images/search/s<%=id_num%>_1.gif"></td>

</table>

</td>

</tr>

<tr><td height="1" bgcolor="#999999"></td></tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="30" align="center"><% If Pid <> "" Then %><font color="#999999">[ <%=Ptitle%>에서 <strong>총  <%=intTotalCount%>  </strong>개를 검색했습니다. ]</font></strong></strong><% End If %></td>

</tr>

<tr>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20">

<table width="100%" border="0" cellpadding="1" cellspacing="2" bgcolor="#CCCCCC">

<tr>

<td width="83%" bgcolor="#FFFFFF"><img src="/images/search/ddd.jpg" align="absmiddle"><strong><strong> <font size="2"> <%=ptitle%></td>

</tr>

</table>

</td>

</tr>

<% If Pid <> "" Then %>

<tr>

<td bgcolor="#FFFFFF">

<% If intTotalCount > 0 Then %>

<%

srcsql = "select * from lib01 where id = '" & Pid & "' and code is NULL order by num asc"

set groupRs = server.createobject("adodb.recordset")

Set groupRs = conn.Execute(srcsql)

%>

<!-- 반복구간 시작 -->

<% IF groupRs.EOF or groupRs.EOF then %>

<% Else %>

<% Do until groupRs.EOF %>

<%

subsql = "select * from lib01 where id = '" & Pid & "' and num = '" & groupRs("num") & "' and code is NOT NULL order by code desc"

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

%>

<% If groupRs.EOF Then %>

<div align="center">입력된 데이터가 없습니다.</div>

<% Else %>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#999999"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

<tr>

<td bgcolor="#F9F0E3"><strong><img src="/images/dd-dot.gif" width="26" height="16"><%=groupRs("title")%></strong></td>

</tr>

<tr>

<td bgcolor="#999999"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

</table>

<% End If %>

<% IF subRs.EOF or subRs.EOF then %>

<div align="center" height="30">입력된 데이터가 없습니다.</div>

<% Else %>

<% i = 1 %>

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<tr>

<% Do until subRs.EOF %>

<% j = Int(i mod 3) %>

<td>

<table width="200" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="33%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td height="24" bgcolor="#EEEEEE"><div align="center"><strong><%=subRs("title")%><% If subRs("c_title") <> "" Then %>(<%=subRs("c_title")%>)<% End If %></strong></div></td>

</tr>

<tr>

<%

'If subRs("num") = 1 Then Pk_title = "사람/가구/사물" End If

'If subRs("num") = 2 Then Pk_title = "사람/자세/가구" End If

'If subRs("num") = 3 Then Pk_title = "사람/공간/가구" End If

%>

<%

'If left(subRs("code"),2) = "01" Then Ppic = "1" End If

'If left(subRs("code"),2) = "02" Then Ppic = "2" End If

'If left(subRs("code"),2) = "03" Then Ppic = "3" End If

%>

<% if subRs("image") <> "" Then %>

<td width="200" height="100" bgcolor="#FFFFFF" align="center"><a href="lib_result.asp?id=<%=subRs("id")%>&num=<%=subRs("num")%>&uid=<%=subRs("uid")%>&smtitle=<%=groupRs("title")%>&total_num=<%=intTotalCount%>"><img src="/data/img_file/<%=subRs("image")%>" width="178" height="114" border="0"></a></td>

<% Else %>

<td width="200" height="100" bgcolor="#FFFFFF" align="center"><a href="lib_result.asp?id=<%=subRs("id")%>&num=<%=subRs("num")%>&uid=<%=subRs("uid")%>&smtitle=<%=groupRs("title")%>&total_num=<%=intTotalCount%>"><img src="/images/blank.gif" width="178" height="114" border="0"></a></td>

<% End If %>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFEFE1"><img src="/images/blank.gif" width="200" height="4"></td>

</tr>

</table>

</td>

<% IF j = 0 Then %>

</tr>

<tr>

<% End If %>

<%

subRs.MoveNext

i = i + 1

loop

%>

</td>

</tr>

<tr><td height="10"></td></tr>

</table>

<% End if%>

<%

groupRs.MoveNext

loop

%>

<% End If %>

<% End If %>

<% End If %>

<!-- 반복구간 끝 -->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>index.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title2_1.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>key_main.asp

<%

Pk_title       = Request.QueryString("k_title")

keyword        = Request("keyword")

sort        = Request("sort")

if keyword <> "" Then

intNowPage = Request.QueryString("page")

intPageSize = 10

intBlockPage = 5

If Len(intNowPage) = 0 Then

intNowPage = 1

End If

strSQL = "Select Count(*)"

strSQL = strSQL & ",CEILING(CAST(Count(*) AS FLOAT)/" & intPageSize & ")"

strSQL = strSQL & " from f_db where Len(code2) = 6 and k_title like '%" & keyword & "%' or c_title like '%" & keyword & "%' or e_title like '%" & keyword & "%' or j_title like '%" & keyword & "%'"

Set pageRs = Server.CreateObject("ADODB.RecordSet")

pageRs.Open strSQL, conn

intTotalCount = pageRs(0)

intTotalPage = pageRs(1)

pageRs.Close

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu3.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 키워드 검색</strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/new_i/title_search1_1.jpg"></td>

</tr>

<tr><td height="1" bgcolor="#666666"></td></tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="60" valign="bottom" bgcolor="#F7EFEF">

<div align="right">

<form name="varform" method="post" action="keyword.asp">

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="images/blank.gif" width="550" height="1"></td>

</tr>

<tr>

<td>

<input name="keyword" type="text" value="<%=keyword%>" size="20"><strong> <a href="javascript:check()">검색</a></strong>( 키워드를 입력하세요)

</tr>

</table>

</form>

</div></td>

<td valign="middle" background="images/introduction/title/re_t_sub_back.gif">

<div align="right"> </div></td>

</tr>

</table>

</td>

</tr>

<% If keyword <> "" Then %>

<tr>

<td bgcolor="#A59E9C" height="5"></td>

</tr>

<tr>

<td bgcolor="#F7EFEF" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td>

<table border="0" cellspacing="0" cellpadding="0" width="600" align="right">

<tr>

<td height="40">[<%=keyword%>]에 해당되는 리스트에서 총 <strong> <%=intTotalCount%>  </strong>개의 데이터를 검색했습니다. </td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="400" height="15">

</tr>

<tr>

<td background="/images/new_i/le.gif"><img src="/images/blank.gif" width="400" height="3">

</tr>

<tr>

<td>

<table border=1 cellspacing="0" width="100%" bordercolordark="white" bordercolorlight="black" bordercolor="#EFEFEF">

<tr bgcolor="#F7EFEF" height="25">

<td align="center" rowspan="2" width="30">번호</td>

<td align="center" rowspan="2"><a href="./keyword.asp?keyword=<%=keyword%>">제목</a></td>

<td align="center" rowspan="2" width="60"><a href="./keyword.asp?keyword=<%=keyword%>&sort=contry">보유국가<a></td>

<td align="center" rowspan="2"><a href="./keyword.asp?keyword=<%=keyword%>&sort=age">시대</a></td>

<td align="center" colspan="3">크기</a></td>

<td align="center" rowspan="2"><a href="./keyword.asp?keyword=<%=keyword%>&sort=f_01">행위패턴</a></td>

</tr>

<tr bgcolor="#F7EFEF">

<td height="22" align="center"><a href="./keyword.asp?keyword=<%=keyword%>&sort=psize">가로</a></td>

<td align="center"><a href="./keyword.asp?keyword=<%=keyword%>&sort=Dsize">세로</a></td>

<td align="center"><a href="./keyword.asp?keyword=<%=keyword%>&sort=Hsize">높이</a></td>

</tr>

<!-- 반복구간 시작 -->

<%

subsql = "select * from f_db where Len(code2) = 6 and k_title like '%" & keyword & "%' or c_title like '%" & keyword & "%' or e_title like '%" & keyword & "%' or j_title like '%" & keyword & "%'"

If sort = "" Then

subsql = subsql & " order by k_title asc"

Else

subsql = subsql & " order by " & sort & " desc"

End IF

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

if intTotalCount > 0 Then

srcsql = "select * from f_db where num = '" & subRs("num") & "' and code = " & subRs("code") & ""

set srcRs = server.createobject("adodb.recordset")

Set srcRs = conn.Execute(srcsql)

End If

%>

<% IF subRs.EOF or subRs.EOF then %>

<tr><td colspan="8" align="center" height="30"> 입력된 데이터가 없습니다.</td></tr>

<% Else %>

<% i = 1 %>

<% Do until subRs.EOF %>

<%

If subRs("num") = 1 Then Pk_title = "사람/가구/사물" End If

If subRs("num") = 2 Then Pk_title = "사람/자세/가구" End If

If subRs("num") = 3 Then Pk_title = "사람/공간/가구" End If

%>

<%

If left(subRs("code"),2) = "01" Then Ppic = "1" End If

If left(subRs("code"),2) = "02" Then Ppic = "2" End If

If left(subRs("code"),2) = "03" Then Ppic = "3" End If

%>

<%

Wsize = subRs("psize")

Dsize = subRs("Dsize")

Hsize = subRs("Hsize")

'If size <> "" Then

'full_size = Split(size,":")

'Wsize = full_size(0)

'Hsize = full_size(1)

'Dsize = full_size(2)

'End If

%>

<%

If subRs("contry") = 1 Then Pcontry = "한국" End If

If subRs("contry") = 2 Then Pcontry = "미국" End If

If subRs("contry") = 3 Then Pcontry = "일본" End If

If subRs("contry") = 4 Then Pcontry = "중국" End If

%>

<tr>

<td align="center"><%=i%></td>

<td><a href="pattern_result.asp?list_uid=<%=subRs("num")%>&uid=<%=subRs("uid")%>&pic_num=<%=Ppic%>&code=<%=subRs("code")%>&sub_title=<%=subRs("f_01")%>&sub_title2=<%=srcRs("k_title")%>&k_title=<%=Pk_title%>" target="_self"><strong><%=subRs("k_title")%><% If subRs("c_title") <> "" Then %>(<%=subRs("c_title")%>)<% End If %></strong></a></td>

<td align="center"><%=Pcontry%></td>

<td align="center"><%=subRs("age")%>&nbsp;</td>

<td align="center"><%=Wsize%>&nbsp;</td>

<td align="center"><%=Dsize%>&nbsp;</td>

<td align="center"><%=Hsize%>&nbsp;</td>

<td align="center"><%=subRs("f_01")%></td>

</tr>

<%

subRs.MoveNext

i = i + 1

loop

%>

<% End if%>

<!-- 반복구간 끝 -->

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td height="30"></td>

</tr>

<% End If %>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>key_main2.asp

<%

Pk_title    = Request.QueryString("k_title")

key1        = Request("key1")

key2        = Request("key2")

sub_code        = Request("sub_code")

title      = Request.QueryString("title1")

title2      = Request.QueryString("title2")

keyword     = Request("keyword")

'If keyword <> "" Then

'keyword01 = split(keyword,"(")

'keyword01 = keyword01(0)

'End If

sort        = Request("sort")

if keyword <> "" Then

intNowPage = Request.QueryString("page")

intPageSize = 10

intBlockPage = 5

If Len(intNowPage) = 0 Then

intNowPage = 1

End If

strSQL = "Select Count(*)"

strSQL = strSQL & ",CEILING(CAST(Count(*) AS FLOAT)/" & intPageSize & ")"

strSQL = strSQL & " from f_db where  num = '" & key1 & "' and  Len(code2) = 6 and Left(code2,4) = '" & sub_code & "'"

Set pageRs = Server.CreateObject("ADODB.RecordSet")

pageRs.Open strSQL, conn

intTotalCount = pageRs(0)

intTotalPage = pageRs(1)

pageRs.Close

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu3.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 키워드 검색<%=title2%></strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/new_i/title_search1_2.jpg"></td>

</tr>

<tr><td height="1" bgcolor="#666666"></td></tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="23"><img src="/images/blank.gif" width="20" height="20">

□</strong> <strong>홈 &gt; 행위패턴분류 </strong>

</td>

</tr>

<tr>

<td align="center" valign="top" bgcolor="#FFFFFF"><div align="left"><img src="/images/blank.gif" width="76" height="22"><strong>하위카테고리</strong></div></td>

</tr>

<tr>

<td align="center" valign="top" background="/images/new_i/le.gif" bgcolor="#FFFFFF">

<div align="left"><img src="/images/new_i/white.gif" width="75" height="3"></div></td>

</tr>

<tr>

<td width="746" align="center" valign="top" bgcolor="#FFFFFF">

<table width="80%" border="0">

<tr>

<%

subsql = "select * from f_db where code is NULL order by uid asc"

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

%>

<% IF subRs.EOF or subRs.EOF then %>

<% Else %>

<% Do until subRs.EOF %>

<td width="33%"><img src="/images/new_i/dot1.gif" width="15" height="15"><a href="keyword2.asp?key1=<%=subRs("uid")%>"><strong><%=subRs("k_title")%></strong></a></td>

<%

subRs.MoveNext

loop

%>

<% End if%>

</tr>

</table>

</td>

</tr>

<% If key1 <> "" Then %>

<%

If key1 = 1 Then title = "사람/가구/사물" End If

If key1 = 2 Then title = "사람/자세/가구" End If

If key1 = 3 Then title = "사람/공간/가구" End If

%>

<tr>

<td valign="top" bgcolor="#FFFFFF">&nbsp;</td>

</tr>

<tr>

<td valign="top" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#FFFFFF">

<table border="0" cellpadding="1" cellspacing="0">

<tr>

<td width="550"><img src="/images/blank.gif" width="580" height="1"></td>

</tr>

<tr>

<td><div align="left"><strong><img src="/images/blank.gif" width="36" height="15"><img src="/images/new_i/d_title1.gif" width="18" height="17">

-&gt;</strong> <strong><%=title%> 디렉토리</strong></div></td>

</tr>

</table></td>

</tr>

<tr>

<td valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="1%"><img src="/images/blank.gif" width="82" height="22"></td>

<td width="99%"><strong>하위카테고리</strong></td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="50" height="3"></td>

<td background="/images/new_i/le.gif"><img src="images/blank.gif" width="555" height="3">

</td>

</tr>

<tr>

<td width="65">&nbsp;</td>

<td>

<% If key1 <> "" Then %>

<table width="80%" border="0" cellpadding="0" cellspacing="0">

<tr>

<%

subsql = "select * from f_db WHERE len(code) = 2 and num = '" & key1 & "' and code2 is NULL ORDER BY code asc"

set sub2Rs = server.createobject("adodb.recordset")

Set sub2Rs = conn.Execute(subsql)

%>

<% IF sub2Rs.EOF or sub2Rs.EOF then %>

<% Else %>

<% Do until sub2Rs.EOF %>

<td width="33%"><img src="/images/new_i/dot1.gif" width="15" height="15"><a href="keyword2.asp?key1=<%=key1%>&key2=<%=sub2Rs("code")%>&title2=<%=sub2Rs("k_title")%>"><%=sub2Rs("k_title")%></a></td>

<%

sub2Rs.MoveNext

loop

%>

<% End If %>

</tr>

</table>

<% End If %>

</td>

</tr>

</table></td>

</tr>

<tr><td height="30"></td></tr>

<% End If %>

<% If key2 <> "" Then %>

<tr>

<td valign="top" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#FFFFFF">

<table border="0" cellpadding="1" cellspacing="0">

<tr>

<td width="550"><img src="/images/blank.gif" width="580" height="1"></td>

</tr>

<tr>

<td><div align="left"><strong><img src="/images/blank.gif" width="51" height="19"><img src="/images/new_i/d_title1.gif" width="18" height="17">

-&gt;</strong> <strong><%=title2%> 디렉토리</strong></div></td>

</tr>

</table></td>

</tr>

<tr>

<td valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="95"><img src="/images/blank.gif" width="95" height="22"></td>

<td width="651"><strong>하위카테고리</strong></td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="50" height="3"></td>

<td background="/images/new_i/le.gif"><img src="images/blank.gif" width="400" height="3">

</td>

</tr>

<tr>

<td>&nbsp;</td>

<td><table width="87%" border="0">

<tr>

<%

sub3sql = "select * from f_db where num = '" & key1 & "' and left(code,2) = '" & key2 & "' and LEN(code2) = 4 order by code desc"

set sub3Rs = server.createobject("adodb.recordset")

Set sub3Rs = conn.Execute(sub3sql)

%>

<% IF sub3Rs.EOF or sub3Rs.EOF then %>

<% Else %>

<% i = 1 %>

<% Do until sub3Rs.EOF %>

<%

strSQL = "Select Count(*)"

strSQL = strSQL & " from f_db where num = '" & key1 & "' and left(code2,4) = '" & sub3Rs("code") & "' and LEN(code2) > 4"

Set numRs = Server.CreateObject("ADODB.RecordSet")

numRs.Open strSQL, conn

intnumTotalCount = numRs(0)

numRs.Close

%>

<% j = Int(i mod 3) %>

<td width="33%"><img src="/images/new_i/dot1.gif" width="15" height="15"><a href="keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&title2=<%=title2%>&sub_code=<%=sub3Rs("code")%>&keyword=<%=sub3Rs("k_title")%>"><%=sub3Rs("k_title")%> (<%=intnumTotalCount%>)</a></td>

<% IF j = 0 Then %>

</tr>

<tr>

<% End If %>

<%

sub3Rs.MoveNext

i = i + 1

loop

%>

<% End If %>

</tr>

</table></td>

</tr>

</table></td>

</tr>

<tr><td height="30"></td></tr>

<% End If %>

<% If keyword <> "" Then %>

<tr>

<td bgcolor="#A59E9C" height="5"></td>

</tr>

<tr>

<td bgcolor="#F7EFEF" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td>

<table border="0" cellspacing="0" cellpadding="0" width="600" align="right">

<tr>

<td height="40">[<%=keyword%>]에 해당되는 리스트에서 총 <strong> <%=intTotalCount%>  </strong>개의 데이터를 검색했습니다. </td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="400" height="15">

</tr>

<tr>

<td background="/images/new_i/le.gif"><img src="/images/blank.gif" width="400" height="3">

</tr>

<tr>

<td>

<table border=1 cellspacing="0" width="100%" bordercolordark="white" bordercolorlight="black" bordercolor="#EFEFEF">

<tr bgcolor="#F7EFEF" height="25">

<td align="center" rowspan="2" width="30">번호</td>

<td align="center" rowspan="2"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>">제목</a></td>

<td align="center" rowspan="2" width="60"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=contry">보유국가<a></td>

<td align="center" rowspan="2"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=age">시대</a></td>

<td align="center" colspan="3">크기</a></td>

<td align="center" rowspan="2"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=f_01">행위패턴</a></td>

</tr>

<tr bgcolor="#F7EFEF">

<td height="22" align="center"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=psize">가로</a></td>

<td align="center"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=Dsize">세로</a></td>

<td align="center"><a href="./keyword2.asp?key1=<%=key1%>&key2=<%=key2%>&sub_code=<%=sub_code%>&title2=<%=title2%>&keyword=<%=keyword%>&sort=Hsize">높이</a></td>

</tr>

<!-- 반복구간 시작 -->

<%

subsql = "select * from f_db where num = '" & key1 & "' and Len(code2) = 6 and LEFT(code2,4) = '" & sub_code & "'"

If sort = "" Then

subsql = subsql & " order by k_title asc"

Else

subsql = subsql & " order by " & sort & " desc"

End IF

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

if intTotalCount > 0 Then

srcsql = "select * from f_db where num = '" & subRs("num") & "' and code = " & subRs("code") & ""

set srcRs = server.createobject("adodb.recordset")

Set srcRs = conn.Execute(srcsql)

End If

%>

<% IF subRs.EOF or subRs.EOF then %>

<tr><td colspan="8" align="center" height="30"> 입력된 데이터가 없습니다.</td></tr>

<% Else %>

<% i = 1 %>

<% Do until subRs.EOF %>

<%

If subRs("num") = 1 Then Pk_title = "사람/가구/사물" End If

If subRs("num") = 2 Then Pk_title = "사람/자세/가구" End If

If subRs("num") = 3 Then Pk_title = "사람/공간/가구" End If

%>

<%

If left(subRs("code"),2) = "01" Then Ppic = "1" End If

If left(subRs("code"),2) = "02" Then Ppic = "2" End If

If left(subRs("code"),2) = "03" Then Ppic = "3" End If

%>

<%

Wsize = subRs("psize")

Dsize = subRs("Dsize")

Hsize = subRs("Hsize")

'If size <> "" Then

'full_size = Split(size,":")

'Wsize = full_size(0)

'Hsize = full_size(1)

'Dsize = full_size(2)

'End If

%>

<%

If subRs("contry") = 1 Then Pcontry = "한국" End If

If subRs("contry") = 2 Then Pcontry = "미국" End If

If subRs("contry") = 3 Then Pcontry = "일본" End If

If subRs("contry") = 4 Then Pcontry = "중국" End If

%>

<tr>

<td align="center"><%=i%></td>

<td><a href="pattern_result.asp?list_uid=<%=subRs("num")%>&uid=<%=subRs("uid")%>&pic_num=<%=Ppic%>&code=<%=subRs("code")%>&sub_title=<%=subRs("f_01")%>&sub_title2=<%=srcRs("k_title")%>&k_title=<%=Pk_title%>" target="_self"><strong><%=subRs("k_title")%><% If subRs("c_title") <> "" Then %>(<%=subRs("c_title")%>)<% End If %></strong></a></td>

<td align="center"><%=Pcontry%></td>

<td align="center"><%=subRs("age")%>&nbsp;</td>

<td align="center"><%=Wsize%>&nbsp;</td>

<td align="center"><%=Dsize%>&nbsp;</td>

<td align="center"><%=Hsize%>&nbsp;</td>

<td align="center"><%=subRs("f_01")%>&nbsp;</td>

</tr>

<%

subRs.MoveNext

i = i + 1

loop

%>

<% End if%>

<!-- 반복구간 끝 -->

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td height="30"></td>

</tr>

<% End If %>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>keyword.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

<SCRIPT LANGUAGE="JavaScript">

<!--

function check() {

var obj;

obj = document.varform;

sw = 1;

if (obj.keyword.value == "") {

alert("검색어를 입력하세요");

obj.keyword.focus();

sw = 0;

}

if (sw) {

obj.submit();

}

}

//-->

</SCRIPT>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif');document.varform.keyword.focus()">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title3_1.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./key_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>keyword2.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

<SCRIPT LANGUAGE="JavaScript">

<!--

function check() {

var obj;

obj = document.varform;

sw = 1;

if (obj.keyword.value == "") {

alert("검색어를 입력하세요");

obj.keyword.focus();

sw = 0;

}

if (sw) {

obj.submit();

}

}

//-->

</SCRIPT>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif');">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title3_1.gif" width="839" height="148"

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./key_main2.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>keyword_start.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title3_1.gif" width="839" height="148"

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./ks_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>ks_main.asp

<%

Pk_title       = Request.QueryString("k_title")

Puid           = Request.QueryString("uid")

If Puid = "" Then

Puid = 1

Pk_title = "사람/가구/사물"

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu3.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif"><font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□

Root &gt; 키워드 검색</strong></td>

</tr>

<tr>

<td valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="746" bgcolor="#FFFFFF"><img src="/images/keyword/key-w1.gif" width="356" height="50"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF"><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#999999"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

</table></td>

</tr>

<tr>

<td valign="top" bgcolor="#FFFFFF">&nbsp;</td>

</tr>

<tr>

<td valign="top" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#FFFFFF">&nbsp;</td>

</tr>

<tr>

<td valign="top" bgcolor="#F6EFEF"> <table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="2%" height="285"><img src="/images/blank.gif" width="20" height="41"></td>

<td width="44%"><a href="keyword.asp" target="_self"><img src="/images/new_i/s1.jpg" width="287" height="280" border="0"></a></td>

<td width="4%"><img src="/images/blank.gif" width="20" height="41"></td>

<td width="47%"><a href="keyword2.asp" target="_self"><img src="/images/new_i/s2.jpg" width="287" height="280" border="0"></a></td>

<td width="3%"><img src="/images/blank.gif" width="20" height="41"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

<td>&nbsp;</td>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

</table>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="3%"><img src="/images/blank.gif" width="20" height="10"></td>

<td width="95%"><p>키워드 검색에는 크게 종합검색과 카테고리별 검색방법이

있습니다.</p>

<p>첫째, <strong>종합검색방법</strong>은 한국, 중국, 일본의

가구데이타베이스중에서 키워드를 입력해서 동일한 키워드가 검색되는 것을 기준으로

찾아내는 검색방법입니다.</p>

<p>둘째, <strong>카테고리별 검색방법</strong>은 본 연구에서

한국, 중국, 일본의 가구중 행위패턴분류 기준을 중심으로 카테고리별로 검새하는

방법으로 해당되는 하위카테고리를 검색하여 그중에서 자신이 원하는 정보를

찾아보는 검색방법입니다.</p>

<p>다음 두가지 방법중 원하는 검색방법을 중심으로 검색하시기 바랍니다.</p></td>

<td width="2%"><img src="/images/blank.gif" width="20" height="10"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

</table>

<p>&nbsp;</p>

</td>

</tr>

<tr>

<td valign="top" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#FFFFFF"><strong>

</strong><strong></strong></td>

</tr>

<tr>

<td valign="top" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#FFFFFF"><strong><img src="/images/blank.gif" width="25" height="26"></strong></td>

</tr>

<tr>

<td valign="top" bgcolor="#F6EFEF"> <p>&nbsp;</p></td>

</tr>

</table> </td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>left_menu.asp

<table border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="images/blank.gif" width="4" height="4"></td></tr>

<tr><td height="5" colspan="2"><img src="/images/pattern/member_pattern.gif" width="171" height="24"></td></tr>

<tr><td height="1" colspan="2" bgcolor="#dddddd"></td></tr>

<%

subsql = "select * from f_db where code is NULL order by uid asc"

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

%>

<% IF subRs.EOF or subRs.EOF then %>

<% Else %>

<% Do until subRs.EOF %>

<tr  bgcolor="#FFF1EC" onClick="location.href='./index.asp?uid=<%=subRs("uid")%>&k_title=<%=subRs("k_title")%>'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666"><%=subRs("k_title")%></font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#dddddd"></td></tr>

<%

subRs.MoveNext

loop

%>

<% End if%>

</table>

Root>Public>left_menu2.asp

<table border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="images/blank.gif" width="4" height="4"></td></tr>

<tr><td height="5" colspan="2"><img src="/images/imagesearch/image-click.gif" width="171" height="24"></td></tr>

<tr><td height="1" colspan="2" bgcolor="#dddddd"></td></tr>

<tr bgcolor="#FFF1EC" onClick="location.href='./imagesearch.asp?code=01&num=1&k_title=Put%20things%20in'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">행위패턴</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

<tr bgcolor="#FFF1EC" onClick="location.href='./imagesearch2.asp?id=1&title=구조'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">구조</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

<tr bgcolor="#FFF1EC" onClick="location.href='./imagesearch2.asp?id=2&title=문양'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">문양</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

<tr bgcolor="#FFF1EC" onClick="location.href='./imagesearch2.asp?id=3&title=금구장식'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">금구장식</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

<tr bgcolor="#FFF1EC" onClick="location.href='./imagesearch2.asp?id=4&title=재료'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">재료</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

</table>

Root>Public>left_menu3.asp

<table border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="images/blank.gif" width="4" height="4"></td></tr>

<tr><td height="5" colspan="2"><img src="/images/pattern/member_pattern.gif" width="171" height="24"></td></tr>

<tr><td height="1" colspan="2" bgcolor="#dddddd"></td></tr>

<tr  bgcolor="#FFF1EC" onClick="location.href='./keyword.asp'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">종합검색</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

<tr  bgcolor="#FFF1EC" onClick="location.href='./keyword2.asp'" onMouseOut="style.backgroundColor='';" onMouseOver="style.backgroundColor='#dddddd'; style.cursor='hand';">

<td width="5" height="20"><img src="/public/dot.gif" width="5" height="1"></td>

<td width="125" valign="bottom">

<span><b><font color="#666666">카테고리 검색</font>

</td>

</tr>

<tr><td height="1" colspan="2" bgcolor="#666666"></td></tr>

</table>

Root>Public>lib_result.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/ti-ani.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./lib_result_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>lib_result_main.asp

<%

Pk_title       = Request.QueryString("smtitle")

Puid           = Request.QueryString("uid")

Pnum           = Request.QueryString("num")

Ptotal_num           = Request.QueryString("total_num")

Pid           = Request.QueryString("id")

pic_Pid = Int(Pid + 1)

'Plist_uid      = Request.QueryString("list_uid")

'Pcode          = Request.QueryString("code")

'Ppic_num       = Request.QueryString("pic_num")

'Psub_code      = Request("sub_code")

'Psub_title     = Request("sub_title")

'Psub_title2    = Request("sub_title2")

'Ppage	= Request.QueryString("page")

If Pid = 1 Then mtitle = "구조" End If

If Pid = 2 Then mtitle = "문양" End If

If Pid = 3 Then mtitle = "금구장식" End If

If Pid = 4 Then mtitle = "재료" End If

%>

<%

strSQL = "     SET TEXTSIZE 16384 " _

& "  SELECT title, c_title, j_title, e_title " _

& "         num, code, id, contry, image, vr_file, vr_map, script, script2 " _

& "    FROM lib01 " _

& "   WHERE uid    = " & Puid

'strSQL = "Select * FROM lib01 where uid = '" & Puid & "'"

set objRs = server.createobject("adodb.recordset")

Set objRs = conn.Execute(strSQL)

If objRs("contry") = 1 Then contry = "한국" End If

If objRs("contry") = 2 Then contry = "중국" End If

If objRs("contry") = 3 Then contry = "일본" End If

%>

<%

'titlesql = "select * from f_db where num = '" & Puid & "' and code = '" & Pcode & "'"

'set titleRs = server.createobject("adodb.recordset")

'Set titleRs = conn.Execute(titlesql)

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu2.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 행위패턴 &gt; <%=Pk_title%></strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/search/s<%=pic_Pid%>_1.gif"></td>

</tr>

<tr><td bgcolor="#999999" height="1"></td></tr>

<tr>

<td bgcolor="#FFFFFF">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="100%" align="center" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="100%" valign="top" background="/images/introduction/title/re_t_sub_back.gif">

<table width="80%" align="right" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="28">

<strong><%=mtitle%>이미지 검색 후 총 <%=Ptotal_num%>개를 검색했습니다. </strong>

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<img src="/images/search/s<%=pic_Pid%>_1_result.gif">

</td>

</tr>

<tr>

<td height="30"></td>

</tr>

<tr>

<td width="100%" align="center" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="100%" valign="top" background="/images/introduction/title/re_t_sub_back.gif">

<table width="100%" align="right" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="28">

<img src="/images/new_i/d_title1.gif" width="18" height="17">

<strong><%=objRs("title")%></strong>

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<!-- 컨텐츠 시작 -->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td valign="top">

<table width="12" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="75" height="74" bgcolor="#FFFFFF">

<% if objRs("image") <> "" Then %>

<img src="/data/img_file/<%=objRs("image")%>" width="207" height="171">

<% Else %>

<img src="/images/blank.gif" width="207" height="171">

<% End If %>

</td>

</tr>

</table>

<div align="center"></div>

<div align="center">

<p>

<% if objRs("image") <> "" Then %>

<a href="#" onfocus='this.blur()' onClick="MM_openBrWindow('./zoom_page.asp?file=<%=objRs("image")%>','','')"><img src="/images/new_i/zoom.gif" width="66" height="24" border="0"></a>

<% End If %>

<% If objRs("vr_file") <> "" Then %>

<a href="#" onfocus='this.blur()' onClick="MM_openBrWindow('../pattern_resut_web3d.asp?dir_path=1_<%=objRs("num")%>_<%=objRs("code")%>&vr_name=<%=objRs("vr_file")%>&title_name=<%=objRs("title")%>','vr','toolbar=no,status=yes,resizable=no,scrollbars=no,width=670,height=580')"><img src="/images/new_i/web3d.gif" width="66" height="24" border="0"></a></p>

<% End If %>

</div></td>

<td width="473" valign="top">

<table width="100%" border="0">

<tr valign="top">

<td height="1" colspan="2" bgcolor="#666666"></td>

</tr>

<tr valign="top">

<td width="20%"><strong>카테고리</strong></td>

<td width="81%">

<p>: Root &gt; 이미지 검색 &gt;<%=mtitle%> &gt; <%=Pk_title%> </p>

</td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>제조국가</strong></td>

<td width="81%">

<p>: <%=contry%> </p>

</td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>설명</strong></td>

<td width="81%">

<p>: <%=Replace(objRs("script"), Chr(10), "<BR>")%> </p>

</td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>특징</strong></td>

<td width="81%">

<p>: <%=Replace(objRs("script2"), Chr(10), "<BR>")%> </p>

</td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

</td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="73" height="4"></td>

<td><img src="/images/blank.gif" width="450" height="1"></td>

</tr>

</table>

<!-- 컨텐츠 끝 -->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>main.asp

<%

Pk_title       = Request.QueryString("k_title")

Puid           = Request.QueryString("uid")

If Puid = "" Then

Puid = 1

Pk_title = "사람/가구/사물"

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; <%=Pk_title%></strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/pattern/p<%=Puid%>.gif" width="461" height="50"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<!-- 반복구간 시작 -->

<%

subsql = "select * from f_db where num = '" & Puid & "' and Len(code) = 2 and code2 is NULL order by uid asc"

set subRs = server.createobject("adodb.recordset")

Set subRs = conn.Execute(subsql)

%>

<% IF subRs.EOF or subRs.EOF then %>

<% Else %>

<% i = 1 %>

<% Do until subRs.EOF %>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="33%">

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="200" height="100" bgcolor="#FFFFFF">

<a href="pattern_view.asp?uid=<%=Puid%>&code=<%=subRs("code")%>&pic_num=<%=i%>&k_title=<%=Pk_title%>" target="_self"><img src="/images/pattern/p<%=Puid%>-<%=i%>.gif" width="200" height="100" border="0"></a>

</td>

</tr>

</table>

</td>

<td width="67%" valign="top">

<table border="0" width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td colspan="2"><img src="images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td align="right" height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7">

<table height="25" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="400" height="1"></td>

</tr>

<tr>

<td height="24" align="left"><strong><font size="3"><%=subRs("k_title")%></font></strong></td>

</tr>

</table>

</td>

<td align="right" valign="middle" background="/images/introduction/title/re_t_sub_back.gif">

<a href="pattern_view.asp?uid=<%=Puid%>&code=<%=subRs("code")%>&pic_num=<%=i%>&k_title=<%=Pk_title%>" target="_self"><img src="/images/more_s.gif" width="44" height="24" border="0"></a>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="16" height="1"></td>

<td bgcolor="#666666"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td height="16">&nbsp;</td>

<td>의미 : <%=subRs("script")%></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>분류 :

<%

subsql = "select * from f_db where num = '" & Puid & "' and left(code,2) = '" & subRs("code") & "' and LEN(code2) = 4 order by code desc"

set subRs2 = server.createobject("adodb.recordset")

Set subRs2 = conn.Execute(subsql)

%>

<% IF subRs2.EOF or subRs2.EOF then %>

<% Else %>

<% Do until subRs2.EOF %>

<%=subRs2("k_title")%>,

<%

subRs2.MoveNext

loop

%>

<% End if%>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

</table>

<%

subRs.MoveNext

i = i + 1

loop

%>

<% End if%>

<!-- 반복구간 끝 -->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>pattern_result.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title2_1.gif" width="839" height="148"

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./pattern_result_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>pattern_result_main.asp

<%

Pk_title       = Request.QueryString("k_title")

Puid           = Request.QueryString("uid")

Plist_uid           = Request.QueryString("list_uid")

Pcode          = Request.QueryString("code")

Ppic_num       = Request.QueryString("pic_num")

Psub_code      = Request("sub_code")

Psub_title     = Request("sub_title")

Psub_title2     = Request("sub_title2")

Ppage	= Request.QueryString("page")

%>

<%

strSQL = "Select * FROM f_db where uid = '" & Puid & "'"

set objRs = server.createobject("adodb.recordset")

Set objRs = conn.Execute(strSQL)

%>

<%

titlesql = "select * from f_db where num = '" & Plist_uid & "' and code = '" & Pcode & "' and code2 = '" & Pcode & "'"

set titleRs = server.createobject("adodb.recordset")

Set titleRs = conn.Execute(titlesql)

%>

<% If objRs("lib01") > 0 Then

sql = "select * from lib01 where uid = '" & objRs("lib01") & "'"

set libRs = server.createobject("adodb.recordset")

Set libRs = conn.Execute(sql)

%>

<% End If %>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 행위패턴 &gt; <%=Pk_title%></strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/pattern/p<%=Plist_uid%>.gif" width="461" height="50"></td>

</tr>

<tr><td bgcolor="#999999" height="1"></td></tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="612" align="center" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="1%" valign="top">

<table width="12%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="75" height="74" bgcolor="#FFFFFF"><a href="Javascript:history.back()" target="_self"><img src="/images/search/action_ani/a<%=Plist_uid%>-<%=Ppic_num%>.gif" width="73" height="74" border="0"></a></td>

</tr>

</table>

</td>

<td width="99%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/introduction/title/re_t_sub_back.gif">

<table border="0" cellpadding="1" cellspacing="0">

<tr>

<td width="550"><img src="/images/blank.gif" width="580" height="1"></td>

</tr>

<tr>

<td><div align="left"><strong><img src="/images/new_i/d_title1.gif" width="18" height="17">

</strong><strong>□</strong> 행위패턴분류 &gt;<%=Pk_title%> &gt; <%=Psub_title%> &gt; <strong><%=Psub_title2%></strong>

</div></td>

</tr>

</table> </td>

</tr>

</table>

<table width="100%" border="0">

<tr>

<td><img src="/images/blank.gif" width="15" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

<tr>

<td width="40">&nbsp;</td>

<td valign="top"> <table width="100%" border="0">

<tr>

<td width="10%" valign="top"><strong><%=Psub_title2%></strong> : </td>

<td width="90%"><% If titleRs("script") <> "" Then %><%=Replace(titleRs("script"), Chr(10), "<BR>")%><% Else %>입력데이터가 없습니다.<% End If %></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

</table> </td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="15" height="2"></td>

<td valign="top" background="/images/new_i/line_1.gif"><img src="images/blank.gif" width="15" height="2"></td>

</tr>

</table></td>

</tr>

<tr>

<td width="1%">&nbsp;</td>

<td bgcolor="#FCEFC7">&nbsp;</td>

</tr>

</table> </td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<!-- 컨텐츠 시작 -->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="184" valign="top">

<table width="12" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="75" height="74" bgcolor="#FFFFFF">

<% if objRs("img_file") <> "" Then %>

<% s_extension	= Mid(objRs("img_file"), InStrRev(objRs("img_file"), ".")) %>

<% End If %>

<% if objRs("img_file") <> "" Then %>

<img src="/data/img_file/<%=objRs("num")%>_<%=objRs("code")%>_<%=objRs("uid")%><%=s_extension%>" width="178" height="114">

<% Else %>

<img src="/images/blank.gif" width="178" height="114">

<% End If %>

</td>

</tr>

</table>

<div align="center"></div>

<div align="center">

<p>

<% if objRs("img_file") <> "" Then %>

<a href="#" onfocus='this.blur()' onClick="MM_openBrWindow('./zoom_page.asp?file=<%=objRs("num")%>_<%=objRs("code")%>_<%=objRs("uid")%><%=s_extension%>','','')"><img src="/images/new_i/zoom.gif" width="66" height="24" border="0"></a>

<% End If %>

<% If objRs("lib01") > 0 Then %>

<% If libRs("vr_file") <> "" Then %>

<a href="#" onfocus='this.blur()' onClick="MM_openBrWindow('../pattern_resut_web3d.asp?dir_path=1_<%=libRs("num")%>_<%=libRs("code")%>&vr_name=<%=libRs("vr_file")%>&title_name=<%=libRs("title")%>','vr','toolbar=no,status=yes,resizable=no,scrollbars=no,width=670,height=580')"><img src="/images/new_i/web3d.gif" width="66" height="24" border="0"></a></p>

<% End If %>

<% End If %>

</div></td>

<td width="473" valign="top"> <table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="17"><img src="/images/blank.gif" width="4" height="1"></td>

<td width="456"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td width="17" background="/images/introduction/title/re_t_sub_back.gif"><strong><img src="/images/new_i/d_title1.gif" width="18" height="17"></strong></td>

<td><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7">

<div align="left"></div>

<table height="25" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="400" height="1"></td>

</tr>

<tr>

<td height="24"> <div align="left"><strong><%=objRs("k_title")%></strong></div></td>

</tr>

</table></td>

<td valign="middle" background="/images/introduction/title/re_t_sub_back.gif">

<div align="right"> </div></td>

</tr>

</table></td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="16" height="1"></td>

<td bgcolor="#666666"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td height="16">&nbsp;</td>

<td><table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>제조국가

</strong></td>

<%

If objRs("contry") = 1 Then Pcontry = "한국" End If

If objRs("contry") = 2 Then Pcontry = "미국" End If

If objRs("contry") = 3 Then Pcontry = "일본" End If

If objRs("contry") = 4 Then Pcontry = "중국" End If

%>

<td width="81%"><strong>: <%=Pcontry%></strong></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>시대

</strong></td>

<td width="81%"><strong>:</strong> <%=objRs("age")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>크기

</strong></td>

<td width="81%">: <%=objRs("psize")%>*<%=objRs("Dsize")%>*<%=objRs("Hsize")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>조형적

특성 </strong></td>

<td width="81%"> <table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>구조해석</strong></td>

<td width="91%"><strong>:</strong>

<%=objRs("jo_01")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>재료</strong></td>

<td width="91%"><strong>:

</strong><%=objRs("jo_02")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>문양 및 금구장식</strong></td>

<td width="91%"><strong>:</strong>

<%=objRs("jo_03")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>마감</strong></td>

<td width="91%"><strong>:</strong>

<%=objRs("jo_04")%></td>

</tr>

<tr valign="top">

<td><img src="/images/blank.gif" width="55" height="2"></td>

<td><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>요소별 특성 </strong></td>

<td width="81%"><table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>행위패턴</strong></td>

<td width="91%">: <%=objRs("f_01")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>물리적</strong></td>

<td width="91%">: <%=objRs("f_02")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>형태적</strong></td>

<td width="91%">: <%=objRs("f_03")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>표식적</strong></td>

<td width="91%">: <%=objRs("f_04")%></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="55" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="9%"><strong>상징적</strong></td>

<td width="91%"><strong>:</strong>

<%=objRs("f_05")%></td>

</tr>

<tr valign="top">

<td><img src="/images/blank.gif" width="55" height="2"></td>

<td><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>구조

</strong></td>

<td width="81%"><strong>:

</strong><% If objRs("lib01") > 0 Then %><%=libRs("title")%><% Else %>입력데이터가 없습니다.<% End If %></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>문양

</strong></td>

<% If objRs("lib02") > 0 Then

lib02sql = "select * from lib01 where uid = '" & objRs("lib02") & "'"

set lib02Rs = server.createobject("adodb.recordset")

Set lib02Rs = conn.Execute(lib02sql)

%>

<% End If %>

<td width="81%"><strong>:

</strong><% If objRs("lib02") > 0 Then %><%=lib02Rs("title")%><% Else %>입력데이터가 없습니다.<% End If %></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>금구장식

</strong></td>

<% If objRs("lib03") > 0 Then

lib03sql = "select * from lib01 where uid = '" & objRs("lib03") & "'"

set lib03Rs = server.createobject("adodb.recordset")

Set lib03Rs = conn.Execute(lib03sql)

%>

<% End If %>

<td width="81%">: <% If objRs("lib03") > 0 Then %><%=lib03Rs("title")%><% Else %>입력데이터가 없습니다.<% End If %></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table>

<table width="100%" border="0">

<tr valign="top">

<td width="20%"><strong>재료

</strong></td>

<% If objRs("lib04") > 0 Then

lib04sql = "select * from lib01 where uid = '" & objRs("lib04") & "'"

set lib04Rs = server.createobject("adodb.recordset")

Set lib04Rs = conn.Execute(lib04sql)

%>

<% End If %>

<td width="81%">: <% If objRs("lib04") > 0 Then %><%=lib04Rs("title")%><% Else %>입력데이터가 없습니다.<% End If %></td>

</tr>

<tr valign="top">

<td background="/images/new_i/line_0.gif"><img src="/images/blank.gif" width="65" height="2"></td>

<td background="/images/new_i/line_1.gif"><img src="/images/blank.gif" width="15" height="2"></td>

</tr>

</table></td>

</tr>

<tr>

<td height="36">

<p><img src="/images/blank.gif" width="15" height="2"></p></td>

<td><img src="/images/blank.gif" width="15" height="2">

<p align="right"><span

lang=EN-US style='font-size:9.0pt;font-family:HY신명조'><o:p></o:p></span></p>

<p align="right"><span

lang=EN-US style='font-size:9.0pt;font-family:HY신명조'><o:p></o:p></span></p>

</td>

</tr>

</table></td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="73" height="4"></td>

<td><img src="/images/blank.gif" width="450" height="1"></td>

</tr>

</table>

<!-- 컨텐츠 끝 -->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>pattern_view.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/title_images/title2_1.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./pattern_view_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>pattern_view_main.asp

<%

Pk_title       = Request.QueryString("k_title")

Puid           = Request.QueryString("uid")

Pcode          = Request.QueryString("code")

Ppic_num       = Request.QueryString("pic_num")

Psub_code      = Request("sub_code")

Psub_title     = Request("sub_title")

Ppage	= Request.QueryString("page")

%>

<%

If Psub_code = "" Then

codesql = "select * from f_db where num = '" & Puid & "' and left(code,2) = '" & Pcode & "' and LEN(code2) = 4 order by code asc"

set subcodeRs = server.createobject("adodb.recordset")

Set subcodeRs = conn.Execute(codesql)

Psub_code = subcodeRs("code")

Psub_title = subcodeRs("K_title")

End If

%>

<%

intNowPage = Request.QueryString("page")

intPageSize = 4

intBlockPage = 50

'블럭 Pre뷰 문제

If Len(intNowPage) = 0 Then

intNowPage = 1

End If

strSQL = "Select Count(*)"

strSQL = strSQL & ",CEILING(CAST(Count(*) AS FLOAT)/" & intPageSize & ")"

strSQL = strSQL & " from f_db where num = '" & Puid & "' and left(code2,4) = '" & Psub_code & "' and LEN(code2) > 4"

Set objRs = Server.CreateObject("ADODB.RecordSet")

objRs.Open strSQL, conn

intTotalCount = objRs(0)

intTotalPage = objRs(1)

objRs.Close

strSQL = "Select Top " & intNowPage * intPageSize & " uid"

strSQL = strSQL & ",num"

strSQL = strSQL & ",code"

strSQL = strSQL & ",code2"

strSQL = strSQL & ",contry"

strSQL = strSQL & ",k_title"

strSQL = strSQL & ",e_title"

strSQL = strSQL & ",c_title"

strSQL = strSQL & ",j_title"

strSQL = strSQL & ",age"

strSQL = strSQL & ",script"

strSQL = strSQL & ",psize"

strSQL = strSQL & ",Dsize"

strSQL = strSQL & ",Hsize"

strSQL = strSQL & ",infor"

strSQL = strSQL & ",img_file"

strSQL = strSQL & " FROM f_db"

strSQL = strSQL & " where num = '" & Puid & "' and left(code2,4) = '" & Psub_code & "' and LEN(code2) > 4 order by code2 desc"

set objRs = server.createobject("adodb.recordset")

objRs.open strSQL,conn

%>

<%

titlesql = "select * from f_db where num = '" & Puid & "' and code = '" & Pcode & "'"

set titleRs = server.createobject("adodb.recordset")

Set titleRs = conn.Execute(titlesql)

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<!-- #include file="./left_menu.asp" -->

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; <%=Pk_title%></strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/pattern/p<%=Puid%>.gif" width="461" height="50"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="200">

<table width="200" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="200" height="100" bgcolor="#FFFFFF">

<img src="/images/pattern/p<%=Puid%>-<%=Ppic_num%>.gif" width="200" height="100" border="0">

</td>

</tr>

</table>

</td>

<td valign="top">

<table border="0" width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td colspan="2"><img src="images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td align="right" height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7">

<table width="100%" height="30" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="400" height="1"></td>

</tr>

<tr>

<td height="24" align="left"><strong><font size="3"><%=titleRs("k_title")%></font></strong></td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td><img src="/images/blank.gif" width="16" height="1"></td>

<td bgcolor="#666666"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td height="16">&nbsp;</td>

<td>의미 : <%=titleRs("script")%></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>분류 :

<%

subsql = "select * from f_db where num = '" & Puid & "' and left(code,2) = '" & Pcode & "' and LEN(code2) = 4 order by code desc"

set subRs2 = server.createobject("adodb.recordset")

Set subRs2 = conn.Execute(subsql)

%>

<% IF subRs2.EOF or subRs2.EOF then %>

<% Else %>

<% Do until subRs2.EOF %>

<%=subRs2("k_title")%>,

<%

subRs2.MoveNext

loop

%>

<% End if%>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="5" colspan="2"><img src="/images/blank.gif" width="20" height="5"></td>

</tr>

</table>

<%

If Psub_code = "" Then

codesql = "select * from f_db where num = '" & Puid & "' and left(code,2) = '" & Pcode & "' and LEN(code2) = 4 order by code asc"

set subcodeRs = server.createobject("adodb.recordset")

Set subcodeRs = conn.Execute(codesql)

End If

%>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#EFEFEF"><strong><font color="#FFFFFF"></font></strong>

<table width="100%" border="0" cellpadding="1" cellspacing="2" bgcolor="#CCCCCC">

<tr>

<td width="83%" bgcolor="#FFFFFF"><strong><strong>□<font size="2"> 행위패턴분류 &gt; </font></strong><font size="2"><%=Pk_title%> &gt; <%=titleRs("k_title")%> &gt; <%=Psub_title%></font></strong> </td>

<td width="17%" bgcolor="#FFFFFF"><form name="form1">

<div align="right">

<select name="menu1" onChange="MM_jumpMenu('parent',this,0)" style="width:120">

<%

subsql = "select * from f_db where num = '" & Puid & "' and left(code,2) = '" & Pcode & "' and LEN(code2) = 4 order by code asc"

set subRs2 = server.createobject("adodb.recordset")

Set subRs2 = conn.Execute(subsql)

%>

<% IF subRs2.EOF or subRs2.EOF then %>

<% Else %>

<% Do until subRs2.EOF %>

<% If subRs2("code") = Psub_code Then

selected = "selected"

Else

selected = ""

End If

%>

<option value="pattern_view.asp?uid=<%=Puid%>&code=<%=Pcode%>&sub_code=<%=subRs2("code")%>&sub_title=<%=subRs2("k_title")%>&pic_num=<%=Ppic_num%>&k_title=<%=Pk_title%>" <%=selected%>><%=subRs2("k_title")%></option>

<%

subRs2.MoveNext

loop

%>

<% End if%>

</select>

</div>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 반복구간 시작 ----------------------------------------------------------------------------------------------------------------------->

<% IF objRs.EOF or objRs.EOF then %>

<table width="100%">

<tr>

<td height="50" align="center"> <b>입력된 데이터가 없습니다.</td>

<tr>

</table>

<% Else %>

<% objRs.Move (intNowPage - 1) * intPageSize %>

<% Do until objRs.EOF %>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="33%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="200" height="100" bgcolor="#FFFFFF">

<% if objRs("img_file") <> "" Then %>

<% s_extension	= Mid(objRs("img_file"), InStrRev(objRs("img_file"), ".")) %>

<% End If %>

<% if objRs("img_file") <> "" Then %>

<img src="/data/img_file/<%=objRs("num")%>_<%=objRs("code")%>_<%=objRs("uid")%><%=s_extension%>" width="178" height="114">

<% Else %>

<img src="/images/blank.gif" width="178" height="114">

<% End If %>

</td>

</tr>

</table></td>

</tr>

</table>

</td>

<td width="67%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="4%"><img src="/images/blank.gif" width="4" height="8"></td>

<td width="88%"><img src="/images/blank.gif" width="420" height="8"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7">

<div align="right">

<table height="25" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="400" height="1"></td>

</tr>

<tr>

<td height="24"> <div align="left"><strong><%=objRs("k_title")%><% If objRs("k_title") <> "" Then %>(<%=objRs("c_title")%>)<% End If %></strong></div></td>

</tr>

</table>

</div></td>

<td valign="middle" background="/images/introduction/title/re_t_sub_back.gif">

<%

If objRs("num") = 1 Then Pk_title = "사람/가구/사물" End If

If objRs("num") = 2 Then Pk_title = "사람/자세/가구" End If

If objRs("num") = 3 Then Pk_title = "사람/공간/가구" End If

%>

<%

If left(objRs("code"),2) = "01" Then Ppic = "1" End If

If left(objRs("code"),2) = "02" Then Ppic = "2" End If

If left(objRs("code"),2) = "03" Then Ppic = "3" End If

%>

<div align="right"><a href="./pattern_result.asp?list_uid=<%=objRs("num")%>&uid=<%=objRs("uid")%>&pic_num=<%=Ppic%>&code=<%=objRs("code")%>&sub_title=<%=titleRs("k_title")%>&sub_title2=<%=Psub_title%>&k_title=<%=Pk_title%>" target="_self"><img src="/images/more_s.gif" width="44" height="24" border="0"></a>

</div></td>

</tr>

</table>

</td>

</tr>

<tr>

<td><img src="images/blank.gif" width="16" height="1"></td>

<td bgcolor="#666666"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td height="16">&nbsp;</td>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#CCCCCC">

<tr>

<%

If objRs("contry") = 1 Then Pcontry = "한국" End If

If objRs("contry") = 2 Then Pcontry = "미국" End If

If objRs("contry") = 3 Then Pcontry = "일본" End If

If objRs("contry") = 4 Then Pcontry = "중국" End If

%>

<td height="20" bgcolor="#FFFFFF">국가 : <%=Pcontry%> </td>

</tr>

<tr>

<td bgcolor="#FFFFFF">시대 : <%=objRs("age")%></td>

</tr>

<tr>

<%

Wsize = objRs("psize")

Dsize = objRs("Dsize")

Hsize = objRs("Hsize")

'If size <> "" Then

'full_size = Split(size,":")

'Wsize = full_size(0)

'Hsize = full_size(1)

'Dsize = full_size(2)

'End If

%>

<td bgcolor="#FFFFFF">크기 : <%=Wsize%>*<%=Dsize%>*<%=Hsize%></td>

</tr>

<tr>

<td bgcolor="#FFFFFF">출처 : <%=objRs("infor")%></td>

</tr>

</table></td>

</tr>

</table></td>

</tr>

<tr>

<td bgcolor="#FFEFE1"><img src="/images/blank.gif" width="200" height="4"></td>

<td bgcolor="#FFEFE1"><img src="/images/blank.gif" width="450" height="4"></td>

</tr>

</table>

<%

objRs.MoveNext

loop

%>

<% End if%>

<!-- 반복구간 끝 -->

<!--페이징---------------------------------------------------------------------------------------------------------------------->

<table border="0" cellpadding="0" cellspacing="0" width="600">

<td><img src="/images/blank.gif" width="450" height="20"></td>

<tr>

<td align="center">

<%

intTemp = Int((intNowPage - 1) / intBlockPage) * intBlockPage + 1

If intTemp = 1 Then

Response.Write "<span>[Prev]"'Response.Write "<span>[Prev " & intBlockPage & "]"

%>

<%

Else

Response.Write"<a href=pattern_view.asp?uid=" & Puid & "&code=" & Pcode & "&sub_code=" & Psub_code & "&sub_title=" & Psub_title & "&pic_num=" & Ppic_num & "&k_title=" & Pk_title & "&page=" & intTemp & "&search=" & search & "><span>[ prev ]</a>"

End If

%>

<img src="/admin/image/btn/scrolll.gif" width="12" height="10">

<%

intLoop = 1

Do Until intLoop > intBlockPage Or intTemp > intTotalPage

If intTemp = CInt(intNowPage) Then

Response.Write "<b><font color=#666666>[" & intTemp &"]</font></b>&nbsp;"

Else

Response.Write"<a href=pattern_view.asp?uid=" & Puid & "&code=" & Pcode & "&sub_code=" & Psub_code & "&sub_title=" & Psub_title & "&pic_num=" & Ppic_num & "&k_title=" & Pk_title & "&page=" & intTemp & "&search=" & search & ">" & intTemp & "</a>&nbsp;"

End If

intTemp = intTemp + 1

intLoop = intLoop + 1

Loop

%>

<img src="/admin/image/btn/scrollr.gif" width="12" height="10">

<%

If intTemp > intTotalPage Then

Response.Write "<span>[Next]"'Response.Write "<span>[Next " &intBlockPage&" ]

Else

%>

<%

Response.Write"<a href=pattern_view.asp?uid=" & Puid & "&code=" & Pcode & "&sub_code=" & Psub_code & "&sub_title=" & Psub_title & "&pic_num=" & Ppic_num & "&k_title=" & Pk_title & "&page=" & intTemp & "&search=" & search & "><span>[ Next ]</a>"

End If

%>

</td>

</tr>

</table>

<!--페이징---------------------------------------------------------------------------------------------------------------------->

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>search.asp

<!-- #include file="../public/sqlConnect.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

<SCRIPT LANGUAGE="JavaScript">

<!--

function check() {

var obj;

obj = document.varform;

sw = 1;

if (obj.keyword.value == "") {

alert("검색어를 입력하세요");

obj.keyword.focus();

sw = 0;

}

if (sw) {

obj.submit();

}

}

//-->

</SCRIPT>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('/images/top_1_on.gif','/images/top_2_on.gif','/images/top_3_on.gif','/images/top_4_on.gif','/images/su_1_on.gif','/images/su_2_on.gif','/images/su_3_on.gif','/images/su_4_on.gif','/images/su_5_on.gif','/images/su_6_on.gif')">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td background="/images/t_l.gif">

<!-- #include file="../top_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/m1.gif">

<!-- #include file="../main_menu.asp" -->

</td>

</tr>

<tr>

<td background="/images/f_b.gif">

<table width="94%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="62%"><img src="/images/ti-ani.gif" width="839" height="148"></td>

<td width="38%">&nbsp;</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top">

<!-- #include file="./search_main.asp" -->

</td>

</tr>

<tr>

<td valign="top" background="/images/b_b.gif">

<!-- #include file="../foot.asp" -->

</td>

</tr>

</table>

</body>

</html>

Root>Public>search_main.asp

<%

Pk_title       = Request.QueryString("k_title")

keyword        = Request("keyword")

if keyword <> "" Then

If pageNumber = "" Then

currentPage = 1

Else

currentPage = CLng(pageNumber)

End If

sqlQuery = "  SELECT boardID, writingID, replyPlace, replyDepth, " _

& "         title, writer, email, CONVERT(char(10), writingDay, 111) writingDay, hitNumber " _

& "    FROM board " _

& "   WHERE title like '%" & keyword & "%'" _

& "ORDER BY writingID DESC, replyDepth ASC"

Set Rsboard = Server.CreateObject("ADODB.Recordset")

Rsboard.pageSize = 15

Rsboard.Open sqlQuery, Conn, 1

totalWriting   = Rsboard.RecordCount

totalPage      = Rsboard.PageCount

virtualWriting = totalWriting - (currentPage - 1) * Rsboard.pageSize

startPage = currentPage - 5

If startPage < 1 Then

startPage = 1

End If

If ((startPage + 9) <= totalPage) Then

endPage = startpage + 9

Else

endPage = totalPage

End If

End If

%>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="171" valign="top">

<table border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="images/blank.gif" width="4" height="4"></td></tr>

<tr><td height="5" colspan="2"><img src="/images/keyword/member_keyword.gif" width="171" height="24"></td></tr>

</table>

</td>

<td width="667" valign="top">

<!-- 메인컨텐츠 시작-->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr><td><img src="/images/blank.gif" width="4" height="4"></td></tr>

<tr>

<td background="/images/re_t_back.gif">

<font color="#FFFFFF"><img src="/images/blank.gif" width="1" height="20"><strong>..</strong></font><strong>□ Root &gt; 일반 검색</strong>

</td>

</tr>

<tr>

<td valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="5" height="26" bgcolor="#FFFFFF"><img src="/images/blank.gif" width="5" height="5"></td>

<td width="98%" valign="top">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td bgcolor="#FFFFFF"><img src="/images/keyword/key-w2.gif"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" height="23"><img src="/images/blank.gif" width="20" height="20"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20">

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="25" valign="bottom" bgcolor="#f3f2f7">

<div align="right">

<form name="varform" method="post" action="search.asp">

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="550" height="1"></td>

</tr>

<tr>

<td>

<input name="keyword" type="text" value="<%=keyword%>" size="20"><strong> <a href="javascript:check()">검색</a></strong>( 키워드를 입력하세요)

</tr>

</table>

</form>

</div></td>

<td valign="middle" background="/images/introduction/title/re_t_sub_back.gif">

<div align="right"> </div></td>

</tr>

</table>

</td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="1"><img src="/images/blank.gif" width="20" height="1"></td>

</tr>

<% If keyword <> "" Then %>

<tr>

<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<img src="/images/blank.gif" width="50" height="2">

<br>

<img src="/images/keyword/key-w2-r.gif" width="461" height="50">

총 <strong> <%=totalWriting%>  </strong>개를 검색했습니다.

</td>

</tr>

</table>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="20">

<% If Pkeyword <> "" Then %>

<!-- 위 컨텐츠 시작 -->

<table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="33%" valign="top"> <table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="4" height="8"></td>

</tr>

<tr>

<td><table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">

<tr>

<td width="200" height="100" bgcolor="#FFFFFF"><img src="/images/introduction/4_files/image004.jpg" width="240" height="209"></td>

</tr>

</table></td>

</tr>

</table></td>

<td width="67%" valign="top"> <table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="4%"><img src="/images/blank.gif" width="4" height="8"></td>

<td width="88%"><img src="/images/blank.gif" width="420" height="8"></td>

</tr>

<tr>

<td>&nbsp;</td>

<td><table width="100%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7">

<div align="right">

<table height="25" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="400" height="1"></td>

</tr>

<tr>

<td height="24"> <div align="left"><strong>한국의

자연환경 특성 1</strong></div></td>

</tr>

</table>

</div></td>

<td valign="middle" background="/images/introduction/title/re_t_sub_back.gif">

<div align="right"><a href="pattern2-1.asp" target="_self"><img src="/images/more_s.gif" width="44" height="24" border="0"></a>

</div></td>

</tr>

</table></td>

</tr>

<tr>

<td><img src="images/blank.gif" width="16" height="1"></td>

<td bgcolor="#666666"><img src="/images/blank.gif" width="420" height="1"></td>

</tr>

<tr>

<td height="16">&nbsp;</td>

<td valign="top"> <table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#CCCCCC">

<tr>

<td height="20" bgcolor="#FFFFFF">  </td>

</tr>

<tr>

<td bgcolor="#EEEEEE">&nbsp;</td>

</tr>

<tr>

<td bgcolor="#FFFFFF"><strong>조선초기</strong><br>

</tr>

<tr>

<td bgcolor="#FFEFE1">&nbsp;</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">시대 :

조선초기</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">크기 :

610*770*370</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">출처 :한국역사미술관</td>

</tr>

<tr>

<td bgcolor="#FFFFFF">&nbsp; </td>

</tr>

</table></td>

</tr>

</table></td>

</tr>

</table>

<!-- 위 컨텐츠 끝 -->

<% End If %>

</td>

</tr>

<tr>

<td bgcolor="#FFEFE1"><img src="/images/blank.gif" width="200" height="4"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF" height="30"><img src="/images/blank.gif" width="20" height="30"></td>

</tr>

<tr>

<td bgcolor="#FFFFFF">

<!-- 반복구간 시작 -->

<table cellspacing=1 cellpadding=0 width="100%" border=0>

<tr align=right>

<td>

<TABLE width="100%" border="0" cellpadding="1" cellspacing="1">

<TR>

<td height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" align="right">

<%

If currentPage > 1 Then

Response.Write "[<A href=""index.asp?keyword=" & keyword & "&pPageNumber=" & currentPage - 1 & """>이전목록</A>] "

Else

Response.Write "[이전목록] "

End If

If currentPage < Rsboard.PageCount Then

Response.Write "[<A href=""index.asp?keyword=" & keyword & "&pPageNumber=" & currentPage + 1 & """>다음목록</A>]"

Else

Response.Write "[다음목록] "

End If

%>

</TD>

</TR>

</TABLE>

<table cellspacing=2 cellpadding=0 width="100%" border=0>

<tr align=middle bgcolor=#000000>

<td colspan=5><img height=1 src="/design/images/blank.gif" width=1></td>

</tr>

<tr align=middle bgcolor=#f3f2f7>

<td width=40 align="center">번호</td>

<td width=* align="center">제목</td>

<td width=70 align="center">이름</td>

<td width=80 align="center">날짜</td>

<td width=40 align="center">조회</td>

</tr>

<tr align=middle bgcolor=#000000>

<td colspan=5><img height=1 src="/design/images/blank.gif" width=1></td>

</tr>

<%

If Not Rsboard.EOF Then

Rsboard.AbsolutePage = currentPage

For i = 1 To Rsboard.pageSize%>

<TR align="center">

<TD width="40" class="list"><%=virtualWriting%></TD>

<TD width="*" align="left" class="list">

<%

If Rsboard("replyDepth") > 0 Then

For j = 1 To Rsboard("replyDepth")

Response.Write "&nbsp;&nbsp;&nbsp;"

Next

Response.Write "[Re] : "

End If

Response.Write "<A href=""/help/viewForm.asp?title_name=" & title_name & "&pBoardID=" & Rsboard("boardID") & "&pWritingID=" & Rsboard("writingID") & "&pReplyDepth=" & Rsboard("ReplyDepth") & "&pPageNumber=" & currentpage & """>" & Rsboard("title") & "</A>"

%>

</TD>

<TD width="70" class="list">

<%Response.Write "<A href=""mailto:" & Rsboard("email") & """>" & Rsboard("writer") & "</A>"%>

</TD>

<TD width="80" class="list"><%=Rsboard("writingDay")%></TD>

<TD width="40" class="list"><%=Rsboard("hitNumber")%></TD>

</TR>

<%

Rsboard.MoveNext

virtualWriting = virtualWriting - 1

If Rsboard.EOF Then

Exit For

End If

Next

Else

End If%>

<tr align=middle bgcolor=#000000>

<td colspan=5><img height=1 src="/design/images/blank.gif" width=1></td>

</tr>

</table>

</td>

</tr>

<tr>

<td height="25" valign="bottom" background="/images/introduction/title/re_t_sub_back.gif" bgcolor="#f3f2f7" align="right">

<%

If currentPage > 1 Then

Response.Write "[<A href=""index.asp?keyword=" & keyword & "&pPageNumber=" & currentPage - 1 & """>이전목록</A>] "

Else

Response.Write "[이전목록] "

End If

If currentPage < Rsboard.PageCount Then

Response.Write "[<A href=""search.asp?keyword=" & keyword & "&pPageNumber=" & currentPage + 1 & """>다음목록</A>]"

Else

Response.Write "[다음목록] "

End If

%>

</TD>

</tr>

<tr><td height="40"></td></tr>

</table>

<!-- 반복구간 끝 -->

<% End If %>

</td>

</tr>

</table>

</td>

</tr>

</table>

</td>

</tr>

</table>

<!-- 메인컨텐츠 끝-->

<td>&nbsp;</td>

<td width="10" valign="top"><table width="75%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td><img src="/images/blank.gif" width="5" height="5"></td>

<td>

<!-- #include file="../banner.asp" -->

</td>

<td><img src="/images/blank.gif" width="5" height="5"></td>

</tr>

</table></td>

</tr>

</table>

Root>Public>zoom_page.asp

<!-- #include file="../public/sqlConnect.asp" -->

<%

image = Request.QueryString("file")

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::: OFDB :::</title>

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">

<link rel="stylesheet" href="/css/style_intro.css" type="text/css">

<script src="/public/javascript.js"></script>

<script src="/public/javascript2.js"></script>

</head>

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="border: 0px; overflow: hidden; margin: 0pt;">

<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%">

<tr>

<td align="center">

<a href="javascript:top.close()"><img src="/data/img_file/<%=image%>" border="0">

</td>

</tr>

</table>

</body>

</html>

4. 개발구조

전통가구의 현대적 활용방안에 관한 연구

부록

가구데이터              1.Put thing in

2.Put thing in & on

3.Put thing on

4.Seating

5.Reclining

6.Lying

7.Partition Device

8.Lighting and Heating

1.Put things in

전통가구의 현대적 활용방안에 관한 연구

탄스

교오쇼오단스(行商箪笥)

교오쇼오단스(商人箪笥)

교오쇼오단스(商人箪笥)

교오쇼오단스(商人箪笥)

교오쇼오단스(商人箪笥)

교오쇼오단스(商人箪笥)

미즈야탄스(水屋箪笥)

쇼단스(書箪笥)

쇼단스(書箪笥)

쇼단스(書箪笥)

쇼단스(書箪笥)

단스(書箪笥)

쇼오힌단스(商品箪笥)

오오히라키단스(大開き箪笥

이쇼오단스(衣裳箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣装箪笥)

이쇼오단스(衣裳箪笥)

이쇼오단스(衣装箪笥)

챠단스(茶箪笥)

챠단스(茶箪笥)

쵸오바코(帳箱)

쵸오바코(帳箱)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오바단스(帳場箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오단스(帳箪笥)

쵸오멘단스(帳面箪笥)

카케스즈리(懸硯)

스즈리바코(硯箱)

하카타나단스(刀箪笥)

카타나단스(刀箪笥)

카타나단스(刀箪笥)

카타나단스(刀箪笥)

카타나단스(刀箪笥)

코단스(小箪笥)

나가모치

카라비쯔(唐櫃)

쿠루마나가모치(車長持)

쿠루마나가모치(車長持)

하사미바코(挟箱)

료오카케바코(両掛箱)

함

함

문서함

서류함

서류함

팔각함

갓집

자개대모함(나전함)

화각함

오색실함

어피함

함

함

함농

나전상자

죽장상자

나전상자

나전함

나전함

궤

돈궤(윗닫이)

반닫이

원앙반닫이

개구멍반닫이

반닫이장

강화 반닫이

이층 반닫이

책탁 반닫이

평안도 숭숭이 반닫이

돈궤

돈궤

강화 반닫이

이층 반닫이

반닫이장(책장)

반닫이

반닫이

반닫이 (경기도)

반닫이

반닫이

반닫이

반닫이

반닫이

반닫이

반닫이

반닫이장

반닫이

장

약장

각게수리 약장

약장

약장

약장

약장

소품

각게수리

각게수리

각게수리

반짇고리

반짇고리

반짇고리

빗접

빗접

빗접

자개반짇고리

주칠 빗접

갑게수리

책갑

빗접

비녀집

탕건, 탕건통

찬합

찬합

나전 반짇그릇

화각 반짇그릇

은입사 담배함 (연초갑)

지통

화각필통

화약통

필통

연갑

책갑

빗접

빗접

주칠빗접

빗접(나전)

소품

쿠시다이(櫛台)

제니바코(銭箱)

쵸오바코(帳箱)

제니바코(銭箱)

제니바코(銭箱)

테바코(手箱)

분코우(文匣)

히로부타(広蓋)

미다레바코(乱れ箱)

센료바코(千両箱)

쿠스리바코(薬箱)

히로부타(広蓋)

후바코(文箱)

농

오동 이층농

오동 이층농

이층농

이층농

장

금침장

주흑칠 삼층장

머릿장

삼층장

삼층장

원앙 삼층장

의걸이장

의걸이장

이불장

이층장

이층장

책장

책장

이층장

원앙이층장

삼층장

화각 사층장

의걸이장

이층책장

삼층책장

책장

이층찬장

삼층찬장

이단찬장

의걸이장

의걸이장

2층 의걸이장

죽장(竹裝)책장

지장(紙裝)삼층책장

책장

책장

책장

책장

4층책탁자장

3층책장

머릿장

머릿장

머릿장

머릿장

머릿장

책장

이층장

이층장

이층장

이층장

이층장

이층장

이층장

이층장

이층장

이층장

삼층장

삼층장

흑칠 삼층장

삼층장

원앙 삼층장

화초 삼층장

나전 삼층장

화각 사층장

사층장

의걸이장

뀌

위안찌아뀌(圓角櫃)

쓰으찌엔뀌(四件櫃)

위안찌아뀌(圓角櫃)

팡찌아귀(方角櫃)

팡찌아귀(方角櫃)

위안찌아뀌(圓角櫃)

쓰으찌엔뀌(四件櫃)

위안찌아뀌(圓角櫃)

위안찌아뀌(圓角櫃)

위안찌아뀌(圓角櫃)

위안찌아뀌(圓角櫃)

쓰으찌엔뀌(四件櫃)

쓰으찌엔뀌(四件櫃)

샹

야오썅

뒤주

뒤주

뒤주

뒤주

뒤주

2층뒤주

소품

꿘피이썅(官皮箱)

소품

소품 筆筒

소품 梨書托

소품 轎箱

소품 文房具

소품 증(鏡臺)

소품 茶盤

소품 彫刻木根

소품 梨書托

증(鏡臺)

꿘피이썅(官皮箱)

소품 文具盒

소품 小寶座式佛像座

삥썅(氷箱)

소품 琺琅面脚短

소품 海水座托

소품 器物座

소품 山石座

소품 嵌象牙如意

소품 嵌螺 犮纹如意

소품 嵌百寶筆筒

소품 嵌百寶筆筒

嵌百寶筆筒

소품 嵌百寶筆筒

소품 彫花鸟筆筒

소품 彫梅竹三友筆筒

소품 彫峉寒三友筆筒

소품 古琴

소품 三螭杯

소품 彫犮底座

소품 叶箱

소품 馬鞍

소품

합(盒)

합(盒)

합(盒)

합(盒)

이썅(衣箱)

증(鏡臺)

소품 白玉屛風

합(盒)

합(盒)

이썅(衣箱)

합(盒)

소품

소품

꿘피이썅(官皮箱)

2.Put things in and on

전통가구의 현대적 활용방안에 관한 연구

문갑

단문갑

쌍문갑

문갑

단문갑

쌍문갑

쌍문갑

문갑

문갑

문갑

문갑

두껍닫이 쌍문갑

단문갑

사방탁자

사방탁자 A-1

사방탁자 A-2

이층책탁자

이층책탁자

이층책탁자

삼층책탁자

사층책탁자장

사층사방탁자

삼층탁자

오층탁자

거어거어뀌(格架櫃)뀌(格架櫃)거어뀌(格架櫃)

삼층탁자

전통가구의 현대적 활용방안에 관한 연구

탁자장

탁자장

뒤주

카자리다나(飾り棚)

카자리다나(飾り棚)

뒤주

뒤주

뒤주

뒤주

찬장겸용 뒤주

거어뀌(格架櫃)

또어빠오그어

또어빠오그어(多寶格)

위안찌아뀌(圓角櫃)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

교오쇼오단스(行商箪笥)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

량거뀌(亮格櫃)

량거뀌(亮格櫃)

또어빠오그어(多寶格)

또어빠오그어(多寶格)

찬탁

사층찬장

삼층찬탁

삼층찬장

찬탁

찬탁

삼층찬탁

찬탁

오층찬장

량거뀌(亮格櫃)

타나

카자리다나(飾り棚)

카자리다나(飾り棚)

카자리다나(飾り棚)

연상

연상

주칠투각연상

연상

지장연상

연상

연상

연상

연상

연상

연상

연상

연상

나전연상

장

머릿장

머릿장

찬장

2층찬장

서안

서안

3.Put things on

전통가구의 현대적 활용방안에 관한 연구

서안

서안

서안

서안

서안

서안

서안

서안

서안

서안

서안

휴대용 서안

안(案)

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

차우도우안((翅頭案))

핑도우안((平頭案))

전통가구의 현대적 활용방안에 관한 연구

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

핑도우안((平頭案))

슈우안(書案)

차우도우안(翅頭案)

핑도우안(平頭案)

핑도우안(平頭案)

차우도우안(翅頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

차우도우안(翅頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

차우도우안(翅頭案)

찌아지안(架几案)

꿍안(供案)

찌아지안(架几案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

차우도우안(翅頭案)

찌아지안(架几案)

차우도우안(翅頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

핑도우안(平頭案)

차우도우안(翅頭案)

쭈어

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

팡쭈어((方卓))

티아오쭈어((條卓))

티아오쭈어((條卓))

티아오쭈어((條卓))

꿍쭈어((供卓))

티아오쭈어(條卓)

팡쭈어(方卓)

티아오쭈어(條卓)

팡쭈어(方卓)

팡쭈어(方卓)

핑도우안(平頭案)

팡쭈어(方卓)

쑤우쭈어(書卓)

꿍쭈어(供卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

꿍쭈어(供卓)

유에야쭈어(月牙卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

쑤우쭈어(書卓)

쑤우쭈어(書卓)

쑤우쭈어(書卓)

치이치아쭈어(七巧卓)

지장연상

유에야쭈어(月牙卓)

팡쭈어(方卓)

팡쭈어(方卓)

티아오쭈어(條卓)

팡쭈어(方卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

쑤우쭈어(書卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

지장연상

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

팡쭈어(方卓)

청중기~청말기

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

티아오쭈어(條卓)

쭈어 琴卓

향안

향안

소반

나주반

해주반

통영반

호족반

원반

일주반

목반

목반소반

원반

일주반

통영반

구족반

호족반

풍혈반

호족반

호족반

해주반

잔상

두리반

서견대

나주반

호족반

자개 포도문 호족반

호족반

호족반

호족반

원반 (수랏상)

소반 (자개호족반)

주족반(개다리소반)

소반(자개호족반)

풍혈반

풍혈반

풍혈반

공고상(번상)

소반 (단각반)

회전반

두리반

동영반

나주반

소반 (해주반)

해주반

해부반

해주반

나주반

나주반

나주반

소반 (반월반)

소반

소반

소반

지이(几)

차지이((茶几))

차지이((茶几))

차지이((茶几))

차지이((茶几))

차지이((茶几))

차지이((茶几))

차지이((茶几))

차지이((茶几))

썅지이(香几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

화궤(花几)

화궤(花几)

화궤(花几)

썅지이(香几)

썅지이(香几)

썅지이(香几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

차지이(茶几)

화궤(化几)

화궤(化几)

차지이(茶几)

차지이(茶几)

화궤(化几)

화궤(化几)

화궤(化几)

화궤(化几)

화궤(花几)

경상

경상

경상

경상

경상

경상

경상

경상

경상

죽장경상

경상

경상

경상

사방탁자

사방탁자

사방탁자

캉

캉쭈어(炕卓)

캉쭈어(炕卓)

캉쭈어(炕卓)

캉안(炕案)

캉쭈어(炕卓)

캉쭈어(炕卓)

캉찌이(炕几)

캉쭈어(炕卓)

캉쭈어(炕卓)

캉찌이(炕几)

캉쭈어(炕卓)

캉찌이(炕几)

캉쭈어(炕卓)

캉찌이(炕几)

캉쭈어(炕卓)

캉쭈어(炕卓)

캉안(炕案)

즈쿠에

분즈쿠에､후즈쿠에 (文机)

다이

켄다이(見台)

젠

쵸오아시 젠(蝶脚繕)

네코아시 젠(猫脚膳)

봉

카케반

쯔이가사네(衝重ね)

이쨔

이쨔(衣架)

이쨔(衣架)

찬탁

찬탁

진설탁자

3층찬탁

진설탁자

고비

고비

고비

고비

죽(竹)고비

죽(竹)고비

고비

고비

고비

탁자

탁자

탁자

4.Seating

전통가구의 현대적 활용방안에 관한 연구

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

전통가구의 현대적 활용방안에 관한 연구

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)靠背

이(椅)

이(椅) 高四出頭官帽椅

이(椅) 圈倚成對

이(椅) 高南官帽椅成對

이(椅) 太師椅

이(椅) 羅圈椅

이(椅) 太師椅

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

이(椅)

의자

교올

교의

교의

뜽쭈어

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

차오뜽(坐墩)

우뚱(兀登)

우뚱(兀登)

찌아오우 (交兀)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登) 彷竹材長方凳成對

우뚱(兀登)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

좌돈(坐墩)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

우뚱(兀登)

빠오쭈어

빠오쭈어(寶座)

빠오쭈어(寶座)

빠오쭈어(寶座)

빠오쭈어(寶座)

빠오쭈어(寶座)

빠오쭈어(寶座)

빠오쭈어(寶座))

빠오쭈어(寶座)

5.Reclining

전통가구의 현대적 활용방안에 관한 연구

평상

평상

평상

보료

보료

팔걸이

팔걸이

타

타(榻) 梨榻

타(榻) 梨榻

타(榻) 梨榻

타(榻) 梨榻

로오한촹

로오한촹(羅漢狀)

로오한촹(羅漢狀)

전통가구의 현대적 활용방안에 관한 연구

로오한촹(羅漢狀)

로오한촹(羅漢狀)

로오한촹(羅漢狀)

로오한촹(羅漢狀)

로오한촹(羅漢狀)