今天用到了struts 封装set,找了很多资料,也没有找到一个说的特别明白的,今天自己连猜带试准备成功了,现在将我的成果跟大家分享一下,
action中需要封装一个set,代码如下
public class CustomerInserterAction extends ActionSupport {
//将数据封装到orders中
private Set<Order> orders=new HashSet();
//要加上get和set方法
public Set getOrders() {
return orders;
}
public void setOrders(Set orders) {
this.orders = orders;
}
}
order是一个javabean,有一个id为其主键
封装set的重点是配置CustomerInserterAction-conversion.properties文件,我的内容如下
//配置order对象的主键
KeyProperty_orders=id
//Element_集合对象名称=封装类的全程
Element_orders=test.persistence.Order
//如果集合对象为空,就创建一个新的
CreateIfNull_orders=true
将此配置文件和action放在同一个目录下
在页面上这样写:
<input name="orders.makeNew[0].orderNumber" type="text" size="10">
必须要使用makeNew运算符,这样ognl才能帮我创建新的对象,否则orders会为空。当时如果集合类型是List,就不必这样,直接name="orders[0].orderNumber"就可以了。
这样就可以把页面的值封装到set中了。
分享到:
相关推荐
- **集合参数封装**:使用List、Set等集合类型封装多个相同类型的参数。 - **Map参数封装**:使用Map类型封装键值对形式的参数。 ##### 3.2 访问Servlet API - **通过ActionContext访问**:使用ActionContext获取...
"struts2对Ognl的封装--PropertyAccessor"这个主题主要涉及Struts2框架如何处理OGNL表达式,特别是如何通过PropertyAccessor接口来访问和操作对象的属性。 首先,我们来了解什么是OGNL。OGNL是Struts2的核心组件之...
当表单提交后,Struts2会自动将这些数据封装到Action的相应属性中。在Action类中,你需要声明对应的集合属性,并设置getter和setter方法。例如: ```java private List<String> list; private Set<String> set;...
- Struts2支持更多的数据绑定,包括复杂对象和集合。 - Struts2的配置更加灵活,使用XML和注解相结合。 - Struts2引入了OGNL,增强了视图层的数据访问能力。 - Struts2的异常处理更加健壮,提供了统一的异常处理...
- **结果集转换(Result Set Conversion)**:Struts2提供了结果集转换机制,能将查询结果自动转化为Java对象集合,便于显示在视图上。 - **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为...
### Struts2标签库详解 #### 一、Struts2标签库简介 Struts2框架是一种基于MVC设计模式的企业级应用开发框架,它能够帮助开发者构建高效且可维护的Web应用程序。Struts2框架内置了一个强大的标签库,这些标签不仅...
此外,还定义了一个`Set`类型的`productinfo`集合,用于存储该分类下的商品信息。 #### Service层实现 接下来,我们关注Service层的实现。这里定义了两个方法:`findSortOne()`和`findSortTwo()`,它们分别用于...
### Struts2学习笔记知识点概览 #### 一、Struts的作用 - **核心功能**:Struts2框架的核心功能之一就是将业务逻辑与展示层分离,实现MVC(Model-View-Controller)架构模式。这有助于提高代码的可维护性、可扩展...
- **5.4.4 User集合(Set)属性类型转换器,有多个String需要转换为User类型** - **实现方式**:如果需要将多个字符串转换成User对象集合,应该如何实现。 **5.5 类型转换错误处理** - **实现方式**:当类型转换...
10. **Java集合框架**:List、Set、Queue和Map接口,以及它们的实现类如ArrayList、LinkedList、HashSet、HashMap等的工作原理。 【Servlet面试题】 1. **Servlet生命周期**:包括加载、实例化、初始化、服务、...
- **关联关系**:`ProductSort`还定义了一个`Set<ProductInfo>`类型的集合,表示一个产品分类可以包含多个产品信息。 #### 3. Struts2中的DoubleSelect标签详解 接下来,我们重点介绍如何在Struts2中使用`...
- **封装数据到集合中**:可以将表单数据封装到`List`或`Map`中。 #### OGNL (Object-Graph Navigation Language) - **概述**:OGNL是一种强大的表达式语言,用于获取和设置Java对象的属性。它可以独立使用,但在...
Struts 2标签库包含了大量预定义的标签,这些标签封装了常见的Web页面元素和交互逻辑,如表单控件、数据绑定、条件判断等,可以显著提高开发效率和代码质量。以下是对部分标签的详细介绍: #### `<s:a>` 标签 该...
Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者可以更加便捷地构建用户界面。以下是对一些主要Struts2标签的详细说明: A. `<s:a>`:此标签用于创建超链接,与HTML的`<a>`标签类似。`xhref`属性...
### Struts2批量提交数据解决方案 在Web应用开发过程中,特别是在使用Struts2框架时,经常需要处理大量的数据提交操作。这些数据可能来自于用户输入或者是系统内部的数据迁移等场景。对于这种需求,本文档将详细...
本文将详细介绍如何在 Struts2 框架中利用 JavaScript(JS)进行客户端表单验证,并结合实际代码示例来解释具体的实现方式。 #### 一、基本概念 Struts2 是一个基于 Java 的企业级应用框架,它支持多种技术栈,...
Struts1.x是一款经典的MVC(Model-View-Controller)框架,它在Java ...同时,随着技术的发展,虽然Struts1.x已逐渐被Struts2、Spring MVC等更现代的框架取代,但理解这些基础知识对于学习更高级的框架仍然很有帮助。
根据提供的文件信息,我们可以归纳出以下关于Struts2中OGNL(Object-Graph Navigation Language)的知识点: ### 1. 引言与简介 OGNL 是一种强大的表达式语言,它允许开发人员通过简洁的语法来导航 Java 对象。...
2. `<s:set name=""></s:set>` - 设置变量值,可以在特定范围内使用。 3. `<s:sort comparator=""></s:sort>` - 对列表进行排序,可以通过比较器自定义排序规则。 以上就是Struts2标签的详细解析,它们极大地简化了...