권장 : ASP : 검색 엔진에서 액세스가 오는지 여부를 결정합니다. 액세스가 검색 엔진 기능에서 나오는지 여부를 결정하려면 관심이 있으시면 시도해 볼 수 있습니다! 다음은 참조 된 컨텐츠입니다. <%'현재 사용자가 Spider-Man 함수 확인 (user_agent) 허용 여부를 확인하십시오.
10 장 ASP 및 클라이언트 데이터클라이언트 데이터는 ASP 모노 그래프에서 논의됩니까? 서버 측 ASP 프로그래밍에 대한 모순이 있습니까? 서버 측 프로그래밍에서만 일하는 ASP 프로그래머를 아직 만나지 않았기 때문에 그렇지 않습니다. ASP는 서버 측 기술이지만 프로그래머가 ASP 만 사용하는 것은 불가능하다고 생각할 수 있습니다. ASP 프로그래밍에 종사하는 웹 개발자는 여전히 클라이언트 데이터와 상호 작용해야합니다.
따라서 ASP 주변에 응용 프로그램을 구축 할 때 전체 응용 프로그램 상황을 고려해야하며 이는 클라이언트를 고려해야 함을 의미합니다. 잘 운영되고 빠르게 반응하는 응용 프로그램을 얻으려면 클라이언트 데이터를 잘 사용해야합니다.
이 장에서는 클라이언트 측에서 데이터를 사용하는 방법에 대해 설명합니다. 특별한 초점은 연구에 중점을 둘 것입니다.
· 원격 데이터 서비스 (RDS), 클라이언트에 데이터를 전송하고 데이터를 수신하는 방법.
· ADO 레코드를 HTML 컨트롤에 바인딩하는 방법.
· 사용자 정의 구성 요소를 사용하여 데이터를 제공하는 방법.
· 클라이언트 데이터를 업데이트하고 서버로 바꾸는 방법.
· 데이터베이스에서 이미지를 가져 와서 웹 페이지에 표시하는 방법.
· 테이블 기반 웹 페이지를 만드는 방법.
위의 커버리지는 상당히 넓고 동일한 결과를 달성하기위한 여러 가지 방법이 있지만 구현하기가 어렵지는 않습니다.
10.1 연결 해제 된 레코드 세트
가장 먼저 마스터해야 할 것은 연결이 끊긴 데이터의 개념입니다. 지금까지 ADO 연구 과정에서 레코드 세트를 얻는 방법과 이러한 레코드 세트에서 데이터를 수정하는 방법이 학습되었습니다. 검토하려면 레코드 세트를 열고 데이터를 수정 한 다음이 레코드 세트를 닫습니다. 레코드 세트를 작동하는 과정에서 우리는 항상 서버와의 연결을 유지합니다. 이것은 분명하지만 웹이 본질적으로 무국적이라는 것을 잊지 마십시오. 클라이언트 데이터를 사용하려면 항상 서버에 대한 연결을 어떻게 유지합니까? 간단하고 불가능하며 이것이 연결이 끊어진 레코드 세트의 개념을 정의하는 이유입니다.
연결이 끊긴 레코드 세트는 일반 레코드 세트 일 뿐이지 만 서버와 연결되지 않으며 격리 된 객체가됩니다. 일반 레코드 세트처럼 업데이트, 추가 및 삭제할 수 있습니다. 그러나 이러한 변경 사항은 레코드 세트 내에서만 발생하며 레코드 세트가 더 이상 서버에 연결되지 않기 때문에 서버에 대한 피지되지 않습니다. 서버와 연결을 다시 설정할 수 있고 서버는 수정 사항을 업데이트 할 수 있으므로 이는 단점이 아닙니다. 서버 측 데이터가 변경 되더라도 ADO는 사용자가 적시에 이러한 변경 사항을 발견하여 사용자가 어떤 데이터가 올바른지 결정할 수있는 방법이 있습니다. 이것을 갈등 해결이라고합니다.
연결 해제 된 레코드 세트를 사용하면 서버와 클라이언트간에 구성 요소간에 전체 기능을 갖춘 레코드 세트를 제공 할 수 있습니다. 이 장에서는 구성 요소 내에서 연결 해제 된 레코드를 만드는 방법을 살펴 봅니다. 그러나이 책의 13 ~ 18 장이 내용 의이 부분을 다루었 기 때문에 우리는 이것에 대한 자세한 연구를 계획하지 않습니다. 여기서는 구성 요소가 원격 데이터 서비스와 어떻게 상호 작용하는지에 대한 간단한 소개 만 제공합니다.
10.2 원격 데이터 서비스
원격 데이터 서비스 (RDS)는 클라이언트 데이터를 처리 할 수있는 일련의 서비스에 대한 일반적인 용어입니다. RDS 자체는 ADO의 일부이며 클라이언트 데이터를 전송하고 사용해야 할 때만 사용될 것이기 때문에 지금이 문제에 대해 걱정할 필요가 없습니다. 실제로 RDS는 여러 구성 요소로 구성됩니다. 그림 10-1은 이러한 구성 요소와 함께 작동하는 방식을 보여줍니다.
그림 10-1 RDS의 구성 요소 구성
많은 구성 요소가있는 것처럼 보이지만 모든 구성 요소가 모든 경우에 사용되는 것은 아니며 실제로 RDS의 일부가 아닌 일부가 있습니다. 그러나 가능한 모든 구성 요소는 필요할 경우 여기 다이어그램에 배치됩니다. 클라이언트 데이터를 사용하려면 클라이언트에게 데이터를 전송하는 몇 가지 방법이 필요하기 때문에 그림 10-1은 두 부분으로 나뉩니다. 동시에 데이터가 클라이언트에 도달하면 데이터를 관리하는 일부 방법도 필요합니다. 서버 측부터 시작하겠습니다.
10.2.1 RDS 서버 구성 요소
RDS는 클라이언트 데이터를 전송하고 액세스하는 데 사용되지만 일부 서버 기반 구성 요소가 있습니다. 데이터를 클라이언트로 전송할 수있는 방법이 필요하기 때문에 필요합니다. 따라서 데이터에 액세스하고 데이터를 클라이언트로 전송할 수있는 일련의 서버 구성 요소가 있습니다. 우리는 실제 데이터 전송 원수를 호출합니다.
서버 측 구성 요소 다이어그램의 상단은 OLE DB 제공 업체가 액세스하는 데이터 저장입니다. RDS의 일부는 아니지만 이는 해당 OLE DB 공급자가있는 한 모든 데이터가 RD를 통해 클라이언트에 사용할 수 있음을 의미합니다. 서버에서 데이터를 처리하는 방법에 대해서는 두 가지 옵션이 있습니다.
· DataFactory는 데이터 저장에 액세스하기위한 기본 서버 측 구성 요소입니다. 서버 측 RDS 구성 요소의 일부로 컴퓨터에 설치됩니다. 데이터 스토리지에서 데이터를 얻는 것 외에도 서버의 클라이언트와의 데이터를 처리합니다.
· 사용자 정의 구성 요소는 데이터 전송 방법을 제공하는 일반적인 COM 구성 요소입니다. 데이터 공장에서 필요한 기능을 제공 할 수없는 경우 사용자 정의 구성 요소를 사용할 수 있습니다. 이 장에서는 간단한 구성 요소 예제를 소개하며이 책의 뒷부분에서 더 복잡한 예가 있습니다.
웹 서버는이 두 구성 요소를 클라이언트 및 서버 데이터의 인터페이스로 사용합니다.
10.2.2 RDS 고객 구성 요소
클라이언트는 하단의 Dataspace 객체로 시작하여 클라이언트의 일부로 데이터 공장 또는 사용자 정의 객체와 함께 작동합니다. DataSpace 객체는 서버와 통신하는 프록시 객체이며 데이터 전송을위한 채널 (또는 일반적으로 스케줄링이라고도 함)입니다. Dataspace 객체는 클라이언트 스크립팅 언어 또는 HTML 태그에서 생성 된 COM 객체입니다. 이 장의 뒷부분에 대한 예를 볼 수 있습니다.
Dataspace 객체는 클라이언트 데이터 저장을 담당하는 데이터 소스 객체 (DSO)입니다. 데이터 소스 객체에는 고객 데이터 캐시와 함께 데이터를 관리하는 ADO 데이터 레코드 세트가 포함되어 있습니다. 고객 데이터 캐싱은 클라이언트 데이터를 관리하는 고객 커서 서비스입니다. 동시에, 데이터 소스 개체는 Dataspace 객체와 유사한 COM 객체이며 클라이언트 스크립트를 통해 또는 HTML 언어로 <botort> 태그를 사용할 수도 있습니다. 마찬가지로,이 측면의 일부 예는이 장의 뒷부분에서 소개 될 것입니다.
데이터 소스 객체 위에는 데이터 바인딩 관리자가 있으며 작업은 HTML 컨트롤과 데이터 소스 개체 간의 연결을 설정하는 것입니다. 이것은 우리가 바인딩에 대해 알고있는 것입니다. 특정 HTML 컨트롤의 DataSRC 및 DataFld 속성을 설정하여 달성 할 수 있습니다. 이들은 아래에 설명되어 있으며 브라우저에서 데이터를 쉽게 사용하는 방법을 보여줍니다.
10.2.3 RDS를 지원하는 브라우저
RDS는 Microsoft의 기술이라는 것을 알아야하므로 Microsoft의 브라우저에서만 작동 할 수 있습니다. 실제로 RDS는 IE 4.0 이상의 브라우저에서만 완전히 지원됩니다.
RDS에 의존하는 응용 프로그램을 작성할 때 응용 프로그램에 액세스하는 클라이언트의 RDS 버전은 서버 측과 다를 수 있습니다. 예를 들어, RDS 1.5는 IE 4, RDS 2.0은 IE 5, Office 2000 및 Visual Studio 6에 있습니다.이 호환성 문제를 다루는 두 가지 방법이 있습니다.
· 모든 사용자가 최신 버전의 RDS로 업그레이드했는지 확인하십시오. 고객이 Windows 2000을 실행하는 경우 최신 버전의 RDS가 이미 실행 중입니다. 그렇지 않으면 URL www.microsoft.com/data에서 다운로드 할 수 있습니다. RDS 2.5는 현재 Windows 2000으로 출시 된 최신 버전이며 별도로 다운로드 할 수있는 소프트웨어 패키지이기도합니다.
· 데이터 소스에 연결될 때 데이터 공장의 모드를 지정하십시오. 이것은 사용되는 RDS 구성 요소의 버전을 지정할 수 있으며,이 예제는 나중에 소개됩니다.
10.2.4 데이터 소스 개체
데이터 소스 개체는 클라이언트 데이터를 저장하고 관리하는 클라이언트 객체입니다. 이것은 RDS를 사용하는 가장 쉬운 방법이므로 먼저이 객체를보십시오.
다음은 각각 다른 유형의 데이터에 대한 몇 가지 다른 데이터 소스 객체입니다.
· 테이블 또는 분리 된 양식에서 텍스트 파일을 처리하는 데 사용되는 TDC (Tabular Data Control), TDC (Tabular Data Control).
· OLE DB 데이터 스토어에 연결하는 데 사용되는 RDS 데이터 컨트롤은 연결할 데이터 스토어를 지정하고 반환 할 데이터를 지정할 수 있습니다.
· JAVA 데이터베이스 커넥터, JDBC (Java Database Control)를 통해 데이터 스토리지에 연결된 Java 애플릿. 다른 컨트롤이 달성 할 수없는 기능을 제공하지 않기 때문에 JDBC에 대해 논의하고 싶지 않습니다.
· Microsoft의 HTML (MSHTML) 데이터 소스 객체 데이터는 HTML을 사용하여 데이터를 태그하고 데이터 소스로 사용합니다.
· XML 데이터 소스 개체는 구조적 또는 임의의 구조화 된 XML에 사용되는 XML 데이터를 사용합니다.
선택할 데이터 소스 개체는 수행 할 작업 및 데이터의 출처에 따라 다릅니다. 소량의 데이터가 고객에게 제공되어야하고 사용자가 데이터를 수정할 수없는 경우 테이블 데이터 제어 (TDC)가 더 적합 할 수 있습니다. 이 데이터 소스는 데이터베이스가 필요하지 않은 텍스트 파일이므로 편집하기가 비교적 간단합니다. RDS 데이터 컨트롤은 데이터베이스에서 데이터가 가져오고 업데이트가 필요한 상황에 가장 적합합니다. 많은 새로운 데이터 소스의 경우 현재 XML 데이터 컨트롤이 필요하다는 것을 알 수 있습니다. 이는 실제로 사용 된 웹 응용 프로그램 유형과 사용자가 요구하는 기능에 따라 다릅니다.
우리는 이러한 데이터 컨트롤을 차례로 소개 할 예정이며,이 데이터를 클라이언트로 전송하는 방법을 이해하면 사용 방법을 소개합니다.
공유 : ASP 3.0 고급 프로그래밍 (35) 7.5.1 일반 디버깅 기술 2 장에서는 응답 메소드와 요청 컬렉션을 사용하여 컬렉션의 내용을 표시하는 방법을 보았습니다. 코드가 요청에서 값을 사용하려는 경우 가장 먼저해야 할 일은 필요한 값이 존재하는지 확인하는 것입니다. 발생하기 쉬운 문제는 잘못되었거나