📄 java-cgi-howto-5.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>Java CGI HOWTO 中译版: 使用 Java CGI 类别</TITLE> <LINK HREF="Java-CGI-HOWTO-6.html" REL=next> <LINK HREF="Java-CGI-HOWTO-4.html" REL=previous> <LINK HREF="Java-CGI-HOWTO.html#toc5" REL=contents></HEAD><BODY><A HREF="Java-CGI-HOWTO-6.html">Next</A><A HREF="Java-CGI-HOWTO-4.html">Previous</A><A HREF="Java-CGI-HOWTO.html#toc5">Contents</A><HR><H2><A NAME="s5">5. 使用 Java CGI 类别</A></H2><P>目前为止支援三个主要类别 -- <A HREF="#cgi-class">CGI</A>, <A HREF="#email-class">Email</A> 以及 <A HREF="#html-class">HTML</A>.我正在考虑分别加上处理 MIME 格式输入与输出的类别 -- MIMEin & MIMEout.<P>也有一些用来支援和测试的类别.<A HREF="#cgi-test-class">CGI_Test</A>, <A HREF="#email-test-class">Email_Test</A> 以及 <A HREF="#email-test-class">HTML_Test</A> 是拿来测试你的安装用的.你也可拿来当做你自己程式中使用这些类别库的起点.<A HREF="#text-class">Text</A> 类别是 <CODE>Email</CODE> 与 <CODE>HTML</CODE> 的基底类别.<P><H2><A NAME="cgi-class"></A> <A NAME="ss5.1">5.1 CGI</A></H2><P><H3>类别语法</H3><P><CODE>public class CGI</CODE><P><H3>类别描述</H3><P>CGI 类别持有的「CGI 资讯」 -- web 伺服器所设定的环境变数以及按下 <B>submit</B> 时由 form 所传送来的名称/数值.所有的资讯都被存放在类别物件 <CODE>Properties</CODE> 中.<P>这个类别位於 ``Orbits.net'' 包装(package)中.<P><H3>成员摘要</H3><P><HR><PRE> CGI() // 建构子 getNames() // 取得名称的串列 getValue() // 取得指定名称的值</PRE><HR><P><H3>请参阅</H3><P><CODE>CGI_Test</CODE>.<P><H3>CGI()</H3><P><DL><DT><B>目的</B><DD><P>建构一包含可用 CGI 资料的物件<DT><B>语法</B><DD><P><CODE>public CGI()</CODE><DT><B>描述</B><DD><P>当一 CGI 物件被建立时,所有可用的 CGI 资料被存放在新物件的局部储存空间中.</DL><P><H3>getNames()</H3><P><DL><DT><B>目的</B><DD><P>列出已定义对应值的名称.<DT><B>语法</B><DD><P><CODE>public Enumeration getNames ()</CODE><DT><B>描述</B><DD><P>提供所有已定义对应值的名称的完整列表.<DT><B>返回 </B><DD><P>所有名称的 <CODE>Enumeration</CODE> 物件.</DL><P><H3>getValue()</H3><P><DL><DT><B>目的</B><DD><P>取回所指定对应於 <B>name</B> 的 <B>value</B>.<DT><B>语法</B><DD><P><CODE>public String getValue ( String name )</CODE><DT><B>描述</B><DD><P>这个方法提供由 HTML form 送入的 <CODE>names</CODE> 与 <CODE>values</CODE> 之间的对应.<DT><B>参数</B><DD><P><DL><DT><B>name</B><DD><P>所选择的键值.</DL><DT><B>返回 </B><DD><P>一个包含对应值的 <CODE>String</CODE> 物件.</DL><P><H2><A NAME="cgi-test-class"></A> <A NAME="ss5.2">5.2 CGI_Test</A></H2><P>这个类别提供两个功能,一个如何使用 <CODE>CGI</CODE> 类别的例子以及一个用来确定 <EM>Java CGI</EM> 套件运作正常的测试程式. <P><H3>成员摘要</H3><P><HR><PRE> main() // Program main().</PRE><HR><P><H3>请参阅</H3><P><CODE><A HREF="#cgi-class">CGI</A></CODE>.<P><H3>main()</H3><P><DL><DT><B>目的</B><DD><P>提供 <CODE>main()</CODE> 方法.<DT><B>语法</B><DD><P><CODE>public static void main( String argv[] )</CODE><DT><B>描述</B><DD><P>这是 CGI 程式的入口,只不过返回可用的名称/数值对与其现值的列表.<DT><B>参数 </B><DD><P><DL><DT><B>argv[]</B><DD><P>由 <CODE>java.cgi</CODE> 指令稿传入的参数.目前未使用.</DL></DL><P><H2><A NAME="email-class"></A> <A NAME="ss5.3">5.3 Email</A></H2><P><H3>类别语法</H3><P><CODE>public class Email extends Text</CODE><P><H3>类别描述</H3><P>讯息由 <CODE>Text</CODE> 类别的 <CODE>add*()</CODE> 方法所建立,加入电子邮件专用的方法.完成後,讯息被送到它的目的地.<P>这个类别位於 ``Orbits.net'' 包装中.<P><H3>成员摘要</H3><P><HR><PRE> Email() // 建构子 send() // 送出电子邮件讯息 sendTo() // 增加讯息的目的地 subject() // 设定讯息的主题</PRE><HR><P><H3>请参阅</H3><P><CODE>Email_Test, Text</CODE>.<P><H3>Email()</H3><P><DL><DT><B>目的</B><DD><P>建立一包含电子邮件讯息的物件.<DT><B>语法</B><DD><P><CODE>public Email()</CODE><DT><B>描述</B><DD><P>建立一空的讯息以利由此类别方法加以完成.<DT><B>请参阅</B><DD><P><CODE>Text</CODE>.</DL><P><H3>send()</H3><P><DL><DT><B>目的</B><DD><P>送出电子邮件讯息.<DT><B>语法</B><DD><P><CODE>public void send ()</CODE><DT><B>描述</B><DD><P>本方法编排并送出讯息.如果目的位址还未设定,将不会有动作发生.</DL><P><H3>sendTo()</H3><P><DL><DT><B>目的</B><DD><P>增加本讯息的目的地.<DT><B>语法</B><DD><P><CODE>public String sendTo ( String address )</CODE><DT><B>描述</B><DD><P>将 <CODE>address</CODE> 加入到目的地列表中.一份电子邮件目的地的数目是没有限制的.不过我相信如果你建了过大的列表,你将可能会超过你的<EM>邮件传送代理程式(MTA)</EM> 所能接受的大小或用光你的记忆体.<DT><B>参数</B><DD><P><DL><DT><B>address</B><DD><P>本讯息欲送达的一个目的地.</DL></DL><P><H3>subject()</H3><P><DL><DT><B>目的</B><DD><P>设定本讯息的主题.<DT><B>语法</B><DD><P><CODE>public void subject ( String subject )</CODE><DT><B>描述</B><DD><P>本方法设定电子邮件的 <CODE>Subject:</CODE> 栏位.如果呼叫超过一次以上,会使用最後一次呼叫的结果.<DT><B>参数</B><DD><P><DL><DT><B>subject</B><DD><P><CODE>Subject:</CODE> 栏位的文字.</DL></DL><P><H2><A NAME="email-test-class"></A> <A NAME="ss5.4">5.4 Email_Test</A></H2><P>这个类别提供一个如何使用 <CODE>Email</CODE> 类别的例子以及一个用来确定 <EM>Java CGI</EM> 套件运作正常的测试程式. <P><H3>成员摘要</H3><P><HR><PRE> main() // Program main().</PRE><HR><P><H3>请参阅</H3><P><CODE><A HREF="#email-class">Email</A></CODE>.<P><H3>main()</H3><P><DL><DT><B>目的</B><DD><P>提供 <CODE>main()</CODE> 方法.<DT><B>语法</B><DD><P><CODE>public static void main( String argv[] )</CODE><DT><B>描述</B><DD><P>这是 CGI 程式的入口,返回可用的名称/数值对与其现值的列表.它也将列表送到由 <CODE>Email</CODE> 变数所指定的位址.<DT><B>参数 </B><DD><P><DL><DT><B>argv[]</B><DD><P>由 <CODE>java.cgi</CODE> 指令稿传入的参数.目前未使用.</DL></DL><P><H2><A NAME="html-class"></A> <A NAME="ss5.5">5.5 HTML</A></H2><P><P><H3>类别语法</H3><P><CODE>public class HTML extends Text</CODE><P><H3>类别描述</H3>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -