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

📄 operatordaoimpl.java

📁 jsf+spring+ibatis 的一个程序,主要用来介绍JSF程序.
💻 JAVA
字号:
package com.wxd.common.popedom.persistence.dao;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import org.hibernate.Hibernate;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.wxd.common.popedom.persistence.entity.Action;
import com.wxd.common.popedom.persistence.entity.Operator;
import com.wxd.common.popedom.persistence.entity.OperatorRole;
import com.wxd.common.popedom.persistence.entity.Role;
import com.wxd.common.popedom.persistence.entity.RoleAction;

public class OperatorDaoImpl extends HibernateDaoSupport implements OperatorDao {

	public Collection<Action> getAllActions(int id) {
		String sql1,sql2;
		sql1="select distinct ra.role_no from tb_com_operator_role ra where ra.operator_no=:operatorNo";
		sql2="select distinct action from Action action join action.RoleActions ra where ra.Role in(:roleList)";
		List roleList=this.getSession().createSQLQuery(sql1).setInteger("operatorNo", new Integer(id)).list();
		List<Action> result=this.getSession().createQuery(sql2).setParameterList("roleList", roleList,Hibernate.INTEGER).list();
		return result;
	}

	public Collection<Operator> getAllOperators() {
		return this.getHibernateTemplate().loadAll(Operator.class);
	}

	public Operator  getOperatorFromOperatorId(String operatorId){
		Operator op=(Operator)getSession().createQuery("from Operator operator where operator.OperatorId=:opId)").setString("opId",operatorId).uniqueResult();
		return op;
	}

	public Collection<OperatorRole> getAllRoles(int id) {
		Operator op=(Operator)getSession().createQuery("from Operator op where op.id=:opId").setInteger("opId",new Integer(id)).uniqueResult();
		Hibernate.initialize(op.getOperatorRoles());
		return op.getOperatorRoles();
	}
	
	public void save(Operator operator){
		this.getHibernateTemplate().saveOrUpdate(operator);
	}
	
	public void update(Operator operator){
		this.getHibernateTemplate().update(operator);
	}
	
	public void delete(int  id){
		this.deleteRoleByOperator(id);
		this.getHibernateTemplate().delete(new Operator(new Integer(id)));
	}
	
	public Collection<OperatorRole>  getAllOperatorRoles(){
		return this.getHibernateTemplate().find("from OperatorRole ");
	}
	
	public Collection<OperatorRole>  getOperatorRolesByOperator(int id){
		return this.getSession().createQuery("select opRole from OperatorRole opRole join opRole.Operator op where op.id=:opId").setInteger("opId", new Integer(id)).list();
	}
	
	public void saveRole(OperatorRole operatorRole){
		this.getHibernateTemplate().save(operatorRole);
	}
	
	public void deleteRole(int id){
		this.getHibernateTemplate().delete(new OperatorRole(new Integer(id)));
	}

	public void deleteRoleByOperator(int operatorId){
		this.getHibernateTemplate().deleteAll(getOperatorRolesByOperator(operatorId));
	}



}

⌨️ 快捷键说明

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