📄 shoppingcartdaohbnimpl.java
字号:
package com.rmeng.shoppingCart.dao.impl;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.Transaction;import com.rmeng.shoppingCart.dao.ShoppingCartDao;import com.rmeng.shoppingCart.javabean.entity.Cart;import com.rmeng.shoppingCart.javabean.entity.Order;import com.rmeng.shoppingCart.javabean.entity.Product;import com.rmeng.shoppingCart.javabean.entity.User;import com.rmeng.shoppingCart.util.HbnUtil;public class ShoppingCartDaoHbnImpl implements ShoppingCartDao { public User login(String userName, String password) { Session s=HbnUtil.getSession(); Transaction tran=s.beginTransaction(); User user = null; try { Query query = s.createQuery( "select user from User user " + "where user.userName= :username " + "and user.password= :password"); query.setString("username",userName); query.setString("password",password); Iterator it=query.iterate(); if(it.hasNext()) { user = (User)it.next(); } return user; } catch (RuntimeException e) { if(tran!=null) tran.rollback(); e.printStackTrace(); throw e; }finally { s.close(); } } public int generateOrder(User user,Cart cart ) { Order order = new Order(); Session session=HbnUtil.getSession(); Transaction tran=session.beginTransaction(); try { User u = (User)session.get(User.class,user.getUid()); if(session.get(User.class,user.getUid()) == null) { session.save(user); } order.getItems().addAll(cart.getItems().values()); session.save(order); return order.getOid(); }catch(RuntimeException e) { if(tran!=null) tran.rollback(); e.printStackTrace(); throw e; }finally { session.close(); } } public Map showAllProducts() { Map<Integer,Product> prods = new HashMap<Integer,Product>(); Session session=HbnUtil.getSession(); Transaction tran=session.beginTransaction(); try { Query q=session.createQuery("select product from Product product"); ArrayList list = (ArrayList)q.list(); Iterator it=list.iterator(); while(it.hasNext()) { Product product=(Product) it.next(); prods.put((Integer)product.getPid(),product); } return prods; } catch (RuntimeException e){ if(tran!=null) tran.rollback(); e.printStackTrace(); throw e; }finally { session.close(); } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -