hibrdaoimpl.java
来自「一个小型的购物商店」· Java 代码 · 共 116 行
JAVA
116 行
/*
* HibrImpl.java
*
* Created on 2006年9月24日, 上午8:30
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package com.shopping.dao;
import com.shopping.model.*;
import com.shopping.resource.HiberSession;
import org.hibernate.*;
import java.util.*;
/**
*
* @author 曹昊
*/
public class HibrDaoImpl implements ShoppingCartDao
{
public Map selectAllProducts()
{
Session sess = HiberSession.getSession();
if (sess == null)
return null;
Transaction tran = sess.beginTransaction();
Query query = sess.createQuery("from Product p");
List l = query.list();
tran.commit();
sess.close();
Iterator it = l.iterator();
Map<String, Product> map = new HashMap<String, Product>();
while (it.hasNext())
{
Product product = (Product) it.next();
map.put(product.getId() + "", product);
}
return map;
}
public Order generateOrder(User user, Cart cart)
{
Session sess = HiberSession.getSession();
if (sess == null)
return null;
Transaction tran = sess.beginTransaction();
Order order = new Order();
Map<String, Item> items = cart.getItems();
Set<Item> values = new HashSet<Item>(items.values());
order.setItems(values);
order.setUser(user);
order.setStatus(8);
order.setCost(cart.getCost());
Iterator it = values.iterator();
while (it.hasNext())
{
Item item = (Item) it.next();
item.setOrder(order);
}
sess.save(order);
tran.commit();
sess.close();
return order;
}
public boolean validateLogin(String name, String password)
{
Session sess = HiberSession.getSession();
if (sess == null)
return false;
Transaction tran = sess.beginTransaction();
Query query = sess
.createQuery("from User where name=:name and password=:password");
query.setString("name", name);
query.setString("password", password);
List list = query.list();
tran.commit();
sess.close();
Iterator it = list.iterator();
if (it.hasNext())
{
return true;
}
return false;
}
public User queryUserInfo(String name)
{
Session sess = HiberSession.getSession();
if (sess == null)
return null;
Transaction tran = sess.beginTransaction();
Query query = sess.createQuery("from User u where u.name=:name");
query.setString("name", name);
List l = query.list();
tran.commit();
sess.close();
Iterator it = l.iterator();
if (it.hasNext())
{
User user = (User) it.next();
return user;
}
return null;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?