# 第三章 Caché 服务器页面简介 - 通过 `cls` 创建 `csp` 页面 # 创建第一个 CSP 页面 本节介绍如何以两种不同的方式创建 `Hello, World CSP` 页面: ## 创建基于类的 CSP 页面 通过创建 `%CSP.Page` 的子类并覆盖其 `OnPage` 方法来创建 `CSP` 页面。通过此方法写入主设备的任何输出都会自动发送到 `Web` 浏览器并显示为网页。 1. 打开`Studio` 2. 选择 File > New Project 在本地数据库 `USER` 命名空间中创建一个新项目。 3. 在向导的第一页上,输入 `Test` 作为包名,并输入 `Hello` 作为类名 4. 在第二页上,选择 `CSP` 作为类类型。 5. 单击完成。可以在 `Studio` 类编辑器中看到新的 `CSP` 类定义: ```java Class Test.Hello Extends %CSP.Page { ClassMethod OnPage() As %Status { &html< > ; To do... &html< > Quit $$$OK } } ``` 7. 在 `OnPage` 方法中,替换注释: ```java ; To do... ``` 使用 `Write` 语句: ```java Write "Hello, World",! ``` 8. 使用 Build > Compile 保存并编译新类。 9. 选择视图 > 网页。 会在浏览器中看到` Hello, World` 。 这个 `CSP` 页面也是一个 `CSP` 应用程序,其工作原理如下: 1. 浏览器向指定命名空间中的本地 `Web` 服务器发送对 `Test.Hello.cls` 的请求。 2. `Web` 服务器将此请求传递给 `CSP` 网关,`CSP` 网关将请求传递给 `CSP` 服务器。在我们的例子中,浏览器、`Web` 服务器和 应用程序服务器都运行在同一台机器上。在实际部署中,这些可能位于不同的机器上。 3. `CSP` 服务器查找名为 `Test.Hello` 的类并调用其 `OnPage` 方法。 4. `OnPage` 方法写入主体设备(使用 `Write` 命令)的任何输出都将发送回浏览器(通过 `CSP` 网关和 `Web` 服务器)。 这些例子展示了 `CSP` 的核心; `CSP` 的其余功能都建立在此行为之上。 以下是添加更多代码的示例。在包含 `Hello, World` 的行之后插入以下行: ```java w "",! ```