第二十九章 使用 CSP 进行基于标签的开发 - 服务器端方法

简介: 第二十九章 使用 CSP 进行基于标签的开发 - 服务器端方法

第二十九章 使用 CSP 进行基于标签的开发 - 服务器端方法

运行时代码 ObjectScript 单行

可以使用以下语法运行单行 ObjectScript。这仅适用于单行。行不能换行。

#[ set x = a + b write x ]#
复制代码

服务器端方法

CSP 文档中,可以定义属于为文档生成的类的方法。这是使用带有 <script> 标记的参数来完成的。

可以指定方法的名称以及它的参数列表和返回类型。可以指定用于实现该方法的语言;此语言不需要匹配 CSP 文档的默认语言。

例如,以下定义了一个名为 MakeList 的方法,该方法创建一个包含计数项的有序列表:

<script language="Cache" method="MakeList"
arguments="count:%Integer" returntype="%String">
   New i
   Write "<ol>",!
   For i = 1:1:count {
      Write "<li> Item",i,!
   }
   Write "</ol>",!
   Quit ""
</script>
复制代码

然后,可以从 CSP 文档中的其他位置调用此方法:

<hr>
#(..MakeList(100))#
复制代码

还可以使用继承(使用<csp:class> 标记)将先前定义的方法继承到页面类或调用另一个类的类方法:

<hr>
#(##class(MyApp.Utilities).MakeList(100))#
复制代码

SQL

可以使用 SQL 使用以下 <script> 标记在 CSP 页面内的对象中定义 Caché %ResultSet

以下示例在名为 query 的对象中创建动态 SQL %ResultSet 的实例,准备指定的 SQL 查询并执行它(准备好对其进行迭代)。

<script language="SQL" name="query">
SELECT Name FROM MyApp.Employee ORDER BY Name
</script>
复制代码

通常,在由 SQL 脚本标记创建的对象中使用 %ResultSet 并结合  <csp:while>标记(请参阅 csp:while 标记)来显示查询结果。

当页面完成执行时,SQL <script>  标记在对象中关闭实例化的 %ResultSet

可以使用 ? 指定 SQL 查询的参数。 SQL 文本中的字符。可以使用 SQL <script>标记的 P1、P2、...Pn 属性为参数提供值(其中 n 是参数的数量)。

这是使用 SQL <script>  标签显示当前用户购买的示例。 (假设当前用户的用户 ID 先前已存储在 %session 对象中):

<script language=SQL name=query P1=#(%session.Data("UserID"))#>
SELECT DateOfPurchase,ItemName,Price
FROM MyApp.Purchases
WHERE UserID = ?
ORDER BY DateOfPurchase
</script>
<hr>
Items purchased by: <b>#(%session.Data("UserID"))#</b>
<br>
<table>
<tr><th>Date</th><th>Item</th><th>Price</th></tr>
<csp:while condition="query.Next()">
<tr>
<td>#(..EscapeHTML(query.GetData(1)))#</td>
<td>#(..EscapeHTML(query.GetData(2)))#</td>
<td>#(..EscapeHTML(query.GetData(3)))#</td>
</tr>
</csp:while>
</table>
复制代码

使用<csp:query> 标记,可以使用定义为 Caché 类的一部分的查询在对象中创建 %ResultSet

<csp:query NAME="query" CLASSNAME="Sample.Person" QUERYNAME="ByName">
复制代码

可以像使用 SQL <script> 标记一样在对象中使用生成的 %ResultSet

控制生成的类

使用 <csp:class>标记,可以对 CSP 编译器生成的类施加一些控制。此控件包括为类选择超类并在类参数中定义许多 %CSP.Page的值。

例如,假设除了从类中的常规 %CSP.Page 继承之外,还希望生成的类也从另一个类继承。 SUPER 属性采用逗号分隔的类列表,并将它们用作生成类的超类。

<csp:class SUPER="%CSP.Page,MyApp.Utilities">
复制代码

下面是一个重新定义类参数值的示例: 要将类参数 PRIVATE 的值重新定义为 1(将页面定义为私有),请使用:

<csp:class PRIVATE=1>


相关文章
|
4月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
508 8
|
4月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
294 11
|
4月前
|
弹性计算
阿里云8核16G云服务器收费标准:最新价格及省钱购买方法整理
阿里云8核16G云服务器价格因实例类型而异。计算型c9i约743元/月,一年6450元(7折);通用算力型u1约673元/月,一年仅需4225元(5.1折)。实际价格享时长折扣,详情见ECS官网。
|
4月前
|
域名解析 弹性计算 负载均衡
给阿里云服务器加速的方法有哪些?
本文介绍如何通过阿里云CDN加速、ECS网络优化及SLB负载均衡三种方法提升服务器响应速度。涵盖具体操作步骤,助力用户优化访问性能。
|
5月前
|
弹性计算 定位技术 数据中心
阿里云服务器选择方法:配置、地域及付费模式全解析
2025阿里云服务器选购指南:就近选择地域以降低延迟,企业用户优选2核4G5M带宽u1实例,仅199元/年;个人用户可选2核2G3M带宽ECS,99元/年起。长期稳定业务选包年包月,短期或波动场景用按量付费,轻松搭建网站首选高性价比配置。
|
6月前
|
弹性计算 小程序 容灾
2025购买阿里云服务器配置选择方法:企业+个人+学生攻略
2025年阿里云服务器购买省钱攻略,涵盖个人、中小企业及高性能配置推荐。个人用户优选38元轻量或99元ECS,企业用户选199元2核4G服务器,游戏用户适合4核16G或8核32G配置,详情请参考最新活动及攻略。
1260 11
|
8月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
395 18
|
6月前
|
缓存 监控 前端开发
详述uniapp项目部署于Nginx服务器的配置优化方法。
综上所述,uniapp项目部署于Nginx的优化方法多种多样,应根据实际情况灵活地采取合适的策略。配置后持续监控和调试,适时调整配置以保持最佳性能,并确保随着应用需求和访问模式的变化,服务器配置得到适当的更新和优化。
281 0
|
7月前
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
349 0
|
10月前
|
缓存 PHP 数据库
WordPress网站服务器性能优化方法,站长必备。
最后,当你将这些方法组合起来并实施时,您将发现你的WordPress网站性能有了显著的提高。别忘了,这不是一次性的任务,要定期执行,保持你的车(网站)始终在轨道上飞驰。
305 21

热门文章

最新文章