曾經(jīng)做項目沒有考慮那么多,對于級聯(lián)表操作都是正常的一步一步操作,沒有考慮過失敗情況,最近項目遇見了失敗的情況,導致碰到了相應的情況,特此mark一下,免得后期繼續(xù)踩坑。

需求如下:新建頁面,頁面中包含1.新建企業(yè),2.新建聯(lián)系人,3.新建機會。任何一步的邏輯或者DML操作失敗都會導致整體的回滾。只有當三步都正常插入成功了以后才會跳轉(zhuǎn)到新生成的機會的標準頁面。

1.NewOpportunityController:這里做了一個邏輯判斷,當聯(lián)系人為空情況下,不允許新建聯(lián)系人。當然,現(xiàn)實場景不會在這里判斷,但是現(xiàn)實場景會有很多的復雜的業(yè)務邏輯,這里只是簡單的處理。

電腦培訓,計算機培訓,平面設計培訓,網(wǎng)頁設計培訓,美工培訓,Web培訓,Web前端開發(fā)培訓

 1 public class newOpportunityController { 
 2     Account account; 
 3     Contact contact; 
 4     Opportunity opportunity; 
 5     OpportunityContactRole role; 6      7     public Account getAccount() { 
 8         if(account == null) 
 9             account = new Account(); 
10         return account; 
11     } 
12     public Contact getContact() { 
13         if(contact == null) 
14             contact = new Contact(); 
15         return contact; 
16     } 
17     public Opportunity getOpportunity() { 
18         if(opportunity == null) 
19           &
        
		

網(wǎng)友評論