【发布时间】:2015-01-07 01:08:00
【问题描述】:
我有以下表格:
public class ChildcareWorkerAdvertisementForm extends AbstractForm<ChildcareWorkerAdvertisement> {
@Valid
@Override
//Rename the property from "model" to "advertisement"?
public ChildcareWorkerAdvertisement getModel() {
return super.getModel();
}
}
我想在绑定发生时将名为model 的属性重命名为其他名称,也许是advertisement,以便我可以在视图中将其称为advertisement(百里香等...)。
这可以使用 Spring MVC 吗?
编辑 1:这是我的应用程序'AbstractForm 类:
package com.bignibou.web.controller;
public class AbstractForm<T> {
private T model;
public T getModel() {
return this.model;
}
public final void setModel(T model) {
this.model = model;
}
...
您可以看到它使用了在 java 部分非常简洁的泛型。但是,我想在视图中自定义 model 属性的名称,因此我提出了问题。
【问题讨论】:
-
你能发布更多细节吗?也许github上的示例代码? AbstractForm 是什么类?是这个吗?spring-rich-c.sourceforge.net/1.1.0/apidocs/org/springframework/…?
-
@Jigish:AbstractForm 是我在编辑中包含的自定义类:参见上面的编辑。
-
@NeilMcGuigan:我确实看到了这篇文章,但我希望 Spring 4.1 提供了一种更简单的方法来实现基于控制器方法的属性重命名......
-
您是否尝试过“添加新”
advertisement属性到模型例如:public ChildcareWorkerAdvertisement getAdvertismenet() { return super.getModel(); } 和 setter 类似。
标签: spring-mvc spring-mvc-initbinders