JAVA语句为在模板中引用JAVA语法提供了可能。JAVA语句由 <% 开始, %> 结束标注。
不能在JAVA引用中进行类、接口、函数的定义,也不能使用import、package语句。
在JAVA语句中可以直接嵌套正文标签和全局标签。
<%
--在此写入JAVA语句
%>
文章模板可以使用nps.compiler.ArticleClassBase中的属性和方法。页面模板可以使用nps.compiler.PageClassBase中的属性和方法。
详细参见以上类的java doc文件。
常用变量有:
| 变量名 | 类型 | 含义 |
|---|---|---|
| ctxt | NpsContext | 记录当前上下文情景,包括运行用户、数据库连接等资源。 |
| site | Site | 当前页面或文章所在站点 |
| top | Topic | 当前页面或文章所在栏目 |
| art | Article | 当前文章对象,普通文章都是NormalArticle对象,自定义数据源文章都从CustomArticle派生。仅在文章模板中有效 |
| out | JavaWriter | 使用print系列方法输出HTML流。 out.print(Object)表示在当前位置输出 out.printil(Object)表示对齐输出 out.println(Object)表示输出结束后换行。 |
| print() | 函数 | 应该尽量避免使用out.print()系列方法进行输出,而直接使用print()函数。 print(Object)表示在当前位置输出 printil(Object)表示对齐输出 println(Object)表示输出结束后换行。 |
以下代码演示了如何在代码中仅输出偶数行。
<rs id="rs1" sql="select name,price from product">
<%
if((Integer)<$rs1.rowno$>%2==0)
{
%>
<$rs1.name$>:<$rs1.price$>
<%
}
%>
</rs>