Struts2获取HTML表单元素与Struts表单标签的区别使用-基础篇
序:
页面和后台之间的数据交互很多时候是依赖表单来完成的,通常使用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配置:
- <span style=”font-family:’Comic Sans MS’;”><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></span>
HTML表单元素使用
html的jsp页面(form_html.jsp):
- <span style=”font-family:’Comic Sans MS’;”><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></span>
页面展示:

Struts2表单标签使用
struts2标签的jsp页面(form_struts.jsp):
- <span style=”font-family:’Comic Sans MS’;”><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></span>
结果展示:
