最开始的设计是这样的:
枚举类代码:
public enum Face {
STRAIGHT {
public String getName() {
return "直板";
}
},
COVER {
public String getName() {
return "翻盖";
}
},
SLIP {
public String getName() {
return "滑盖";
}
};
public abstract String getName();
public static Map<String, String> getMap() {
Map<String, String> maps = new HashMap<String, String>();
Face[] faces = Face.class.getEnumConstants();
for (Face f : faces) {
maps.put(f.toString(), f.getName());
}
return maps;
}
}
前台jsp页面对应的引用为:
<s:radio list="@com.asm.product.mobile.entity.Face@getMap()" name="mobile.face"></s:radio>
这样设计有两个问题:
(1):不能为此标签设定一个默认值(2)如果修改导航过来,不能还原
改进设计:
步骤一:在枚举类中把getMap改成非静态的。
步骤二:前台jsp页面对应的引用为:
<s:radio list="mobile.face.getMap()" name="mobile.face"></s:radio>
步骤三,在导向到此jsp页面就设置初始化信息,即:
public String addUIProduct() throws Exception {
mobile = new Mobile();
return "addUI";
}
说明:moile对象持有枚举类Face,并且要初始化一个值:
private Face face = Face.STRAIGHT; // 外观:直板、滑盖、翻盖
至此,完成 。。。
分享到:
相关推荐
通过`struts2(checkbox_radio_select)表单标签的应用及详细事例.doc`文档,你应该能更深入地了解Struts2的`radio`标签如何与其他表单元素(如`checkbox`和`select`)配合工作,以及如何在实际项目中灵活运用。...
五、自定义标签与Struts2内置标签的结合 Struts2已经提供了丰富的内置标签,如`s:form`、`s:textfield`等,它们能很好地与自定义标签协同工作。开发者可以根据需求,选择使用内置标签或自定义标签,甚至在同一个页面...
在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...
Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...
在实际使用中,结合OGNL表达式语言,Struts2标签可以非常灵活地处理各种复杂情况。例如,我们可以利用OGNL动态地计算条件、访问对象属性等。总的来说,掌握Struts2的标签库对于提高Struts2应用的开发质量和效率至关...
本资源详细介绍了如何在Struts2中自定义分页标签,使得开发过程更加便捷。 在Struts2中,分页通常涉及到以下几个关键步骤: 1. **创建Action类**:首先,你需要创建一个Action类,该类将处理用户的请求,包括获取...
Struts2框架中的标签库是基于JSP标准标签库(JSTL)的扩展,它提供了一系列与动作、结果、表单和国际化相关的标签。这些标签能够帮助开发者在页面上轻松地展现数据、处理表单提交、实现动态内容生成等。 2. **主要...
在Struts2标签库中,还有许多其他的标签,如、<s:radio />、等,每个标签都有其特定的使用场景和应用。 Struts2标签库提供了一系列的标签,帮助开发者快速构建Web应用程序,并提高了开发效率。但是,为了充分发挥...
在这个“struts2枚举值、日期值转换示例”中,我们将关注如何自定义枚举值和日期值的转换器。 首先,枚举(Enum)在Java中是一种特殊的类,用于表示有限集合中的固定数量的值。在Struts2中,如果Action类的属性是...
Struts2标签具有动态性,可以结合OGNL(Object-Graph Navigation Language)表达式来访问和操作对象。例如,`s:property`标签可以显示Action中对象的属性值: ```jsp ``` 在这个例子中,"user"是Action中的一...
在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...
通过Struts2的标签库,我们可以轻松地构建出符合MVC架构的Web应用,将视图层与业务逻辑分离,使得代码更加清晰、易于维护。同时,这些标签还提供了丰富的功能,如数据校验、国际化、AJAX支持等,大大提升了开发效率...
1. **Struts2标签的分类与功能** - **控制标签**:如`s:if`, `s:else`, `s:choose`等,用于条件判断和流程控制。 - **数据展示标签**:如`s:textfield`, `s:textarea`, `s:checkbox`, `s:radio`等,用于创建表单...
这些标签通常与Struts2的配置文件相结合,可以传递参数,实现动态链接和导航。 2. **数据展示标签**:这一类标签用于在页面上展示数据,如`s:property`标签用于显示对象的属性值,`s:debug`用于调试,显示当前上下...
在Struts2中,使用了一系列的标签库来增强JSP页面的功能,使得开发者可以更方便地实现业务逻辑与视图的分离,提高代码的可读性和可维护性。本篇文章将详细介绍Struts2中的各种标签及其应用。 1. **s:form标签**:这...
Struts标签是Apache Jakarta Struts框架中的一部分,用于简化Java Web应用程序开发中的视图层构建。Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据...
在实际使用中,Struts2标签的灵活性和便利性体现在数据绑定上,它可以直接与Action类的属性进行交互,无需繁琐的EL表达式。例如,`<s:textfield name="username">`会自动找到对应的Action中的`username`属性,并将...
在Struts2中,表单标签通常与Action类中的属性相对应,用于在JSP页面上创建HTML表单元素。例如,`<s:textfield>`标签用于创建文本输入框,它与Action类中的String类型属性绑定。以下是基本用法: ```jsp 用户名" />...
Struts2是一个强大的Java web应用程序框架,它极大地简化了MVC(模型-视图-控制器)架构的...这份“Struts2标签与开发手册”将是你探索Struts2世界的重要指南,无论你是初学者还是经验丰富的开发者,都值得反复研读。