使用泛型类作为ModelAtribute的参数

时间:2014-06-11 10:13:51

标签: java spring generics

我有一个通用控制器,其上的方法具有与之类似的签名:

public String cadastra(@ModelAttribute("object") E object, BindingResult result)

派生控制器中的此object,需要与为其创建控制器的实体类具有相同的名称(例如:名为UsuarioController的控制器对实体类Usuario执行操作)。

我的想法是创建一个名为object的泛型类,我的所有实体都是从这个类派生的。有没有办法让这项工作?对于这些控制器中的每一个,我都有以下html表单,这些表单期望具有此签名的方法:

<%@ include file="../include/header.jsp" %>

<form:form class="form" role="form" action="${action}" method="post">

    <table>
        <c:forEach var="item" items="${elements}">
        <tr>
            <td><form:label path="${item}">${item}</form:label></td>
            <td><form:input type="" path="${item}" /></td> 
        </tr>
        </c:forEach>
        <tr>
            <td colspan="2">
                <button type="submit" class="btn btn-lg btn-primary">Cadastrar</button>
            </td>
        </tr>
    </table>

</form:form>

<%@ include file="../include/result.jsp" %>

<%@ include file="../include/footer.jsp" %>

0 个答案:

没有答案