目前支持三个主要的类 -- CGI、Email 和 HTML。我正在考虑添加类来处理 MIME 格式的输入和输出 -- 分别是 MIMEin 和 MIMEout。
还有一些支持和测试类。CGI_Test、Email_Test 和 HTML_Test 旨在用于测试您的安装。它们也可以用作您自己的 Java 程序的起点,这些程序使用此类库。Text 类是 Email
和 HTML
类的超类。
public class CGI
CGI 类保存“CGI 信息”——Web 服务器设置的环境变量以及当选择其提交操作时从表单发送的名称/值。所有信息都存储在 Properties
类对象中。
此类在“Orbits.net”包中。
CGI() // Constructor. getNames() // Get the list of names. getValue() // Get form value by specifying name.
CGI_Test
.
构造一个包含可用 CGI 数据的对象。
public CGI()
当构造 CGI 对象时,所有可用的 CGI 信息都会被吸收到新对象的本地存储中。
列出已定义具有对应值的名称。
public Enumeration getKeys ()
提供已定义对应值的完整名称列表。
所有已定义名称的 Enumeration
。
检索与指定的名称关联的值。
public String getValue ( String name )
此方法提供从 HTML 表单发送的 names
和 values
之间的对应关系。
用于选择值的键。
一个 String
,包含该值。
此类既提供了如何使用 CGI
类的示例,又提供了一个测试程序,可用于确认 Java CGI 包是否正常运行。
main() // Program main().
CGI
.
提供 main()
方法。
public static void main( String argv[] )
这是一个 CGI 程序的入口点,该程序除了返回可用名称/值对及其当前值的列表外,什么也不做。
由 java.cgi
脚本传递给程序的参数。目前未使用。
public class Email extends Text
消息使用 Text
类的 add*()
方法和此类添加的特定于电子邮件的方法构建。完成后,消息将发送到其目的地。
此类在“Orbits.net”包中。
Email() // Constructor. send() // Send the e-mail message. sendTo() // Add a destination for message. subject() // Set the Subject: for message.
Email_Test, Text
.
构造一个将包含电子邮件消息的对象。
public Email()
设置一个空消息,以便由 Email 方法完成。
Text
.
发送电子邮件消息。
public void send ()
这将格式化并发送消息。如果未设置目标地址,则不执行任何操作。
为此消息添加目标地址。
public String sendTo ( String address )
将 address
添加到此方法的目的地列表。电子邮件消息可以拥有的目的地数量没有设定限制。我确信,如果您构建的列表足够大,您可以超出 邮件传输代理 可以接受的参数列表的大小,或者耗尽您的内存。
要将此消息发送到的目的地。
为此消息设置主题。
public void subject ( String subject )
此方法设置电子邮件“主题:”行的文本。如果多次调用,则使用最后设置的主题。
此消息的“主题:”行的文本。
此类既提供了如何使用 Email
类的示例,又提供了一个测试程序,可用于确认 Java CGI 包是否正常运行。
main() // Program main().
Email
.
提供 main()
方法。
public static void main( String argv[] )
这是一个 CGI 程序的入口点,该程序返回可用名称/值对及其当前值的列表。它还将此列表发送到 Email
变量中指定的地址。
由 java.cgi
脚本传递给程序的参数。目前未使用。
public class HTML extends Text
消息使用 Text
类的 add*()
方法和此类添加的特定于 HTML 的方法构建。完成后,消息将发送到其目的地。
目前,没有错误检查来确认列表构建方法是否以正确的顺序使用,因此程序员必须注意不要违反 HTML 语法。
此类在“Orbits.net”包中。
HTML() // Constructor. author() // Set the name of the document author. definitionList() // Start a definition list. definitionListTerm() // Add a term to a definition list. endList() // End a list. listItem() // Add an entry to a list. send() // Send the HTML message. title() // Set the text for the document title.
HTML_Test, Text
.
构造一个将包含 HTML 消息的对象。
public HTML()
设置一个空消息,以便由 HTML 方法完成。
Text
.
设置文档作者的姓名。
public void author ( String author )
将文档作者的姓名设置为 author
。
用作此消息作者的文本。
title()
.
启动定义列表。
public void definitionList ()
启动定义列表。定义列表是一种专门的列表,列表中的每个条目都是一个术语,后跟该术语的定义文本。定义列表的开头应后跟(至少)一个术语/文本对的创建以及对 endList()
方法的调用。请注意,目前,列表不能嵌套。
definitionListTerm()
、endList()
、listItem()
。
向定义列表添加术语。
public void definitionListTerm ()
向定义列表添加术语。当前列表条目的术语部分的文本应在此方法调用后且在调用相应的 listItem
方法之前附加到消息。
definitionList()
、listItem()
。
结束列表。
public void endList ()
结束列表。此方法关闭列表。请注意,目前,列表不能嵌套。
definitionList()
.
向列表添加条目。
public void listItem ()
public void listItem ( String item )
public boolean listItem ( String term, String item )
向列表添加条目。如果使用第一种形式,则当前列表项的文本应在此方法调用后且在调用任何其他列表方法之前附加到消息。在第二种和第三种形式中,item
文本被指定为方法的参数,而不是(或除了)附加到消息。第三种形式特定于定义列表,并提供列表条目的术语和定义。
此列表条目的文本。
此定义列表条目的术语部分的文本。
definitionList()
、definitionListTerm()
、endList()
。
发送 HTML 消息。
public void send ()
发送 HTML 消息。
设置文档标题的文本。
public void title ( String title )
设置文档标题的文本。
此消息标题的文本。
author()
.
此类既提供了如何使用 HTML
类的示例,又提供了一个测试程序,可用于确认 Java CGI 包是否正常运行。
main() // Program main().
HTML
.
提供 main()
方法。
public static void main( String argv[] )
这是一个 CGI 程序的入口点,该程序返回 HTML 文档中可用名称/值对的列表,每个名称/值对都显示在定义列表元素中。
由 java.cgi
脚本传递给程序的参数。目前未使用。
public abstract class Text
此类是 Email
和 HTML
类的超类。消息使用此类中的方法构建,并使用子类中的方法完成和格式化。
此类在“Orbits.text”包中。
Text() // Constructor. add() // Add text to this object. addLineBreak() // Add a line break. addParagraph() // Add a paragraph break.
Email
、HTML
。
向此项目添加文本。
public void add ( char addition )
public void add ( String addition )
public void add ( StringBuffer addition )
将 addition
添加到此文本项目的内容中。
要添加到文本项目的文本。
addLineBreak()
、addParagraph()
。
在此文本中的点强制换行。
public void addLineBreak ()
在当前点向文本添加换行符。
add()
、addParagraph()
。
开始一个新段落。
public void add ()
在此文本流中的点开始一个新段落。
add()
、addLineBreak()
。