Значение выпадающего списка не сохраняется в базе данных - PullRequest
0 голосов
/ 10 января 2019

Мой выпадающий список хорошо отображается, но не сохраняется в базе данных. Я использую Spring MVC, чтобы получить список. Реализация DAO:

@Override
    public List<Item_entity> getItemList() {
        Session session = null;
        List<Item_entity> item = null;
        try {
            session = sessionFactory.openSession();
            Criteria criteria = session.createCriteria(Item_entity.class);
            item = criteria.list();
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (session != null && session.isOpen())
                session.flush();
            if (session != null && session.isOpen())
                session.close();
        }
        return item;
    }

В контроллере я использую modelandview.addObject для использования jsp.

mav.addObject("item", new Item_entity());
mav.addObject("itemList", this.master_service.getItemList());

И я использую это в JSP, как это:

<form:select type='list' id="item_code2" path="item.item_code" class="dropdown">
        <option value='' class="select-items">Select Item Code</option>
        <c:if test="${!empty itemList}">
        <c:forEach items="${itemList}" var="list">
        <form:option value="${list.item_code}" class="select-items">${list.item_code} : ${list.item_type}</form:option>
    </c:forEach>
</c:if>

Список отображается правильно, но значение не сохраняется в базе данных. Пожалуйста, посмотрите мою проблему. И дай мне решение. Заранее спасибо.

Класс бина Item_entity:

@Entity
@Table(name = "item")
public class Item_entity {

    @Id
    @Column(name = "item_code")
    private Integer item_code;

    @Column(name = "item_type")
    private String item_type;

    public Integer getItem_code() {
        return item_code;
    }

    public void setItem_code(Integer item_code) {
        this.item_code = item_code;
    }

    public String getItem_type() {
        return item_type;
    }

    public void setItem_type(String item_type) {
        this.item_type = item_type;
    }

    @Override
    public String toString() {
        return "Item_entity [item_code=" + item_code + ", item_type=" + item_type + "]";
    }

1 Ответ

0 голосов
/ 01 февраля 2019

Я решил свою проблему, изменив только код JSP.

**Just give name of field to save value in database.**

<form:select type='list' ***name="item_code2"*** id="item_code2" path="item.item_code" class="dropdown">
        <option value='' class="select-items">Select Item Code</option>
        <c:if test="${!empty itemList}">
        <c:forEach items="${itemList}" var="list">
        <form:option value="${list.item_code}" class="select-items">${list.item_code} : ${list.item_type}</form:option>
    </c:forEach>
</c:if>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...