📄 deptserviceimpl.java
字号:
package com.chinatelecom.service.impl;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.chinatelecom.mode.TDept;
import com.chinatelecom.mode.TPcroom;
import com.chinatelecom.mode.TUser;
import com.chinatelecom.service.IDeptService;
/*******************************************************************************
* DeptServiceImpl
*
* v1.0
*
* 2009年3月22日星期日
*
* 作者:王晓翠
*/
public class DeptServiceImpl extends HibernateDaoSupport implements
IDeptService {
private static int ROWS_PER_PAGE = 4;
/**
* 得到总记录数
*/
public int getTatalCounts() {
// TODO Auto-generated method stub
List list = this.getHibernateTemplate().find("from TDept");
return list.size();
}
/**
* 得到总页数
*/
public int getTotalPages() {
// TODO Auto-generated method stub
int count = this.getTatalCounts();
// System.out.println("count" + count);
if ((count % ROWS_PER_PAGE) == 0) {
return count / ROWS_PER_PAGE;
} else {
return count / ROWS_PER_PAGE + 1;
}
}
/**
* 新增部门
*/
public void addDept(TDept dept) {
// TODO Auto-generated method stub
this.getHibernateTemplate().save(dept);
}
/**
* findAllDepts
*
* 查找部门列表
*
* 需要传递参数page,page为int类型的变量,根据page来显示page页的列表
* 作者:王晓翠
*/
public List findAllDepts(int page) {
// TODO Auto-generated method stub
int startPage = (page - 1) * ROWS_PER_PAGE;
HibernateTemplate ht = this.getHibernateTemplate();
Session session = ht.getSessionFactory()
.openSession();
Query q = session.getNamedQuery("findAllDepts");
q.setFirstResult(startPage);
q.setMaxResults(ROWS_PER_PAGE);
List list = q.list();
if(session.isOpen()){
session.close();
}
return list;
}
/**
* 通过Id查询部门
*/
public TDept findTDeptById(String Id){
HibernateTemplate ht = this.getHibernateTemplate();
TDept dept = (TDept)ht.get(TDept.class,Long.parseLong(Id));
return dept;
}
/**
* 更改部门
*/
public void updateDept(long deptId, TDept dept) {
// TODO Auto-generated method stub
HibernateTemplate ht = this.getHibernateTemplate();
TDept dept2 = (TDept)ht.get(TDept.class, deptId);
dept2.setDeptName(dept.getDeptName());
dept2.setDeptFax(dept.getDeptFax());
dept2.setDeptMobile(dept.getDeptMobile());
dept2.setDeptPhone(dept.getDeptPhone());
dept2.setDeptNote(dept.getDeptNote());
//System.out.println(dept.getTUser());
dept2.setTUser(dept.getTUser());
ht.update(dept2);
}
/**
* deleteDept
*
* 删除部门
*
* 需要传递参数str,str为String类型的数组变量,根据str来删除人员
* 作者:王晓翠
*/
public void deleteDept(String[] str) {
// TODO Auto-generated method stub
for (int i = 0; i < str.length; i++) {
HibernateTemplate ht = this.getHibernateTemplate();
TDept dept = (TDept) ht.get(TDept.class, Long.parseLong(str[i]));
Set roomset = dept.getTPcrooms();
Iterator roomit = roomset.iterator();
while(roomit.hasNext()){
TPcroom room = (TPcroom)roomit.next();
roomit.remove();
}
Set userset = dept.getTUsers();
Iterator userit = userset.iterator();
while(userit.hasNext()){
TUser user = (TUser)userit.next();
userit.remove();
}
ht.delete(dept);
}
}
/**
* 查找部门列表
*/
public List findDeptList() {
// TODO Auto-generated method stub
HibernateTemplate ht = this.getHibernateTemplate();
return ht.find("from TDept");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -