?? materielservice.java
字號:
package main.model.service.impl;
import main.data.dao.*;
import java.util.List;
import java.util.Vector;
import main.data.domain.*;
import main.model.service.IMaterielService;
public class MaterielService implements IMaterielService {
MaterielDetailDAO materielDetailDAO;
MaterielItemDAO materielItemDAO;
MaterielItemDetailDAO materielItemDetailDAO;
MaterielDAO materielDAO;
/* (非 Javadoc)
* @see main.model.service.impl.IMaterielService#saveAll(java.util.Vector, main.data.domain.MaterielDetail)
*/
public void saveAll(Vector vector,MaterielDetail materielDetail){
materielDetailDAO.save(materielDetail);
for(int i=0;i<vector.size();i++){
MaterielItem materielItem=(MaterielItem)vector.get(i);
materielItemDAO.save(materielItem);
MaterielItemDetail materielItemDetail=new MaterielItemDetail();
materielItemDetail.setMaterielDetail(materielDetail);
materielItemDetail.setMaterielItem(materielItem);
materielItemDetailDAO.save(materielItemDetail);
}
}
/*
通過對象查詢 查找下層的對象(?。?gt;市-->鎮(zhèn)-->鎮(zhèn).鎮(zhèn)長 鎮(zhèn).管理區(qū)集合LIST)
通過對象組合 組建上層的對象 (鎮(zhèn).鎮(zhèn)長 鎮(zhèn).管理區(qū)集合LIST->鎮(zhèn))
本方法中 通過MaterielItemDetail得到的MaterielItem(這個MaterielItem對象和session沒有關(guān)聯(lián)了是游離狀態(tài)的)
他不能向下查詢 注:游離狀態(tài)的實體對象包含了對應(yīng)數(shù)據(jù)庫記錄的主鍵值
這樣一來我們就可以通過其主鍵值通過查詢將其和數(shù)據(jù)庫關(guān)聯(lián)起來!
當(dāng)我們找到最下層時,也得到Materiel對象時 我們將其轉(zhuǎn)化為自由狀態(tài)(與內(nèi)存有關(guān)但與數(shù)據(jù)庫無關(guān))
通過對象組合得到MaterielItem對象
關(guān)于MaterielItem的討論:
通過MaterielItemDetail得到的MaterielItem 對象引用失效(可以這樣說只聲明對象 沒有給對象符值)
通過對象組合得到MaterielItem對象 對象引用有效(已存在內(nèi)存中)
*/
/*
將MaterielItem對象從游離態(tài)轉(zhuǎn)為自由態(tài)
*/
public MaterielItem getMaterielItem(MaterielItem d_materielItem)
{
MaterielItem f_saterielItem=materielItemDAO.findById(d_materielItem.getId());
Integer fId=f_saterielItem.getMateriel().getId();
Materiel f_materiel=materielDAO.findById(fId);
Integer f_number=f_saterielItem.getNumber();
MaterielItem materielItem=new MaterielItem();
materielItem.setNumber(f_number);
materielItem.setMateriel(f_materiel);
return materielItem;
}
public MaterielDetailDAO getMaterielDetailDAO() {
return materielDetailDAO;
}
public void setMaterielDetailDAO(MaterielDetailDAO materielDetailDAO) {
this.materielDetailDAO = materielDetailDAO;
}
public MaterielItemDAO getMaterielItemDAO() {
return materielItemDAO;
}
public void setMaterielItemDAO(MaterielItemDAO materielItemDAO) {
this.materielItemDAO = materielItemDAO;
}
public MaterielItemDetailDAO getMaterielItemDetailDAO() {
return materielItemDetailDAO;
}
public void setMaterielItemDetailDAO(MaterielItemDetailDAO materielItemDetailDAO) {
this.materielItemDetailDAO = materielItemDetailDAO;
}
public MaterielDAO getMaterielDAO() {
return materielDAO;
}
public void setMaterielDAO(MaterielDAO materielDAO) {
this.materielDAO = materielDAO;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -