Struts2获取HTML表单元素与Struts表单标签的区别使用-基础篇

来源:互联网 发布:超级未来网络连接 编辑:程序博客网 时间:2024/05/25 01:36

序:

页面和后台之间的数据交互很多时候是依赖表单来完成的,通常使用struts标签相对而言方便点,但效率上很明显比用纯粹的html表单元素要差很多。

虽然比较基础,但是还是在这里对两者结合后台的使用作一个记录。

正文:

Action源码:
public class FormAction { private String text; private String radio; private String ck; private String select; private String multiple; private String textarea;  public String savestrutsform() { log(getText()); log(getRadio()); log(getCk()); log(getSelect()); log(getMultiple()); log(getTextarea()); return "none"; } public String showstrutsform() { return "success"; } public String savehtmlform() { log(getText()); log(getRadio()); log(getCk()); log(getSelect()); log(getMultiple()); log(getTextarea()); return "none"; }  public String showhtmlform() { return "success"; }  public void log(String str) { System.out.println(str); } //get,set省略 } 

xml配置:
<struts> <package name="form" extends="struts-default"> <action name="savehtmlform" class="com.company.strutstudy.web.action.FormAction" method="savehtmlform"> </action> <action name="showhtmlform" class="com.company.strutstudy.web.action.FormAction" method="showhtmlform"> <result name="success">/core/form_html.jsp</result> </action>  <action name="savestrutsform" class="com.company.strutstudy.web.action.FormAction" method="savestrutsform"> </action> <action name="showstrutsform" class="com.company.strutstudy.web.action.FormAction" method="showstrutsform"> <result name="success">/core/form_struts.jsp</result> </action> </package> </struts>

HTML表单元素使用

html的jsp页面(form_html.jsp):
<form action="savehtmlform.action" method="post"> <table border="1"> <tr> <td colspan="2"> Action对html表单元素进行获取 </td> </tr> <tr> <td> 复选框checkbox </td> <td> <input type="checkbox" name="ck" value="1" /> <input type="checkbox" name="ck" value="2" /> <input type="checkbox" name="ck" value="3" /> <input type="checkbox" name="ck" value="4" /> </td> </tr> <tr> <td> 文本框text </td> <td> <input type="text" name="text" /> </td> </tr> <tr> <td> 单选radio </td> <td> <input type="radio" name="radio" value="1" /> <input type="radio" name="radio" value="2" /> <input type="radio" name="radio" value="3" /> <input type="radio" name="radio" value="4" /> </td> </tr> <tr> <td> 单选下拉select </td> <td> <select name="select"> <option value="1"> one </option> <option value="2" selected="selected"> two </option> <option value="3"> three </option> <option value="4"> four </option> </select> </td> </tr> <tr> <td> 多选下拉select </td> <td> <select name="multiple" multiple="multiple"> <option value="1"> one </option> <option value="2" selected="selected"> two </option> <option value="3"> three </option> <option value="4"> four </option> </select> </td> </tr> <tr> <td> 文本域(textarea) </td> <td> <textarea rows="2" cols="3" name="textarea"> </textarea> </td> </tr> <tr> <td colspan="2"> <input type="submit" value="保存表单"> </td> </tr> </table> </form>
页面展示:


Struts2表单标签使用

struts2标签的jsp页面(form_struts.jsp):
<s:form action="savestrutsform" method="post"> <s:label value="Action对struts2表单元素进行获取" ></s:label> <table border="1"> <s:checkboxlist label="复选框checkbox" list="{1,2,3,4}" value="1,2" name="ck" /> <s:textfield label="文本框text" name="text" value="" /> <s:radio list="{1,2,3,4}" name="radio" label="单选radio(list)"></s:radio> <s:radio list="#{'1':'one','2':'two','3':'three','4':'four'}" name="radio" label="单选radio(map)"></s:radio> <!-- value中设置默认选中 --> <s:select label="单选下拉select" list="{1,2,3,4}" value="1" name="select" /> <s:select label="多选下拉select" list="#{'1':'one','2':'two'}" value="1" name="multiple" multiple="true" /> <s:textarea label="文本域textarea" name="textarea" value="" cols="2" rows="3"></s:textarea> <s:submit value="保存表单"></s:submit> </table></s:form>

结果展示:

总结:

两者的使用区别通过查看上面的实例,还是比较大的。