当前位置:编程学习 > JAVA >>

struts2+spring+hibernate中保存对象出现空指针异常

mport java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.hibernate.SessionFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import tarena.dangdang.actions.cart.CartItem;
import tarena.dangdang.commons.Constant;

import tarena.dangdang.db.dao.IItemDAO;
import tarena.dangdang.db.domain.DItem;
@Service @Transactional
public class ItemService implements IItemService {
private ICartService cart;
//@Resource IItemDAO iItemDAO;
@Resource SessionFactory factory;

/* (non-Javadoc)
 * @see tarena.dangdang.services.IItemService#caeateItem(java.util.Map)
 */
public void createItem(Map session){
// cart = ServiceFactory.getCart(session);
cart = (ICartService)session.get(Constant.SESSION_CART_KEY);
List<CartItem> citems = cart.getSuccessItems();
System.out.println(citems.size()+"....................是空的吗?");
for(CartItem items:citems){
System.out.println("给我进来"+items.getProduct().getProductName());
DItem item=new DItem();
int itemtime=new Long(System.currentTimeMillis()).intValue();
session.put("itemtime", itemtime);
item.setOrderId(itemtime);
System.out.println("订单id    :"+itemtime);
System.out.println("价格    :"+cart.getDangPrice());
System.out.println("书名    :"+items.getProduct().getId()+"   "+items.getProduct().getProductName());
System.out.println("本数   :"+items.getNum());
System.out.println("价格    :"+cart.getDangPrice());

item.setDangPrice(cart.getDangPrice());
item.setProductId(items.getProduct().getId());
item.setProductName(items.getProduct().getProductName());
item.setProductNum(items.getNum());
item.setAmount(cart.getDangPrice());
System.out.println("-----------------------:");
System.out.println("价格shihjj    :"+item.getDangPrice());
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
}
}
}
--------------------编程问答-------------------- 既然是这句出问题:
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
应该是@Resource SessionFactory factory; factory没有注入进来。 --------------------编程问答--------------------
引用 1 楼  的回复:
既然是这句出问题:
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
应该是@Resource SessionFactory factory; factory没有注入进来。

同意 --------------------编程问答--------------------
引用 2 楼  的回复:
引用 1 楼 的回复:

既然是这句出问题:
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
应该是@Resource SessionFactory factory; factory没有注入进来。

同意


再次同意 --------------------编程问答--------------------
引用 3 楼  的回复:
引用 2 楼 的回复:
引用 1 楼 的回复:

既然是这句出问题:
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
应该是@Resource SessionFactory factory; factory没有注入进来。

同意


再次同意


最后同意

QQ:79174715② 小龙在线(只限技术讨论和项目交流,非诚勿扰) --------------------编程问答--------------------
引用 1 楼  的回复:
既然是这句出问题:
factory.getCurrentSession().persist(item);//提示是说这条语句有问题
应该是@Resource SessionFactory factory; factory没有注入进来。


果断同意
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,