-->

如何通过自定义的支柱型转换器转换列表项的场?(How to convert field of the

2019-10-18 10:23发布

我需要实现自定义转换ID在该领域CompanyEmployee类。 我已经实现的自定义转换器从扩展StrutsTypeConverter和它成功用于转换Company.ID领域,但它并不适用于工作Employee.ID

好像主要的问题是在转换属性文件。 我应该如何指定的员工ID字段转换器类转换属性文件?

MyAction-conversion.properties

company.id = com.struts2.convertors.MyCustomConverter
company.??????.id = com.struts2.convertors.MyCustomConverter

MyAction

public class MyAction extends ActionSupport {

    private Company company;

    public Company getCompany () {
        return company;
    }
    public void setCompany (Company company) {
        this.company= company;
    }
    @Override
    public String execute() {
        return SUCCESS;
    }
}

Company

public class Company {

    private ID id;

    private List<Employee> employees;

    // getters and setters
}

Employee

public class Employee{

    private ID id;

    private String name;

    // getters and setters
}

Answer 1:

TypeConversion注释 :

这个注解用于类和应用广角转换规则。

所述TypeConversion注释可以在属性和方法的水平施加。

 @TypeConversion(converter = “com.test.struts2.MyConverter”)
 public void setAmount(String amount) 
 {
    this.amount = amount;
 }

这个注释指定我的转换器之一的位置。 从字面上看,通过使用该注释,注册我类com.test.struts2.MyConverter作为转换器,并且被执行每次被调用setAmount(字符串量)方法时。



Answer 2:

通过添加一个转换器,用于在尝试以下ID类型到xwork-conversion.properties文件

com.struts2.ID = com.struts2.convertors.MyCustomConverter


文章来源: How to convert field of the list item via custom struts type converter?