下拉列表值未保存在数据库中

时间:2019-01-10 05:14:28

标签: java spring-mvc jsp

我的下拉列表显示良好,但没有保存在数据库中。我正在使用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 bean类:

@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 :(得分:0)

我只更改了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>