📄 in6_radio.htm
字号:
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<style>
<!--
p.MsoNormal
{mso-style-parent:"";
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
font-size:10.5pt;
font-family:"Times New Roman";
margin-left:0cm; margin-right:0cm; margin-top:0cm}
-->
</style>
<!--[if !mso]>
<style>
v\:* { behavior: url(#default#VML) }
o\:* { behavior: url(#default#VML) }
.shape { behavior: url(#default#VML) }
</style>
<![endif]-->
<link rel="File-List" href="in6_Radio_files/filelist.xml">
<!--[if gte mso 9]>
<xml><o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]-->
</head>
<body>
<p class="MsoNormal" align="center" style="text-align:center"><b>
<span style="font-size: 24.0pt; font-family: 宋体">Struts单选框的实现</span></b></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><b><span lang="EN-US">[</span><span style="font-family: 宋体">目标</span><span lang="EN-US">]</span></b></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family: 宋体">
本例是在上一个例子“最简单的</span><span lang="EN-US">Struts</span><span style="font-family: 宋体">程序”的基础上(见《如何实现最简单的</span><span lang="EN-US" style="font-family: 宋体">Struts</span><span style="font-family: 宋体">程序》)进行扩展的,其目标是在输入页中实现单选框,在输出页中显示单选框被选的值。</span></p>
<p class="MsoNormal"><span lang="EN-US"> </span><span style="font-family: 宋体">
本项目在前面的</span><span lang="EN-US">Simple</span><span style="font-family: 宋体">项目的基础上进行扩展,那当然也可以建立一个新的项目。</span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><b><span lang="EN-US">[</span><span style="font-family: 宋体">效果</span><span lang="EN-US">]</span></b></p>
<p class="MsoNormal"><span style="font-family: 宋体">输入页面:</span></p>
<p class="MsoNormal" align="center" style="text-align:center">
<span lang="EN-US"><!--[if gte vml 1]><v:shapetype id="_x0000_t75"
coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_s1025" type="#_x0000_t75" style='width:365.25pt;
height:215.25pt'>
<v:imagedata src="in6_Radio_files/image001.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=487 height=287
src="in6_Radio_files/image002.jpg" v:shapes="_x0000_s1025"><![endif]></span></p>
<p class="MsoNormal"><span style="font-family: 宋体">输出页面:</span></p>
<p class="MsoNormal" align="center" style="text-align:center">
<span lang="EN-US"><!--[if gte vml 1]><v:shape
id="_x0000_s1026" type="#_x0000_t75" style='width:365.25pt;height:215.25pt'>
<v:imagedata src="in6_Radio_files/image003.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=487 height=287
src="in6_Radio_files/image004.jpg" v:shapes="_x0000_s1026"><![endif]></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><b><span lang="EN-US">[</span><span style="font-family: 宋体">背景知识</span><span lang="EN-US">]</span></b></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><b><span lang="EN-US">Radio</span><span style="font-family: 宋体">标签</span></b></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span lang="EN-US"><html:radio></span><span style="font-family: 宋体">标签在嵌套在</span><span lang="EN-US"><html:form></span><span style="font-family: 宋体">标签下时可以用来描绘一个</span><span lang="EN-US">HTML</span><span style="font-family: 宋体">单选按钮控件。该标签的属性解释如下:</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt">
<span lang="EN-US" style="font-family:宋体">•
name:bean的名字,需要查询该bean的属性来决定单选按钮的是否设置为选中。如果没有指定该属性,就用与封装表单相关联的指令表单bean的名字。</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt">
<span lang="EN-US" style="font-family:宋体">•
property:该属性定义表单提交时送回服务器的request参数的名字,以及需要查询来决定单先按钮的是否设置为选中。</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt">
<span lang="EN-US" style="font-family:宋体">• value:如果单选按钮设置为选中状态,该值送回服务器。</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family:宋体">
所有这些属性都可以在运行时赋值。</span></p>
<p class="MsoNormal" style="text-indent: 26.25pt"><span lang="EN-US"> </span></p>
<p class="MsoNormal" style="text-indent: 26.25pt"><span style="font-family: 宋体">
关于</span><span lang="EN-US"><html:radio> </span><span style="font-family: 宋体">
的属性用法,例如:</span></p>
<p class="MsoNormal" style="text-indent: 26.25pt"><span lang="EN-US"><html:radio
idName=" idName " value="value" name=" name" property=" property " /></span></p>
<p class="MsoNormal" style="text-indent: 26.25pt"><span style="font-family: 宋体">
表示在输出时,</span><span lang="EN-US">html:radio</span><span style="font-family: 宋体">输出为</span><span lang="EN-US" style="font-size: 9.0pt; font-family: 新宋体">input
type=</span><span lang="EN-US" style="font-size: 9.0pt">”</span><span lang="EN-US" style="font-size: 9.0pt; font-family: 新宋体">radio</span><span lang="EN-US" style="font-size: 9.0pt">”</span><span style="font-size: 9.0pt; font-family: 新宋体">;</span><span lang="EN-US">name</span><span style="font-family: 宋体">输出为</span><span lang="EN-US">name=”name”</span><span style="font-family: 宋体">;对于</span><span lang="EN-US">value</span><span style="font-family: 宋体">的输出,当不指定</span><span lang="EN-US">idName</span><span style="font-family: 宋体">时,</span><span lang="EN-US">value=”value”</span><span style="font-family: 宋体">,当指定</span><span lang="EN-US">idName</span><span style="font-family: 宋体">时,输出是由</span><span lang="EN-US">bean</span><span style="font-family: 宋体">名为</span><span lang="EN-US">"
idName "</span><span style="font-family: 宋体">,属性名为</span><span lang="EN-US">"value"</span><span style="font-family: 宋体">的属性值;当</span><span lang="EN-US">bean</span><span style="font-family: 宋体">名为</span><span lang="EN-US">"
name "</span><span style="font-family: 宋体">,属性名为</span><span lang="EN-US">"
property "</span><span style="font-family: 宋体">的属性值等于上述</span><span lang="EN-US">value</span><span style="font-family: 宋体">的输出值时,输出</span><span lang="EN-US" style="font-size: 9.0pt; font-family: 新宋体">checked="checked"</span><span style="font-family: 宋体">。</span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><b><span lang="EN-US">[</span><span style="font-family: 宋体">步骤</span><span lang="EN-US">]</span></b></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US">1</span><span style="font-family: 宋体">、运行</span><span lang="EN-US">JavaWebStudio</span><span style="font-family: 宋体">、打开</span><span lang="EN-US">Simple</span><span style="font-family: 宋体">项目:</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family: 宋体">
选择菜单:“文件”</span><span lang="EN-US">----</span><span style="font-family: 宋体">“打开项目”,选择最简单的</span><span lang="EN-US">Struts</span><span style="font-family: 宋体">程序项目</span><span lang="EN-US">Simple</span><span style="font-family: 宋体">目录,通过</span><span lang="EN-US">Simple.prj</span><span style="font-family: 宋体">项目文件打开项目。</span></p>
<p class="MsoNormal"><span lang="EN-US">2</span><span style="font-family: 宋体">、打开</span><span lang="EN-US">HelloWord.jap</span><span style="font-family: 宋体">文件:</span></p>
<p class="MsoNormal" align="center" style="text-align:center">
<span lang="EN-US"><!--[if gte vml 1]><v:shape
id="_x0000_s1027" type="#_x0000_t75" style='width:177.75pt;height:286.5pt'>
<v:imagedata src="in6_Radio_files/image005.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=237 height=382
src="in6_Radio_files/image006.jpg" v:shapes="_x0000_s1027"><![endif]></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span><span style="font-family: 宋体">
从</span><span lang="EN-US">JavaWebStudio</span><span style="font-family: 宋体">文件管理器中打开</span><span lang="EN-US">HelloWord.jap</span><span style="font-family: 宋体">文件,然后切换到工具栏中,选择</span><span lang="EN-US">Struts</span><span style="font-family: 宋体">标签,把“</span><span lang="EN-US">radio</span><span style="font-family: 宋体">标签”拖动到代码编辑窗口(或</span><span lang="EN-US">Web</span><span style="font-family: 宋体">可视化编辑窗口)中。</span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span lang="EN-US"> <!--[if gte vml 1]><v:shape
id="_x0000_s1028" type="#_x0000_t75" style='width:468pt;height:273pt'>
<v:imagedata src="in6_Radio_files/image007.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=624 height=364
src="in6_Radio_files/image008.jpg" v:shapes="_x0000_s1028"><![endif]></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family: 宋体">
在代码编辑窗口点击鼠标右键:选择刷新视图,</span><span lang="EN-US">Web</span><span style="font-family: 宋体">可视化编辑窗口得到刷新。</span></p>
<p class="MsoNormal" align="center" style="text-align:center">
<span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US">3</span><span style="font-family: 宋体">、加入</span><span lang="EN-US">Bean</span><span style="font-family: 宋体">变量:</span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"><!--[if gte vml 1]><v:shape
id="_x0000_s1029" type="#_x0000_t75" style='width:318pt;height:238.5pt'>
<v:imagedata src="in6_Radio_files/image009.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=424 height=318
src="in6_Radio_files/image010.jpg" v:shapes="_x0000_s1029"><![endif]></span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family: 宋体">在</span><span lang="EN-US">Web</span><span style="font-family: 宋体">可视化编辑窗口中,鼠标光标移到其中一个单选框上并点击鼠标右键,选择“添加</span><span lang="EN-US">Bean</span><span style="font-family: 宋体">变量”,加入变量名称为“</span><span lang="EN-US">radio</span><span style="font-family: 宋体">”的</span><span lang="EN-US">Bean</span><span style="font-family: 宋体">变量(也可在</span><span lang="EN-US">HelloWordForm.java</span><span style="font-family: 宋体">中点击鼠标右键进行同样的操作):</span></p>
<p class="MsoNormal" align="center" style="text-align:center">
<span lang="EN-US"><!--[if gte vml 1]><v:shape
id="_x0000_s1030" type="#_x0000_t75" style='width:243pt;height:177pt'>
<v:imagedata src="in6_Radio_files/image011.png" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=324 height=236
src="in6_Radio_files/image012.jpg" v:shapes="_x0000_s1030"><![endif]></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" style="text-indent: 21.0pt"><span style="font-family: 宋体">
上述“添加</span><span lang="EN-US">Bean</span><span style="font-family: 宋体">变量”操作完成,</span><span lang="EN-US">HelloWordForm.java</span><span style="font-family: 宋体">自动加入了</span><span lang="EN-US">select</span><span style="font-family: 宋体">变量及</span><span lang="EN-US">setRadio()</span><span style="font-family: 宋体">和</span>
<span lang="EN-US">getRadio()</span><span style="font-family: 宋体">函数(黑体字部分的代码)。</span></p>
<p class="MsoNormal"><span lang="EN-US">package emptyprj;</span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US">import
javax.servlet.http.HttpServletRequest;</span></p>
<p class="MsoNormal"><span lang="EN-US">import
org.apache.struts.action.ActionError;</span></p>
<p class="MsoNormal"><span lang="EN-US">import
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -