Как установить идентификатор, который позволяет взаимодействовать между контроллером и представлением в spring- mvc - PullRequest
0 голосов
/ 08 мая 2020

Во-первых, я прошу вас понять мой бедный английский sh.

Я хочу создать форму отправки информации о продукте, в которой вводится название продукта, изображение, модель ... и c в web и разместите его в сети. Вот так введите здесь описание изображения Мне не нужно отображать изображение прямо здесь, просто найдите, чтобы запустить его.

В JavaFX он может делиться переменными, просто объявив имя переменной и установив его для просмотра по идентификатору.

Но когда дело доходит до spring- mvc, я не мог найти, как его установить.

инструменты, такие как button, label..et c было хорошо. Но есть ли способ использовать такие переменные, как string, int, float, byte []?

вот мой jsp пример кода

<form:form modelAttribute="sellerProductInputForm">
<fieldset>...
<form:errors path="*" cssClass="error" element="div" />
  <p>
    <%-- productModel --%>
    <form:label path="productModel">
      <spring:message code="label.tr.sellerproduct.model" />
    </form:label>
    <br>
    <form:select path="productModel" items="${CL_MODEL}"></form:select>
  <p>
    <%--productImageUrl// here is my problem --%>
  <button id="someButtonid" type="may use this or not" path="productImageUrl">
    <p>upload</p>
  <button>

    <%-- productBodyStyle --%>
    <form:label path="productBodyStyle">
      <spring:message code="label.tr.sellerproduct.bodystyle" />
    </form:label>
    <br>
    <form:select path="productBodyStyle" items="${CL_BODY_STYLE}"></form:select>
  </p>
  <p>
    <%-- productYear --%>
    <form:label path="productYear">
      <spring:message code="label.tr.sellerproduct.year" />
    </form:label>
    <br>
    <form:select path="productYear" items="${CL_YEAR}" />
      <spring:message code="label.tr.sellerproduct.month" />
      <form:select path="productMonth" items="${CL_MONTH}" />
  </p>

....

<button id="confirmBtn" name="confirm">
      <spring:message code="label.tr.common.confirm" />
    </button>

То, что я хочу сделать, это когда я нажимаю кнопку «Установить», он запускает PhotoImage от пользователя p c, и когда я нажимаю кнопку подтверждения, он отправляется в Webdav и получает свой путь к ProductForm.

Отправка изображения в webdav прошла нормально, и другие, такие как productBodyStyle, productYear..et c, тоже были в порядке, потому что они получают данные из ввода пользователя.

Но когда дело доходит до photoUrl, у меня первая проблема. Когда я запускаю photoImage, мне нужно сохранить его где-нибудь, например, в переменных типа byte [], но я понятия не имею, как заставить эту переменную взаимодействовать при ее запуске. Есть ли способ заставить его взаимодействовать между контроллером и jsp? например, я объявляю byte [] sampleImage на контроллере и использую его в jsp напрямую по идентификатору, введите …et c.

Во-вторых, когда я подтверждаю загрузку фотографии, как я могу ее получить путь к productForm?

productForm выглядит следующим образом

@Data

publi c class SellerProductInputForm реализует Serializable {

/**
 * serialVersion.
 */
private static final long serialVersionUID = 2L;

@NotEmpty
/* @Pattern(regexp = "^[a-zA-Z]+$") */
private String productModel;..............

@NotEmpty
/* @Pattern(regexp = "^[a-zA-Z]+$") */
private String productColor;

@NotEmpty
/* @Pattern(regexp = "^[a-zA-Z]+$") */
private String productImageUrl;

метод подтверждения, который объявлен на контроллере:

    @TransactionTokenCheck(value = "create", type = TransactionTokenType.BEGIN)
@RequestMapping(value = "create", method = RequestMethod.POST, params = "confirm")
public String createConfirm(@Validated SellerProductInputForm form, BindingResult result) {
    if (result.hasErrors()) {
        return createRedo(form);
    }
    return "seller/createProductConfirm";
}

пожалуйста, помогите мне, большое спасибо, что прочитали это.

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