Вполне возможно, если я вас правильно понял ...
Модель
public class Foo() {
private String result;
public String getResult() { return result; }
public void setResult(String result) { this.result = result; }
}
Контроллер
Это использует аннотации.Если вы не понимаете, что это делает, вам, вероятно, следует ознакомиться с документацией Spring.@ModelAttribute("fooResults")
будет доступно для вашего просмотра, чтобы использовать его для выпадающих элементов.@ModelAttribute("command") Foo foo
автоматически "засосет" все, что вы выбрали в раскрывающемся списке.
@Controller
public class FooController() {
@ModelAttribute("fooResults")
public List<String> fooResults() {
// return a list of string
}
@RequestMapping(method = RequestMethod.GET)
public String get(@ModelAttribute("command") Foo foo) {
return "fooView";
}
@RequestMapping(method = RequestMethod.POST)
public String post(@ModelAttribute("command") Foo foo) {
// do something with foo
}
Просмотр
Используя магию библиотеки тегов формы, выможет привязать выпадающий список (form:select
) к свойству результата модели и заполнить элементы fooResults
.
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<form:form commandName="command">
<form:select path="result">
<form:options items="${fooResults}" itemLabel="result" itemValue="result"/>
</form:select>
<input type="submit" value="submit"/>
</form>
. Все это предполагает, что вы как бы знаете, что делаете:) Если нет, проверьте http://static.springsource.org/docs/Spring-MVC-step-by-step/