`

struts学习,formbean属性的整数与日期类型

阅读更多

继续学习strusts, 今天张老师讲了<html:checkbox>标签和<html:form>标签的好处及使用方法。<html:checkbox>标签的使用会遇到一个常见问题,可以用reset方法解决。formbean属性的整数与日期类型转换的一般问题,都可以很容易的解决。

   使用<html:checkbox>标签,设置它的property属性,并把该属性添加到formbean中,这样<html:checkbox>标签的checked属性就可以设置property属性值的boolean类型,使用非常方便。不过,不对<html:checkbox>标签进行选择时,checked属性就不会设置为false,这就带来了一个问题,假设formbean的参数保存在session中,session中原来保存的对应与<html:checkbox>标签的属性值为TRUE,当不对<html:checkbox>标签进行选择时,session中保存的相应参数就不会改变。不过可以在Formbean中用reset方法解决,在reset方法中添加代码,对formbean中保存的参数值进行清空。这样就防止了上面问题的发生。

  用户在登录一个页面时,经常会遇到,一个<html:checkbox>标签,可以选择两周内自动登录该网站。这是实现的呢。原理很简单,有时间一定要动手做一下,进行验证。用户选择此选项后,服务器会把用户名和密码进行md5编码后发送给浏览器保存在Cookie中。当该用户下次登录时,服务器端有一个过滤器,过滤器先检查Cookie,用Cookie中的用户名和密码解码后去和数据库中是数据进行比较,比较成功以后就可以让用户不用输入用户名和密码,访问网站是就登录上了。这样就对此功能进行了实现。

<html:form>标签的三个作用:
1.生成html文档的<form>标签;
2.检查Session中是否存在Token,是则生成隐藏字段,保存sessionid,与服务器端保存的Sessionid做比较,以防止表单重复提交;
3.获取action属性中路径所对应的scope域中的formbean,存在则获取,不存在则创建新的,再把这个formbean以一个特殊关键字保存在request中,以便其中的<html:xxx>标签获取值时使用。

formbean属性的整数与日期类型
1 在formbean中增加int类型的age属性和在jsp页面中增加对应的<html:text>标签,由jsp页面的age字段的显示为0,因为,int型数据默认初始值为0,将age属性改为Integer类型,就可以解决这个问题。可以将ActionServlet的ConvertNull属性设置为TRUE,就会对formbean的参数向java包装类做合适的转化。
2在formbean中增加java.util.Date类型的date属性和在jsp页面中增加对应的<html:text>标签。在JSP显示的日期会让人很难看懂,这是因为没有完成Date类型转换,可以编写Date类型转换器来解决。编写ActionServlet的子类ItcastActionServlet,在init方法中注册Date类型转换器,用jstl的<fmt:formateDate>标签回显日期。

分享到:
评论

相关推荐

    Struts中FormBean的日期类型字段赋值自动转化

    本篇文章将深入探讨在Struts中FormBean的日期类型字段如何进行赋值以及自动转化。 一、FormBean的概念与作用 FormBean是Struts中的一种特殊Java类,用于封装HTTP请求中的参数。它们通常继承自`org.apache.struts....

    Struts1.2动态FormBean加验证功能的一个例子

    要实现动态FormBean,你需要在struts-config.xml配置文件中定义一个ActionFormBean,指定它的属性和验证规则。例如: ```xml &lt;form-bean name="dynamicForm" type="org.apache.struts.action.DynaActionForm"&gt; ...

    Eclipse开发Struts1.2

    - `type`属性用于指定表单属性的Java类型,例如:整数类型(`java.lang.Byte`等),浮点类型(`java.lang.Float`等),字符类型(`java.lang.Character`),布尔类型(`java.lang.Boolean`),日期类型(`java.lang...

    struts2 (对象.属性)注入

    开发者需要为每一个表单创建一个对应的FormBean类,并且在该类中定义与表单字段相对应的属性及对应的getter和setter方法。这种方式虽然能够实现表单数据的封装,但在大型项目中管理多个FormBean类变得非常困难。 ##...

    struts 学习,吐血共享

    在"chap27"这个文件夹中,可能包含的是关于Struts框架第27章的内容,这可能涉及到高级主题,如国际化、异常处理、Tiles框架集成或是Struts与Spring、Hibernate等其他框架的整合。国际化允许网站根据用户的选择显示...

    struts1&struts2

    - **Struts2** 解耦了Action与Servlet容器,提供了更简单的测试支持,Action可以通过模拟对象独立测试,而不需要实际的HttpServletRequest和HttpServletResponse。 6. **测试能力** - **Struts1.x** 的测试通常...

    Struts与struts2比较学习

    ### Struts与Struts2比较学习 #### 一、引言 随着Web开发技术的不断发展,框架的选择成为了项目成功与否的关键之一。Struts 和 Struts2 是Java Web领域内两个非常重要的MVC(Model-View-Controller)框架。本文...

    struts傻瓜式学习

    5. **国际化与本地化**:Struts支持多语言,你可以学习如何配置资源文件来实现页面的国际化。 6. **Tiles**:Struts Tiles是一个视图组织工具,帮助构建复杂的页面布局,可以通过定义模板和组件来重用和组合视图。 ...

    json java读取 formbean操作

    - **嵌套的FormBean**:如果JSON包含嵌套的对象,对应的FormBean也需要有相应的嵌套属性。 - **List或Array**:如果JSON数组对应Java的集合类型,如List,我们需要使用泛型。 在实际开发中,通常会结合使用这些库,...

    struts1和struts2中文教程

    Struts是Apache软件基金会下的一个开源项目,主要提供MVC(Model-View-...阅读Struts1.pdf文档,将帮助你掌握Struts1的基础知识,而struts2中文教程.chm将引导你进入Struts2的世界,深入学习其高级特性和最佳实践。

    Struts1_Struts2

    - **富客户端支持**:Struts2可以很好地处理AJAX请求,提供了JSON结果类型,方便与JavaScript库集成。 - **插件体系**:Struts2有一个强大的插件系统,可以轻松地添加新的功能,如i18n、Freemarker模板引擎等。 在...

    Struts快速学习指南

    2. **ActionForm**:用于封装用户从视图层提交的数据,与模型层交互,通常继承自Struts提供的FormBean类。 3. **Action**:实现了业务逻辑,接收并处理ActionForm中的数据,执行相应的操作,并返回一个表示结果的...

    struts学习一天篇

    ### Struts 学习一天篇知识点详解 #### 一、Struts 概述与 MVC 架构 **Struts** 是一款开源的 Java Web 应用框架,属于 Model-View-Controller (MVC) 设计模式的一种实现。它极大地简化了 Java Web 开发流程,并且...

Global site tag (gtag.js) - Google Analytics