こんな感じでいけそうです。
listboxのモデルにEmpWindowのプロパティemps、selectedItemにselectedをセットします。
...
<window id="win" title="Emplyee list" use="zkseasar.view.EmpWindow">
<listbox id="lb" model="@{win.emps}" selectedItem="@{win.selected}">
EmpWindow.java
public class EmpWindow extends Window {
private JdbcManager jdbcManager;
private List<Emp> emps;
private Emp selected;
public EmpWindow(){
DelegatingVariableResolver variableResolver = new DelegatingVariableResolver();
jdbcManager = (JdbcManager)variableResolver.resolveVariable("jdbcManager");
emps = jdbcManager.from(Emp.class)
.where("sal between ? and ?", 2000, 3000)
.orderBy("sal").getResultList();
}
public List<Emp> getEmps(){
return emps;
}
public void setSelected(Emp emp){
selected = emp;
}
public Emp getSelected(){
return selected;
}
/*
* listboxにempを追加する
* http://sourceforge.net/forum/message.php?msg_id=4752395
*/
public void addEmp(Emp emp){
Listbox lb = ((Listbox) getFellow("lb"));
((ListModelList) lb.getModel()).add(emp);
}
}
ZKをSeasarと組み合わせるとデータベースアクセスはjdbcManagerの使いかただけ知っていればいいみたいですね。
0 件のコメント:
コメントを投稿