item实体类,主要属性
@Id
@GeneratedValue
private int id;
@Column(nullable=true)
private String itemNo;
@Column(nullable=true)
private String itemName;
//物料规格
private String spec;
//物料型号
private String pattern;
@OneToOne
@JoinColumn
private ItemCategory category;
@OneToOne
@JoinColumn
private ItemUnit unit;
由于item,关联ItemCategory, ItemUnit两个类
因此在由jsp页面向action传递参数的时候,就有一些问题了,如果只是使用Modeldriven来处理,是不行的,
需要辅助处理,应该按照下面的实现。ModelDriven在向item赋值的时候,如果只是普通属性,那么就可以自行进行
类型转换,但是现在这里有自己定义的类型,就不行了。
public class ItemAction extends ActionSupport implements ModelDriven{
private Item item;
private String categoryId;
private String unitId;
private String[] selectFlag;
把jsp也面的name的值设置为categoryId;这样子的话ModelDriven就不会为item赋值了。
这样我们自己取得在设置里面,就可以更新和存储了。
也可以不使用ModelDriven,在jsp页面使用这样传值
<input type="" name="item.id">
<input type="" name="item.itemName">
<input type="" name="item.itemNo">
<input type="" name="item.spec">
<input type="" name="item.pattern">
<input type="" name="item.category.id">
<input type="" name="item.unit.id">
这样也很灵活
分享到:
相关推荐
在Struts2中,ModelDriven是它提供的一种处理模型数据的机制,能够帮助开发者更方便地管理和传递Action类中的模型数据。这篇博客文章可能详细探讨了如何在Struts2中使用ModelDriven接口来接收和处理请求参数。 ...
- 使用Struts2时要注意安全问题,如SQL注入、XSS攻击等,合理使用Struts2的安全拦截器。 - 理解MVC模式的重要性,避免在JSP中编写过多的业务逻辑。 - 保持良好的编程习惯,如代码注释、命名规范等。 通过这个...
综上所述,Struts2是一个功能丰富的MVC框架,提供了多种机制来简化Web应用的开发,同时也需要注意安全问题,确保应用的安全稳定。通过深入理解和熟练使用Struts2,开发者可以构建出高效、可维护的企业级应用。提供的...
相比之下,Struts2为每个请求创建一个新的Action实例,避免了线程安全问题,简化了开发者的任务。 在Servlet依赖上,Struts1的Action直接依赖于Servlet API,执行方法接收HttpServletRequest和HttpServletResponse...
Struts2 ModelDriven模式是Java Web开发中一种常见的MVC框架设计模式,它在Struts2框架中扮演着重要的角色。这个模式的主要目的是简化Action类的编写,提高代码的可维护性和可读性。在Struts2中,ModelDriven模式...
- **Struts 2**:每个请求都会创建一个新的Action实例,消除了线程安全问题,同时也减少了开发者在处理并发请求时需要考虑的问题。 #### 3. Servlet依赖方面的对比 - **Struts 1**:Action的方法签名中包含了`...
### Struts2框架学习笔记整理 #### 一、Struts2框架概述 ...通过对Struts2的学习,开发者不仅可以掌握其基本用法,还能深入理解其内部原理和技术细节,从而更好地利用这一强大工具解决实际项目中的问题。
需要注意的是,这里的 `user` 变量不需要显式地 new 出来,Struts2 会在适当的时候为我们创建并初始化它。 **解决复杂情况:** 对于一些复杂的场景,例如需要验证用户输入的重复性等,我们可以引入 DTO(Data ...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展、模块化和高度控制的Web应用程序。在Struts2中,分页是常见的需求,特别是在处理大量数据时,为了提高用户体验,通常需要将结果分成多页显示。本文将...
8. **模型驱动(ModelDriven)和拦截器链(Interceptor Stack)**:Struts2支持模型驱动方式,通过一个通用的Model接口,可以简化Action的编写。同时,拦截器链允许开发者自定义拦截器顺序,实现复杂逻辑。 9. **...
8. **模型驱动(ModelDriven)**:Struts2的模型驱动模式可以将请求参数自动绑定到Action类的属性,简化了数据处理。在登录场景中,Action类通常会有一个Username和Password属性对应用户输入。 9. **国际化...
3. **ModelDriven模式**:Struts2中的ModelDriven接口可以帮助减少Action类的代码量,使模型和视图更清晰。 4. **Service和DAO层**:创建业务服务层和数据访问对象层,Spring管理这些Bean并提供事务控制。 5. **数据...
需要注意的是,随着技术的发展,Struts2的最新版本可能会包含更多的改进和安全修复,因此,保持框架版本的更新对于应用程序的安全性和稳定性至关重要。在实际项目中,应根据项目需求和团队的技术栈选择合适版本的...
值得注意的是,在Struts2中,Action类并不一定需要实现`Action`接口,只要包含一个名为`execute`的方法即可。 #### 2. 线程模式的对比 - **Struts1**:Action类遵循单例模式,这意味着在整个应用生命周期内,每个...
通过在Action类中定义与表单字段相对应的成员变量,Struts2的`ModelDriven`或者`params`注解可以自动将表单数据绑定到这些属性上。例如,如果有一个名为`username`的表单字段,我们可以在Action类中创建一个对应的`...
- **注意事项**:路径必须与`struts.xml`中的配置相匹配,否则将无法正确执行Action。 #### 七、Action的动态调用方法 - **简介**:Struts2支持动态调用Action,即允许用户通过特定格式的URL来调用不同的方法。 - ...
Struts2支持模型驱动,通过`@ModelDriven`注解,我们可以让Action类自动绑定一个模型对象。例如: ```java @Action(value = "myAction") @ModelDriven public class MyAction { private MyModel model; // ...
根据提供的文件信息,我们可以将Struts2的相关知识点总结如下: ### Struts2框架概述 - **Struts2** 是一个基于MVC模式的开源Web应用框架,它与JSP、XML、JDK以及Tomcat等技术紧密关联。Struts2在Java Web开发中...
Struts 2.3.15.1 是一个流行的Java Web框架Apache Struts的一个特定版本。这个框架主要用于构建和管理MVC(Model-View-Controller)架构的应用程序,旨在简化...同时,注意保持框架的更新,以防止已知安全问题的影响。