第四講:tapestry增刪改查---修改數據

思路:在UserList頁面傳遞user的id到修改也UesrUpdate頁面,再查詢出全部對應的數據。html

 

修改UserList.tml頁面,代碼以下:java

<html t:type="layout" title="tapestryStart Index"  t:sidebarTitle="Framework Version"
 xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd" xmlns:p="tapestry:parameter">
 <style>
 .table{border-collapse: collapse; }
 .table td,table th{border:1px solid #999; padding:5px;"}
 </style>
 <t:pagelink page="crud/UserCreate">添加用戶</t:pagelink><br/><br/>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table">
  <tr>
    <th scope="col">id</th>
    <th scope="col">用戶名</th>
    <th scope="col">年齡</th>
    <th scope="col">時間</th>
    <th scope="col">操做</th>
  </tr>
  <tr t:type="loop" t:source="users" t:value="user">
    <td>${user.id}</td>
    <td>${user.name}</td>
    <td>${user.age}</td>
    <td>${user.time}</td>
    <td><t:pagelink page="crud/UserUpdate" t:context="${user.id}">修改</t:pagelink></td>
  </tr>
</table>
</html>

在com.tapestry.app.pages.crud包裏添加UserUpdate.java,在webapp/crud下增長UserUpdate.tml代碼以下:web

UserUpdate.javasql

/**
* 項目名稱:TapestryStart
* 開發模式:Maven+Tapestry5.x+Tapestry-hibernate+Mysql
* 版本:1.0
* 編寫:飛風
* 時間:2012-02-29
*/
package com.tapestry.app.pages.crud;
 
import org.apache.tapestry5.annotations.PageActivationContext;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.ioc.annotations.Inject;
 
import com.tapestry.app.entities.User;
import com.tapestry.app.services.StartDAO;
 
public class UserUpdate {
 
//接收頁面傳來的id值
@PageActivationContext
private Long id;
 
//設置user可讀寫
@Property
private User user;
 
//導入服務
@Inject
private StartDAO dao;
 
//頁面加載時運行
void onPrepare(){
//user爲空數據時根據頁面傳遞過來的id查詢數據
if(user == null){
user = dao.findByID(User.class, id);
}
}
//提交表單保存user數據
Object onSuccess(){
dao.update(user);
return UserList.class;
}
}
 

UserUpdate.tmlapache

<html t:type="layout" title="tapestryStart Index"  t:sidebarTitle="Framework Version"
 xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd" xmlns:p="tapestry:parameter">
 <t:form>
  <t:errors/>
  <p>用戶名:<t:textfield t:id="name" value="user.name" t:validate="required"/></p>
  <p>年齡:<t:textfield t:id="age" value="user.age" t:validate="required"/></p>
  <p><input type="submit" value="保存"/><t:pagelink page="crud/UserList">返回查看頁面</t:pagelink></p>
 </t:form>
 </html>

查看http://localhost/crud/userlist修改數據也作好了。app

相關文章
相關標籤/搜索