SSH整合开发Demo--酒店预订系统-->DAO层设计

来源:互联网 发布:笔记本触摸屏控制软件 编辑:程序博客网 时间:2024/06/11 14:22

DAO层设计的主要任务是创建DAO接口以及创建DAO接口的实现类。
本系统一共定义了4个DAO接口。

AdminDAO.java文件:

package com.integration.dao;import java.util.List;import com.integration.entity.Admin;public interface AdminDAO {    public void saveAdmin(Admin admin);    public List<Admin> findAllAdmin();    public void removeAdmin(Admin admin);    public void updateAdmin(Admin admin);    public Admin findAdminById(Integer id);    public Admin loginAdmin(Admin admin);}

RoomDAO.java文件:

package com.integration.dao;import java.util.List;import com.integration.entity.Room;public interface RoomDAO {    public void saveRoom(Room room);    public List<Room> findAllRoom();            public void removeRoom (Room room);     public void updateRoom (Room room);     public Room findRoomById(Integer id);   }

OrderDAO.java文件:

package com.integration.dao;import java.util.List;import com.integration.entity.Order;import com.integration.entity.User;public interface OrderDAO {    public void saveOrder(Order order);    public List<Order> findAllOrder();    public void removeOrder(Order order);    public void updateOrder(Order order);    public Order findOrderById(Integer id);    public List<Order> getUserOrder(User user);    public Order findOrderByUseridAndRoomid(int userid, int roomid);}

UserDAO.java文件:

package com.integration.dao;import java.util.List;import com.integration.entity.User;public interface UserDAO {    public void saveUser(User user);    public List<User> findAllUsers();    public void removeUser(User user);    public void updateUser(User user);    public User findUserById(Integer id);    public User loginUser(User user);}

DAO接口实现类也有4个,分别实现了AdminDAO、HotelDAO、OrderDAO和UserDAO这4个接口。

AdminDAOImpl.java文件:

package com.integration.dao.impl;import java.util.List;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.integration.entity.Admin;import com.integration.dao.AdminDAO;public class AdminDAOImpl extends HibernateDaoSupport implements AdminDAO {    @SuppressWarnings("unchecked")    public List<Admin> findAllAdmin() {        String hql = "from Admin admin order by admin.username desc)";        return (List<Admin>) this.getHibernateTemplate().find(hql);    }    public Admin findAdminById(Integer id) {        return (Admin) this.getHibernateTemplate().get(Admin.class, id);    }    public void removeAdmin(Admin admin) {        this.getHibernateTemplate().delete(admin);    }    public void saveAdmin(Admin admin) {        this.getHibernateTemplate().save(admin);    }    public void updateAdmin(Admin admin) {        this.getHibernateTemplate().update(admin);    }    @SuppressWarnings("unchecked")    public Admin loginAdmin(Admin admin) {        String hql = "from Admin admin where admin.username='"                + admin.getUsername() + "' and admin.password='"                + admin.getPassword() + "'";        List<Admin> admins = (List<Admin>) this.getHibernateTemplate()                .find(hql);        if (admins.size() > 0) {            return admins.get(0);        }        return null;    }}

OrderDAOImpl.java文件:

package com.integration.dao.impl;import java.util.List;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.integration.entity.Order;import com.integration.entity.User;import com.integration.dao.OrderDAO;public class OrderDAOImpl extends HibernateDaoSupport implements OrderDAO {    @SuppressWarnings("unchecked")    public List<Order> findAllOrder() {        String hql = "from Order ord order by ord.orderid desc";        return (List<Order>) this.getHibernateTemplate().find(hql);    }    public Order findOrderById(Integer id) {        return (Order) this.getHibernateTemplate().get(Order.class, id);    }    public void removeOrder(Order order) {        this.getHibernateTemplate().delete(order);    }    public void saveOrder(Order order) {        this.getHibernateTemplate().save(order);    }    public void updateOrder(Order order) {        this.getHibernateTemplate().update(order);    }    @SuppressWarnings("unchecked")    public List<Order> getUserOrder(User user) {        String hql = "from Order ord where ord.userid='" + user.getUserid()                + "'";        return (List<Order>) this.getHibernateTemplate().find(hql);    }    @SuppressWarnings("unchecked")    public Order findOrderByUseridAndRoomid(int userid, int roomid) {        String hql = "from Order ord where ord.userid=" + userid                + " and ord.roomid=" + roomid + "";        List<Order> orders = (List<Order>) this.getHibernateTemplate()                .find(hql);        return orders == null ? null : orders.get(0);    }}

RoomDAOImpl.java文件:

package com.integration.dao.impl;import java.util.List;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.integration.entity.Room;import com.integration.dao.RoomDAO;public class RoomDAOImpl extends HibernateDaoSupport implements RoomDAO {    @SuppressWarnings("unchecked")    public List<Room> findAllRoom() {        String hql = "from Room room order by room.roomid desc";        return (List<Room>) this.getHibernateTemplate().find(hql);    }    public Room findRoomById(Integer id) {        return (Room) this.getHibernateTemplate().get(Room.class, id);    }    public void removeRoom(Room room) {        this.getHibernateTemplate().delete(room);    }    public void saveRoom(Room room) {        this.getHibernateTemplate().save(room);    }    public void updateRoom(Room room) {        this.getHibernateTemplate().update(room);    }}

UserDAOImpl.java文件:

package com.integration.dao.impl;import java.util.List;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.integration.entity.User;import com.integration.dao.UserDAO;public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {    public void saveUser(User user) {        this.getHibernateTemplate().save(user);    }    @SuppressWarnings("unchecked")    public List<User> findAllUsers() {        String hql = "from User user order by user.userid desc";        return (List<User>) this.getHibernateTemplate().find(hql);    }    public void removeUser(User user) {        this.getHibernateTemplate().delete(user);    }    public void updateUser(User user) {        this.getHibernateTemplate().update(user);    }    public User findUserById(Integer id) {        User user = (User) this.getHibernateTemplate().get(User.class, id);        return user;    }    @SuppressWarnings("unchecked")    public User loginUser(User user) {        String hql = "from User user where user.username='"                + user.getUsername() + "' and user.password='"                + user.getPassword() + "'";        List<User> users = (List<User>) this.getHibernateTemplate().find(hql);        if (users.size() > 0) {            return users.get(0);        }        return null;    }}

后面马上继续业务逻辑层设计……

1 0