jsp struts1 标签实例详解第1/2页

所属分类: 网络编程 / JSP编程 阅读数: 1379
收藏 0 赞 0 分享
1,TagForm.java
复制代码 代码如下:

package com.tarena.struts.tag.form;

import org.apache.struts.action.*;
import javax.servlet.http.*;
import java.util.*;

public class TagForm extends ActionForm
{
private int id;
private String userName;
private String password;
private int sex;
private String[] hobbies;
private String from;
private String introduction;
private Collection provinces;
private boolean checkbox1;
private boolean checkbox2;

public TagForm()
{
sex = 1;
provinces = new ArrayList();
provinces.add(new OptionBean("beijing", "100000"));
provinces.add(new OptionBean("hebei", "110000"));
provinces.add(new OptionBean("tianjin", "120000"));
}

public String getFrom()
{
return from;
}

public void setFrom(String from)
{
this.from = from;
}

public String[] getHobbies()
{
return hobbies;
}

public void setHobbies(String[] hobbies)
{
this.hobbies = hobbies;
}

public int getId()
{
return id;
}

public void setId(int id)
{
this.id = id;
}

public String getIntroduction()
{
return introduction;
}

public void setIntroduction(String introduction)
{
this.introduction = introduction;
}

public String getPassword()
{
return password;
}

public void setPassword(String password)
{
this.password = password;
}

public int getSex()
{
return sex;
}

public void setSex(int sex)
{
this.sex = sex;
}

public String getUserName()
{
return userName;
}

public void setUserName(String userName)
{
this.userName = userName;
}

public Collection getProvinces()
{
return provinces;
}

public void reset(ActionMapping mapping, javax.servlet.http.HttpServletRequest request)
{
//checkbox1 = false;
//hobbies = null;
}

public boolean isCheckbox1() {
return checkbox1;
}

public void setCheckbox1(boolean checkbox1) {
this.checkbox1 = checkbox1;
}

public boolean isCheckbox2() {
return checkbox2;
}

public void setCheckbox2(boolean checkbox2) {
this.checkbox2 = checkbox2;
}

public void setProvinces(Collection provinces) {
this.provinces = provinces;
}
}

2,input_struts.jsp
复制代码 代码如下:

<%@ page language="java" contentType="text/html;charset=utf-8"%>
<%@ taglib uri="/WEB-INF/resource/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/resource/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/resource/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/resource/struts-tiles.tld" prefix="tiles"%>
<%@ taglib uri="/WEB-INF/resource/struts-nested.tld" prefix="nested"%>
<%@ taglib uri="/WEB-INF/resource/c.tld" prefix="c"%>
<%@ taglib uri="/WEB-INF/resource/app.tld" prefix="app"%>
<%@ taglib uri="/WEB-INF/resource/fmt.tld" prefix="fmt"%>

<!-- 需要在struts-config.xml中action的path为"/tag"的name属性中指定一个form bean -->
<html:form action="/tag">
<html:hidden property="id" />
userName:<html:text property="userName" />
password:<html:password property="password" /><br>
<!--
在checkbox后面添加一个和checkbox的属性同名并且value为“false”的隐藏输入框,强迫Struts去重新设置checkbox的属性值
一般情况下,在ActionForm中都使用布尔型变量来表示一个checkbox,这是因为它要么没被选中,要么就是被选中。

multibox标签生成网页上的复选框,其实它的功能和checkbox一样。
所不同的是,在此复选框所在的ActionForm中使用一个数组来表示该复选框。
所以,一般情况下,推荐使用multibox。
private boolean checkbox1;
private String[] hobbies;
-->
checkbox1:<html:checkbox property="checkbox1" />
<input type="hidden" name="checkbox1" value="false">
checkbox2:<html:checkbox property="checkbox2" />
<input type="hidden" name="checkbox2" value="false"><br>

hobbies:swim<html:multibox property="hobbies" value="1" />
reading<html:multibox property="hobbies" value="2" />
walking<html:multibox property="hobbies" value="3" /><br>

<!-- 从form传来的radio若已经setter赋值了,则在页面上value值与之相等的就会被勾选 -->
gender:male<html:radio property="sex" value="1" />
female<html:radio property="sex" value="2" /><br>

<!-- provinces在form bean中定义及赋值如下:
private Collection provinces;

provinces = new ArrayList();
provinces.add(new OptionBean("beijing", "100000"));
provinces.add(new OptionBean("hebei", "110000"));
provinces.add(new OptionBean("tianjin", "120000"));
-->
<html:select property="from">
<html:optionsCollection property="provinces"/>
</html:select>

<!--
size为1,则只同时显示一个选项。
还有一个multiple属性,当其为true时,该选择列表就允许多选。用户可以通过鼠标的拖动,或是按住Ctrl键进行多选。
当multiple属性为true时,在ActionForm中对应的属性应是一个数组类型以便同时向其赋上用户选中的多个值。
-->
<html:select property="from" size="3" multiple="true">
<html:option value="value1">Show Value1</html:option>
<html:option value="value2">Show Value2</html:option>
<html:option value="value3">Show Value3</html:option>
</html:select><br>

<html:textarea rows="5" cols="30" property="introduction"></html:textarea><br>
<input type="submit" value="register" >
<br><br>

</html:form>

更多精彩内容其他人还在看

weblogic 8.1下重新编译java类但不用重启服务器的方法

weblogic 8.1下重新编译java类但不用重启服务器的方法
收藏 0 赞 0 分享

JSP下动态INCLUDE与静态INCLUDE的区别分析

这篇文章给大家介绍了JSP下动态INCLUDE与静态INCLUDE的区别分析,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

jsp中文乱码 jsp mysql 乱码的解决方法

当使用JSP页面将中文数据添加到MySql数据库中的时候发现变为乱码,或者从mysql中读取中文的时候出现乱码,这些问题根源都是由于字符编码不一致造成的。本文介绍jsp mysql 乱码的解决方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Jsp页面实现文件上传下载类代码第1/2页

Jsp页面实现文件上传下载类代码
收藏 0 赞 0 分享

下载完成后页面不自动关闭的方法

其实就一句话js代码,window.close()
收藏 0 赞 0 分享

JBuilder2005实现重构

JBuilder2005实现重构
收藏 0 赞 0 分享

CORBA对象生命周期

CORBA对象生命周期
收藏 0 赞 0 分享

基于Java的代理设计模式

基于Java的代理设计模式
收藏 0 赞 0 分享

Java中四种XML解析技术

Java中四种XML解析技术
收藏 0 赞 0 分享

跨平台Java程序

跨平台Java程序
收藏 0 赞 0 分享
查看更多