【发布时间】:2016-09-14 12:23:01
【问题描述】:
我想在弹簧选择元素内显示明细表的父表行。这是父表的bean定义:
@Entity
@Table(name = "HR.DEPARTMENTS")
public class Dept {
@Id
@Column(name = "DEPARTMENT_ID")
private int id;
@Column(name = "DEPARTMENT_NAME")
private String dname;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "dept")
@Transient
private Set<User> users = new HashSet<User>(0);
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getDname() {
return dname;
}
public void setDname(String dname) {
this.dname = dname;
}
public Set<User> getUsers() {
return users;
}
public void setUsers(Set<User> users) {
this.users = users;
}
@Override
public String toString() {
return dname;
}
}
spring select元素的来源就是这个List:
@Override
@Transactional
public List<Dept> list() {
@SuppressWarnings("unchecked")
List<Dept> listDept = (List<Dept>) sessionFactory.getCurrentSession()
.createCriteria(Dept.class)
.addOrder(Order.asc("dname"))
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
return listDept;
}
jsp 是:
<form:select path="dept">
<form:option value="" label="-- choose a department --"/>
<form:options items="${depts}" />
</form:select>
在运行时进入更新模式时,选择选项的值与其文本相同!
那么如何让options的值成为bean的id属性值呢?
【问题讨论】:
标签: spring jsp spring-mvc