Spring MVC и JSP — отображение логического в модель

У меня есть класс, содержащий логический атрибут

class A {
    Boolean marked;

    [here getter and setter]
}

На моей странице jsp я подключаю флажок к атрибуту модели:

<form:form method="POST" action="updateA" modelAttribute="myAInstance">
    <form:checkbox path="marked"/>Valid<br>
    <input type="submit" value="Save"/>                             
</form:form>    

...

<span>From the DB: ${myAInstanceFromDB} </span>  // this displayes true

При отправке Controllerполучает правильное значение ( myAInstance) и я сохраняю его DBв. Но если я перезагружаю страницу (myAInstanceFromDB)checkbox, Я ранее выбрал и сохранил не проверяется. Я думаю, это потому, что путь флажка указывает на modellattributeто, чтобы быть публикациейserver, а не на databaseобъект, который я прошел на страницу. Как установить флажок при загрузке страницы?

1 ответ

  1. Вы можете использовать следующее

    <input type="checkbox" name="myVal" id="myVal" value="checkVal" <%= ("true".equals(myAInstanceFromDB) ? "checked" : "") %>>
    

    Другой путь:

    <input type="checkbox" name="myVal" id="myVal" value="checkVal" ${myAInstanceFromDB == 'Head' ? 'checked' : ''}>