【发布时间】:2014-10-15 06:30:25
【问题描述】:
我有两个实体:StoryType 和 Stories。 StoryType 可能有很多故事。
@Entity
@Table(name = "stories")
public class Story {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "description")
private String description;
@Column(name = "crdate")
@Temporal(TemporalType.TIMESTAMP)
private Date crDate;
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name = "story_type_id")
private StoryType storyType;
}
@Entity
@Table(name="story_types")
public class StoryType {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
@OneToMany(fetch = FetchType.EAGER, mappedBy="storyType", cascade = CascadeType.ALL)
private List<Story> stories;
}
我在 jsp 页面上有添加故事的表单,我应该选择故事的类型。但是当我看到提交了哪些值时,只有名称和描述,storyType - null。我怎样才能从 select 中发送对象,甚至只输入 id?
<form role="form" action="/admin/add-story" method="post" commandName="story">
<div class="form-group">
<label for="name">Name</label>
<input type="text" name="name" class="form-control" id="name" autofocus="true" placeholder="Enter name" value="${story.name}">
</div>
<div class="form-group">
<label for="name">Type</label>
<select class="form-control">
<c:forEach items="${types}" var="type">
<option name="storyType" value="${type}">${type.name}</option>
</c:forEach>
</select>
</div>
<div class="form-group">
<label for="description">Desscription</label>
<input type="text" name="description" class="form-control" id="description" autofocus="true" value="${story.description}">
</div>
<input type="submit" class="btn btn-primary" value="Save"/>
</form>
【问题讨论】:
标签: jsp spring-mvc