`
kongweile
  • 浏览: 517391 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

struts2自定义类型类型转换

阅读更多

struts2中的自定义类型转换有分两种

(0).编写类型转换文件
该文件应该继承SrtutsTypeConverter,当继承后,自动会有两个重写的方法,一个是convertFromString(从客户端到服务器),一个是convertToString(从服务器到客户端),我们要做的就是在这两个方法中编写你想要转换的类相应的代码.

(1).局部转换
局部转换就是在你需要类型转换的action的同目录下建立格式如:xxx-conversion.properties的文件
xxx代表你的action的名字,在properties中加入:
yyy=zzz
yyy代表action中你需要转换的成员变量,(注意yyy不是类型),zzz代表转换yyy所用的java(要写完整的相对路径如:com.test.converter.PointConverter)
局部转换就是针对某一个action;如果action中有多个同类型的成员变量,则需要写多行.如有

Point point,point1,point2;

则需要在xxx-conversion.properties中加入
point=com.test.converter.PointConverter
point1=com.test.converter.PointConverter
point2=com.test.converter.PointConverter

显然这样是很麻烦的.这时候我们就要用到全局转换了;
(2).全局转换
全局转换是针对某一个类的.我们需要在src目录下建立xwork-conversion.properties.
加入
yyy=zzz
yyy代表你的类型的相对路径,如com.test.bean.Point
zzz代表转换yyy所用的java,这里跟局部转换是一样的.如(com.test.converter.PointConverter)

finished!

Ps:struts2中还有一个很方便的功能.在下面全部不用用到任何转换.
如果有一个bean
public class Point {
 private int x;
 private int y;
 
 public int getX() {
  return x;
 }
 public void setX(int x) {
  this.x = x;
 }
 public int getY() {
  return y;
 }
 public void setY(int y) {
  this.y = y;
 }
 @Override
 public String toString() {
  // TODO Auto-generated method stub
  return ""+x+"and"+y;
 }
}

在你的jsp中可以这样写:
  <s:form action="haha">
    <s:textfield name="point.x" label="Point.x"></s:textfield>
    <s:textfield name="point.y" label="Point.y"></s:textfield>
    <s:submit value="submit"></s:submit>
  </s:form>

注意两个textfield中的name.
然后在haha.java的action中有一个类型为Point的成员变量point.
在输出的页面中,我们可以写
    <s:property value="point"/>

然后point会调用它的类中的toString方法.
所以我们就需要在Point类中重写toString方法.如上面所见;
或者,我们也可以这样写:
    <s:property value="point.x"/>
    <s:text name="and"></s:text>
    <s:property value="point.y"/>
得到的结果是一样的.

分享到:
评论

相关推荐

    Struts2自定义类型转换

    ### Struts2自定义类型转换:深入解析与实践 #### 引言 在Web开发中,数据类型转换是一项常见的需求,特别是在用户输入的数据与后端处理的数据类型不一致时。Struts2框架提供了强大的类型转换机制,允许开发者...

    struts2自定义类型转换器

    然而,对于如Date这样的复杂类型,需要自定义转换器来处理。 创建自定义类型转换器的步骤如下: 1. **定义转换器类**:继承`org.apache.struts2.util.FieldConverter`或`...

    Struts自定义类型转换器

    ### Struts自定义类型转换器 #### 一、概述 在Web开发中,表单提交的数据通常是字符串形式的,而在业务逻辑处理时往往需要将这些数据转换为其他类型的对象(如日期、数字等)。Struts框架为了更好地处理这种类型...

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

    Struts2作为一款流行的Java Web框架,其在处理用户输入数据时扮演着重要角色。...在练习中,你可以尝试创建不同的自定义转换器,并理解它们在处理不同类型数据时的作用,从而加深对Struts2数据处理机制的理解。

    struts2自定义类型转换、拦截器实例练习

    本实例练习旨在帮助你深入理解Struts2的工作原理,特别是自定义类型转换和拦截器的使用。 首先,让我们详细探讨Struts2的MVC架构。在MVC模式中,Model代表业务逻辑,View负责展示数据,而Controller则是两者之间的...

    struts 2.0 自定义类型转换器 注册类型转换器 入门实例 简单实例

    自定义类型转换器是Struts 2的核心特性之一,允许开发者根据业务需求定制数据转换规则。以下将详细介绍如何创建、注册以及使用自定义类型转换器。 1. **创建自定义类型转换器** - 创建一个类,实现`org.apache....

    传智播客struts2.1源代码_自定义类型转换器

    接着,当Struts2接收到相关参数时,会自动调用自定义转换器进行转换。 6. **调试与测试** 调试自定义类型转换器通常涉及到设置断点,观察转换过程中的变量状态,以及通过单元测试确保转换逻辑的正确性。在IDE如...

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

    理解并掌握如何利用内置转换器、自定义转换器以及处理转换错误,对于构建高效、稳定的Struts2应用至关重要。通过深入学习Struts2的源码和使用相关工具,我们可以更深入地了解这些机制,并优化我们的应用程序。

    struts2如何配置与自定义类型转换

    Struts2是一个强大的MVC框架,它在处理用户请求时涉及到数据类型的转换,这在处理复杂的表单数据或者自定义对象时尤其重要。本篇文章将详细介绍如何在Struts2中进行配置与自定义类型转换。 首先,Struts2的配置主要...

    struts2数据类型转换器

    2. 在struts.xml配置文件中定义`&lt;global-converters&gt;`或`&lt;package&gt;`级别的`&lt;converters&gt;`元素,添加自定义转换器。 此外,Struts2还提供了`ConversionError`接口,用于处理转换失败的情况。当转换失败时,我们可以...

    struts2 类型转换器

    标签中的“源码”可能意味着博客会深入到Struts2框架的源代码中,解释类型转换器的工作原理和如何根据源代码实现自定义转换器。而“工具”可能指的是使用Struts2提供的工具类或API来辅助类型转换。 在`Struts2_3500...

    Struts2的自动类型转换及自定义类型转换[文].pdf

    Struts2是一个流行的Java web开发...总之,Struts2的类型转换机制为开发者提供了强大的灵活性和便利性,不仅可以处理基本类型,还能方便地扩展以支持自定义类型和复杂数据结构的转换,从而简化了Web应用的开发工作。

    struts2自定义编写转换类

    通常,Struts2框架内置了一些基本类型的转换器,但有时我们需要对特定的数据类型进行自定义转换,这时就需要编写自定义的转换类。下面将详细讲解如何在Struts2中实现自定义转换类。 首先,了解Struts2的转换机制。...

    struts2学习笔记三(第3讲.Struts2的类型转换)

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括MVC设计模式的实现、类型转换、国际化、拦截器等。在本篇“Struts2学习笔记三”中,我们将聚焦于Struts2的类型转换这一核心特性。类型转换在处理...

    STRUTS2类型转换

    总的来说,Struts2的类型转换机制为开发者提供了灵活的输入数据处理方式,既可以利用内置转换,也可以自定义转换器以适应复杂的业务场景。正确理解和使用这一机制,可以提高代码的可维护性和用户体验,确保数据的...

    自定义类型转换器

    自定义类型转换器是当Struts2内置的转换器无法满足特定业务需求时,开发者自行创建的一种扩展方式。然而,这里提到的"自定义类型转换器"实际上与权限控制有关,而非类型转换。描述中的内容主要涉及的是如何实现用户...

    Struts的自定义转换器

    自定义转换器使得Struts框架更加灵活,能够处理复杂或特殊的数据类型,提高了代码的可维护性和用户体验。通过编写自定义转换器,开发者可以确保数据转换过程符合业务规则,减少因类型不匹配导致的错误。在实际开发中...

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

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

Global site tag (gtag.js) - Google Analytics