`

struts中的类型转换

阅读更多
   
类型转换:
问题:表单提交过去的都是String类型,如何转换为formbean中的类型?
struts针对大多数类型都支持,如果是自定义的类型该如何处理
方法1:写一个servlet在init方法中注册,容器一加载就注册
方法2:写一个自己的action继承ActionServlet , 覆盖actionServlet的initOther()方法
      第一步,调用父类的initOther()方法
      第二步:添加自己的注册 如:
    
 protected void initOther() throws ServletException {
		super.initOther();
		ConvertUtils.register(new UtilDateConverter(), java.util.Date.class);
	}
    注意:UtilDateConverter是自己写的一个类型转换类,必须实现struts中的convert接口
    第三步:容器启动的时候加载的不再是struts中的actionServlet,而是自己定义的actionServlet
         自定义的actionservlet继承了structs中的actionServlet中的所有方法
    注意:这种方法有些书上不推介使用
方法三:struts 提供了扩展机制
       第一步:
  
 public class UtilDateConverterPlugIn implements PlugIn {
	     public void destroy() {
	                    }
	public void init(ActionServlet servlet, ModuleConfig config)
			throws ServletException {
		 ConvertUtils.register(new UtilDateConverter(), java.util.Date.class);
        }    
    struts提供了PlugIn接口,实现这个接口,
   
      第二步:配置struts.config.xml文件
       
 <plug-in className="com.cs.util.UtilDateConverterPlugIn"></plug-in>
      作用:在actionServlet启动后就加载plugIn指定的类
    ( 推介使用struts的这个扩展机制)
   
public class UtilDateConverter implements Converter {	 
	
	
	public Object convert(Class type, Object value) {
	 
		if (value == null) {
			return null ;
		}
		
		if (value instanceof java.util.Date) {
			return value ;
		}
		
		if (value instanceof java.lang.String) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss") ;
	try {
		return sdf.parse((String)value) ;
	} catch (ParseException e) {
		e.printStackTrace();
			}
		}
		

		
		return null;
	}

}
分享到:
评论

相关推荐

    struts2 类型转换器

    在Struts2中,类型转换器(Type Converter)是框架的一个关键特性,用于处理Action类中属性的自动类型转换。这个特性使得开发者无需手动进行数据类型之间的转换,从而提高了开发效率和代码的可读性。 标题中的...

    STRUTS2类型转换

    类型转换在Struts2中主要通过实现ognl.TypeConverter接口来完成。当需要自定义转换器时,你需要创建一个类并实现这个接口,提供convertFromString和convertToString两个方法,分别处理字符串到目标类型的转换和目标...

    Struts自定义类型转换器

    本文主要介绍Struts1和Struts2中的自定义类型转换器,并探讨其实现机制。 #### 二、Struts1中的自定义类型转换器 在Struts1中,自定义类型转换器主要是通过继承`com.sun.org.apache.commons.beanutils.Converter`...

    struts2类型转换和国际化

    在Struts2中,类型转换和国际化是两个重要的特性,用于处理数据类型之间的转换以及多语言环境下的内容显示。 **类型转换**是Struts2处理请求参数与Action类属性之间数据类型不匹配的过程。当用户通过表单提交请求时...

    Struts2类型转换(一)----常规类型,自定义类型,错误处理

    本篇文章将深入探讨Struts2中的类型转换机制,包括常规类型转换、自定义类型转换以及错误处理。 首先,我们来看**常规类型转换**。Struts2框架内建了一套完整的类型转换器,能够自动处理常见数据类型,如String、...

    Struts处理类型转换错误,如时间转换

    本篇文章将深入探讨如何在Struts2中处理这些类型的错误,特别是关于时间转换的错误。 1. **类型转换错误概述** 类型转换错误通常发生在Action类中的属性与用户提交的数据类型不匹配时。例如,如果你有一个`java....

    struts2简单实例(类型转换)

    在这个"struts2简单实例(类型转换)"中,我们将探讨Struts2如何处理不同类型的数据转换,以及如何创建一个简单的演示应用。 首先,让我们理解什么是类型转换。在Web应用程序中,用户通过表单提交的数据通常是字符...

    struts2类型转换

    本篇文章将深入探讨Struts2中的类型转换机制。 1. **类型转换的概念** 类型转换是指将一个数据类型的值转换为另一个数据类型的过程。在网络请求中,用户输入的数据通常是字符串类型,而服务器端的Action类属性可能...

    struts2类型转换 拦截器 校验的例子

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括类型转换、拦截器和校验机制。本文将深入探讨这些关键知识点,并通过实际例子来帮助你理解它们的工作原理和应用。 首先,我们来看看**类型转换...

    struts2注册转换器

    在Struts2中,类型转换是处理用户输入数据的关键环节,它允许开发者将前端表单提交的数据转换为服务器端可处理的类型。在本案例中,我们将深入探讨“struts2注册转换器”,特别是如何将特定的日期格式如"20110202...

    Struts批量类型转换

    类型转换器(Converter)在Struts2中扮演着关键角色。它们负责将请求参数转换为特定类型的Java对象,以便于在业务逻辑层处理。例如,用户可能通过表单提交一个字符串,而Action类中对应的属性可能是整数类型。默认...

    struts2自定义数据类型转换练习

    本练习主要关注如何在Struts2中实现自定义的数据类型转换,以满足特定业务需求。 首先,我们需要了解Struts2的数据转换机制。当用户提交表单数据时,Struts2会通过ActionContext获取到这些数据,并尝试将其转换为...

    struts2数据类型转换器

    这篇博客“Struts2数据类型转换器”可能深入探讨了这个主题,虽然具体的细节无法在此给出,但我们可以根据Struts2中数据类型转换的工作原理来展开讨论。 在Java Web开发中,用户通过表单提交的数据通常是字符串形式...

    Struts2类型转换与输入校验 .zip

     熟悉和掌握Struts2自定义类型转换。  熟悉和掌握Struts2内建校验的操作方法  实验环境与设备:  已经接入局域网的网络实验室,机器上装有IE浏览器等;  strtus2.5.8  实验内容: (1) 编写一个...

    struts2自定义类型转换器

    在实际开发中,有时我们需要对默认的类型转换器进行扩展,以满足特定的数据转换需求,例如将前端传入的字符串转换为Date类型。这就是"struts2自定义类型转换器"的主题。 首先,理解Struts2的类型转换机制。当Struts...

    struts2学习笔记3数据类型转换

    struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换

    struts日期转换器

    要使用Struts的日期转换器,首先你需要在Action类中定义一个日期类型的属性,并为其添加相应的注解`@DateTimeFormat`,或者在Struts配置文件中定义一个转换器。`@DateTimeFormat`注解允许你指定日期的输入格式,这样...

    struts2类型转换深入总结

    Struts2提供了一些工具类和方法来辅助类型转换,比如`FieldError`用于记录转换失败的字段和错误信息,`ValueStack`提供了`convertValue`方法进行转换,以及`ActionContext`中的`getValueStack`方法获取当前栈顶的`...

Global site tag (gtag.js) - Google Analytics