这断时间一直在用struts做开发,还规定尽量用struts的标记库,所以最进对struts的标记库研究得比较多。直到今天才发现,前面研究的东西都是白费了,最终都是用不上了。
前面写过用struts tag对formbean 属性的显示,花了不少时间研究出了对Integer ,BigDecimal类型属性的显示问题,struts formbean是不支持Date类型的属性的。也看到了”struts formbean的最佳实践是String“这句话,也看到过formbean获取这些数据,首先都是以string类型获取到,然后再转成自己所需类型这样的文章。但是一直抱着偷懒的心态,一直想尽量用BeanUtils.copyProperties(object,formbean)这样的方法来获取formbean的内容,懒得自己一个一个属性的获取和赋值。
但是今天出现的一个问题,使我幡然醒悟。
问题描述如下:
1,我定义了一个formbean,里面有两个BigDecimal属性。
2,然后我在jsp页面上要新增一个对象,提交时报一个javax.servlet.ServletException: BeanUtils.populate异常。
我发现是因为没有给那2个BigDecimal属性附初值的原因。
想想以前看过的内容,我想formbean获取属性值时,也许也是会这么获取内容
new BigDecimal(request.getParameter("xxxx"));由于xxx是null,所以就报错误了。
我没有看过struts的源代码,这只是我自己想当然的想法,不知道对不对,哪位高人看后,不吝赐教,非常感谢。
分享到:
相关推荐
总之,这个例子展示了如何在Struts1.2框架中利用动态FormBean实现数据输入的验证,从而提高应用的安全性和用户体验。通过理解和实践这个例子,开发者能够更好地掌握Struts1.2的核心特性,为构建高效、健壮的Java Web...
可以在`struts-bean.properties`文件中设置`date.format`属性,指定日期的格式,Struts会根据这个格式自动转化字符串到日期对象。 四、例子 假设我们有一个FormBean类`UserForm`,其中有一个`java.util.Date`类型的...
如果你正在学习Struts2 Validation,这个文件可能会包含如何配置和使用验证规则的实例,你可以打开这个文件,结合上面介绍的概念进行实践和学习。 总之,Struts2 Validation是Struts2框架中处理用户输入验证的重要...
通过这两个教程,你可以了解到Struts1和Struts2在架构设计、核心组件、配置方式以及开发实践上的异同,理解它们如何帮助开发者构建高效、可维护的Java Web应用。阅读Struts1.pdf文档,将帮助你掌握Struts1的基础知识...
- **Struts2** 则允许开发者定义多个公开的String返回类型的方法,每个方法可以通过配置文件映射到不同的请求。 4. **线程模型** - **Struts1.x** 的Action类是单例模式,所有请求共享同一个Action实例,这需要...
12. **最佳实践**:提供Struts开发的最佳实践和常见问题解决方案,以避免常见的陷阱和错误。 13. **升级和迁移**:如果涉及到从Struts1到Struts2的升级,手册可能还会提供相关的迁移指南和注意事项。 通过阅读...
Struts1.x 必须继承org.apache.struts.action.Action或者其子类,表单数据封装在FormBean中。Struts 2无须继承任何类型或实现任何接口,表单数据包含在Action中,通过Getter和Setter获取。 虽然,在理论上Struts2的...
Struts1的配置主要在struts-config.xml文件中进行,包括Action映射、FormBean定义和Plug-In配置等。 - **MVC架构**:Struts1遵循MVC设计模式,使得开发者可以将业务逻辑、数据模型和用户界面分离,提高代码的可重用...
1. **struts-core.jar**:这是Struts框架的核心库,包含了Action、ActionSupport、FormBean等基础类,以及配置解析、请求处理等关键组件。 2. **struts-tiles.jar**:Tiles是一个视图管理框架,它允许开发者定义和...
总的来说,Struts 是一个强大且成熟的Web开发框架,它在实践中展示了其价值,尤其是在大型项目中的适应性和可扩展性。然而,随着技术的发展,开发者也需要关注和学习新的框架和技术,以应对不断变化的开发需求。
【Eclipse开发Struts1.2】的知识点详解 Struts1.2 是一个流行的Java Web框架,它基于Model-View-Controller (MVC)设计模式,提供了强大的控制层功能,便于开发人员构建可维护、可扩展的Web应用程序。Eclipse作为一...
本话题将围绕如何在Java中使用这些库来读取JSON数据并进行FormBean的操作进行详细讲解。 首先,我们需要理解FormBean的概念。FormBean是Java Web开发中的一个术语,通常用于封装HTML表单提交的数据,以便在服务器端...
在“MyStruts”这个压缩包中,可能包含的是整个项目的源码结构,包括Action、Form、配置文件、JSP页面等,你可以通过阅读和运行这些代码,亲身体验Struts的工作流程,加深对Struts的理解。如果你对Struts框架感兴趣...
这一步骤是关键,因为它会自动添加Struts所需的库文件和配置文件,包括struts-config.xml,这是Struts框架的核心配置文件。 #### 构建登录功能的关键组件 接下来,我们将构建登录功能所需的几个关键组件,包括登录...
《Programming Jakarta Struts》这本书是Java Web开发领域中的一本经典之作,主要聚焦于Struts框架的使用和实践。Struts是由Apache软件基金会维护的一个开源项目,它为构建基于MVC(Model-View-Controller)设计模式...
Struts是一个基于Model-View-Controller (MVC)设计模式的Java Web框架,它使得开发者能够更有效地构建可维护和可扩展的Web应用程序。在深入理解Struts的工作原理之前,我们先来简单回顾一下MVC模式的基本概念: **...
1. **核心库**:struts-1.3.5.jar 包含了Struts框架的核心类,如Action、FormBean、ActionServlet等。这些类负责处理HTTP请求,执行业务逻辑,并将结果传递给视图层。 2. **标签库**:struts-tags.jar 提供了一系列...
在Java Web开发中,动态验证FormBean是一种常见的实践,它允许开发者在运行时根据不同的业务需求灵活地定义和改变表单验证规则。本教程将深入探讨动态验证FormBean的概念、优势以及实现方法。 动态验证FormBean的...
- 配置struts-config.xml文件,这是Struts的核心配置文件,用于定义Action映射、FormBean等。 ##### 2. 登录页面 - 创建一个HTML或JSP页面作为登录页面,例如`login.jsp`。 - 在该页面上放置用户名和密码输入框,...