Форма Struts и объявления переменных - PullRequest
1 голос
/ 28 октября 2009

У меня есть вопрос, и я надеюсь, что кто-нибудь может помочь мне здесь. Ну, я разрабатываю приложение с Struts 1.3.10, и у меня есть форма Struts с объектом, который содержит свойство. Это свойство объявляется как тип примитива int, и проблема возникает, когда приложение показывает пользователю ноль (0) вместо нуля, когда я получаю эти данные из базы данных и оказывается равным NULL. Кто-нибудь из вас испытывал эту проблему? Как вы, ребята, делаете, чтобы избежать такого поведения?

Единственное, что мне пришло в голову, это превратить int в String объект, но это подразумевает некоторые операции приведения и / или другие операции, когда вам нужно вставить / извлечь / обновить данные в / из базы данных .

Помогите ли вы с этим? Заранее спасибо, Carlos

1 Ответ

2 голосов
/ 03 ноября 2009

Итак, вот что вы хотите: если кто-то ввел значение, отобразите значение в текстовом поле, если кто-то еще не ввел значение (значение null), отобразите пробел.

К сожалению, я не могу найти способ сделать это естественным образом, поэтому вам нужно сделать следующее:
1. Используйте Integer в вашей форме для этих свойств, установите эти значения из базы данных так, чтобыони являются нулевыми или фактическими значениями.
2. На вашем jsp вам придется вручную создать тег ввода следующим образом:

<c:set var="propertyValue"><br> <c:if test="${! empty FORM_NAME.PROPERTY_NAME}><br> <c:out value="${FORM_NAME.PROPERTY_NAME}"/><br> </c:if><br> </c:set><br> <input type="text" name="PROPERTY_NAME" value='<c:out value="${propertyValue}/>'/>

Где FORM_NAME - имя вашей формы иPROPERTY_NAME - это имя вашей Integer собственности.Это не элегантно, но должно работать (хотя я не проверял это)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...