⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userdao.java

📁 sistem information for universitas
💻 JAVA
字号:
package dao;
import java.util.ArrayList;
import java.util.List;
import model.Jadwal;
import model.ObjectPaging;
import model.Semester;
import model.User;
import org.hibernate.Query;
import org.hibernate.Session;
public class UserDAO {
    int userPerPage=20;
    public UserDAO() {
    }
    public boolean usernameIsUsed(String username) throws Exception {
        HibernateUtil.beginTransaction();
        Session session=HibernateUtil.getSession();
        User user=null;
        boolean isUsed=false;
        try {
            user=(User)session.createQuery("SELECT user FROM User user WHERE user.username= :input")
            .setParameter("input",username).uniqueResult();
            if(user!=null) {
                isUsed=true;
            }
        } catch(Exception ex) {
            throw ex;
        }
        return isUsed;
    }
    public User loadUser(long id) throws Exception {
        HibernateUtil.beginTransaction();
        Session session=HibernateUtil.getSession();
        User user=null;
        try {
            user=(User)session.load(User.class,id);
        } catch(Exception ex) {
            throw ex;
        }
        return user;
    }
    public User login(String username,String password) throws Exception {
        HibernateUtil.beginTransaction();
        Session session=HibernateUtil.getSession();
        User user=null;
        try {
            user=(User)session.createQuery("SELECT user FROM User user WHERE user.username= :input")
            .setParameter("input",username).uniqueResult();
            if(user!=null) {
                if(!user.getPassword().equals(password)) {
                    user=null;
                } else if(user.getLevel()==1) {
                    if((new MatakuliahDAO().getListMatakuliah().size()!=0)&&(new RuangDAO().getListRuang().size()!=0)&&(new DosenDAO().getListDosen().size()!=0)) {
                        if(new SemesterDAO().getListSemester().size()==0) {
                            Semester semester=new Semester();
                            semester.setNama("Semester ZERO");
                            semester.setTahunAjaran("1984");
                            semester.setRegistrasiAwal("1984-06-06");
                            semester.setRegistrasiAkhir("1984-06-06");
                            new ObjectDAO().insert(semester);
                            Jadwal jadwal=new Jadwal();
                            jadwal.setMatakuliah(new MatakuliahDAO().loadMatakuliah(1));
                            jadwal.setRuang(new RuangDAO().loadRuang(1));
                            jadwal.setDosen(new DosenDAO().loadDosen(1));
                            jadwal.setSemester(new SemesterDAO().loadSemester(1));
                            jadwal.setAksara("Z");
                            jadwal.setHari("Senin");
                            jadwal.setJamMulai("11:00");
                            jadwal.setJamSelesai("11:00");
                            jadwal.setKapasitas(0);
                            new ObjectDAO().insert(jadwal);
                        }
                    } else {
                        user=null;
                    }
                }
            }
        } catch(Exception ex) {
            throw ex;
        }
        return user;
    }
    //=======NO PAGING=======
    public List getListUser(String keyWord) throws Exception {
        HibernateUtil.beginTransaction();
        Session session=HibernateUtil.getSession();
        List list=new ArrayList();
        try {
            list=session.createQuery("SELECT user FROM User user WHERE user.username LIKE :input")
            .setParameter("input","%"+keyWord+"%").list();
        } catch(Exception ex) {
            throw ex;
        }
        return list;
    }
    //=======NO PAGING=======
    //=======PAGING=======
    public ObjectPaging getListUser(int pageNumber,String keyWord) throws Exception {
        HibernateUtil.beginTransaction();
        ObjectPaging objectPaging=new ObjectPaging();
        int totalItem=getListUser(keyWord).size();
        int totalPage=totalItem/userPerPage;
        if(totalItem%userPerPage>0)totalPage++;
        if(pageNumber<1) {
            pageNumber=1;
        }
        if(pageNumber>totalPage) {
            pageNumber=totalPage;
        }
        Session session=HibernateUtil.getSession();
        List list=new ArrayList();
        try {
            Query query=session.createQuery("SELECT user FROM User user WHERE user.username LIKE :input")
            .setParameter("input","%"+keyWord+"%");
            list=query.setFirstResult(userPerPage*(pageNumber-1))
            .setMaxResults(userPerPage).list();
        } catch(Exception ex) {
            throw ex;
        }
        int beginPagePaging=pageNumber-5;
        int endedPagePaging=pageNumber+5;
        if(beginPagePaging<1) {
            beginPagePaging=1;
            endedPagePaging=11;
            if(endedPagePaging>totalPage) {
                endedPagePaging=totalPage;
            }
        } else if(endedPagePaging>totalPage) {
            endedPagePaging=totalPage;
            beginPagePaging=totalPage-10;
            if(beginPagePaging<1) {
                beginPagePaging=1;
            }
        }
        List listPaging=new ArrayList();
        for(int i=beginPagePaging;i<=endedPagePaging;i++) {
            listPaging.add(i);
        }
        objectPaging.setListObject(list);
        objectPaging.setListPaging(listPaging);
        objectPaging.setPageNumber(pageNumber);
        objectPaging.setTotalPage(totalPage);
        return objectPaging;
    }
    //=======PAGING=======
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -