我现在在练习一个小项目。 遇到点问题。
项目实体: 主人 宠物 商店主人 和 商店都具备拥有买宠物和卖宠物的方法 buy() 和 sell();现在就是主人买 我调用了 商店卖的方法
商店的卖方法中调用了 主人买的方法商店的买方法调用主人的卖
主人的卖调用了商店的买我晕了! 逻辑上是这样的 但是 问题来了 死循环! 应该是有一个主动方和被动方。 我如果我讲主人定位主动方该怎么改一下?
代码如下:
主人的买方法 /**
* 主人的买
*/ @Override
public boolean buy(Pet pet) throws Exception {
IPetStorsBiz storsBiz = new PetStorsBizImpl();
// TODO Auto-generated method stub
pet.setOwnerID(pet.getOwner().getId());
pet.setStoreID(0);
pet.setNewBreed(2);
petDao.update(pet);
pet.getOwner().setMoney(pet.getOwner().getMoney() - 5);
petOwnerDao.update(pet.getOwner());
storsBiz.sell(pet);
return true;
}
主人的卖方法 /**
* 主人的卖
*/
@Override
public boolean sell(Pet pet) throws Exception {
// TODO Auto-generated method stub
IPetStorsBiz storsBiz = new PetStorsBizImpl();
storsBiz.buy(pet);
pet.getOwner().setMoney(pet.getOwner().getMoney() + 5);
//storsBiz.buy(pet);
return true;
}
商店的买方法
/**
* 商店买
*/
@Override
public boolean buy(Pet pet) throws Exception {
IPetOwnerBiz ownerBiz = new PetOwnerBizImpl();
pet.setStoreID(pet.getStore().getId());
pet.setOwnerID(0);
pet.setNewBreed(2);
petDao.update(pet);
pet.getStore().setBalance(pet.getStore().getBalance() + 5);
petStoreDao.update(pet.getStore());
ownerBiz.sell(pet);
return true;
}
商店的卖方法
/**
* 商店卖
*/
@Override
public boolean sell(Pet pet) throws Exception {
// TODO Auto-generated method stub
IPetOwnerBiz ownerBiz = new PetOwnerBizImpl();
ownerBiz.buy(pet);
pet.getStore().setBalance(pet.getStore().getBalance() - 5);
return true;
}
项目实体: 主人 宠物 商店主人 和 商店都具备拥有买宠物和卖宠物的方法 buy() 和 sell();现在就是主人买 我调用了 商店卖的方法
商店的卖方法中调用了 主人买的方法商店的买方法调用主人的卖
主人的卖调用了商店的买我晕了! 逻辑上是这样的 但是 问题来了 死循环! 应该是有一个主动方和被动方。 我如果我讲主人定位主动方该怎么改一下?
代码如下:
主人的买方法 /**
* 主人的买
*/ @Override
public boolean buy(Pet pet) throws Exception {
IPetStorsBiz storsBiz = new PetStorsBizImpl();
// TODO Auto-generated method stub
pet.setOwnerID(pet.getOwner().getId());
pet.setStoreID(0);
pet.setNewBreed(2);
petDao.update(pet);
pet.getOwner().setMoney(pet.getOwner().getMoney() - 5);
petOwnerDao.update(pet.getOwner());
storsBiz.sell(pet);
return true;
}
主人的卖方法 /**
* 主人的卖
*/
@Override
public boolean sell(Pet pet) throws Exception {
// TODO Auto-generated method stub
IPetStorsBiz storsBiz = new PetStorsBizImpl();
storsBiz.buy(pet);
pet.getOwner().setMoney(pet.getOwner().getMoney() + 5);
//storsBiz.buy(pet);
return true;
}
商店的买方法
/**
* 商店买
*/
@Override
public boolean buy(Pet pet) throws Exception {
IPetOwnerBiz ownerBiz = new PetOwnerBizImpl();
pet.setStoreID(pet.getStore().getId());
pet.setOwnerID(0);
pet.setNewBreed(2);
petDao.update(pet);
pet.getStore().setBalance(pet.getStore().getBalance() + 5);
petStoreDao.update(pet.getStore());
ownerBiz.sell(pet);
return true;
}
商店的卖方法
/**
* 商店卖
*/
@Override
public boolean sell(Pet pet) throws Exception {
// TODO Auto-generated method stub
IPetOwnerBiz ownerBiz = new PetOwnerBizImpl();
ownerBiz.buy(pet);
pet.getStore().setBalance(pet.getStore().getBalance() - 5);
return true;
}
我解决了!~ 我的方法是这样的 主人买 主人卖 写好 主人为主动方商店卖 就调用主人买商店买 也调用主人卖
我这样理解可以么? 反正Oracle数据不一直变了!~