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

📄 permissiondaohibernateimpl.java

📁 用JSF.Spring和Hibernate开发的一个办公用品管理系统的WEB应用。
💻 JAVA
字号:
package com.jsfabc.jsh.model.dao.hibernateImpl;

import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.jsfabc.jsh.model.bo.Permission;
import com.jsfabc.jsh.model.dao.PermissionDao;

public class PermissionDaoHibernateImpl extends HibernateDaoSupport 
                                    implements PermissionDao {
	
	//查询一个用户的权限,放在一个列表中,用于填充页面上的树型菜单
	public List findUserPermission(final String userId){
		return (List)getHibernateTemplate().execute(
				new HibernateCallback(){
					public Object doInHibernate(Session session)
					                      throws HibernateException{
					    
						String sSql =" select distinct permissionID into "
						  +" #userPermission from rolepermission "
						  +" where roleID in (select roleID from personRole "
						  +" where personID=:uId ) "
							  
			              +" select * into #permID from (select distinct "
			              +" substring(permissionID,1,2) as ID,"
			              +" '0' as pID from #userPermission "
			                  
			              +" union select distinct substring(permissionID,1,4) "
			              +" as ID,substring(permissionID,1,2) as pID "
			              +" from #userPermission "
			                  
			              +" union select distinct substring(permissionID,1,6) "
			              +" as ID,substring(permissionID,1,4) as pID from "
			              +" #userPermission "
			              
			              +" union select distinct substring(permissionID,1,8) "
			              +" as ID,substring(permissionID,1,6) as pID from "
			              +" #userPermission "
			              
			              +" union select distinct substring(permissionID,1,10) "
			              +" as ID,substring(permissionID,1,8) as pID from "
			              +" #userPermission ) "
			              +" as tab where datalength(ID)>datalength(pID) "
			                
			              +" insert #permID values('0','-1') "
			              +" drop table #userPermission "
			                  
			              +" select {permission.*} from #permID i,permission "
			              +" permission where i.ID=permission.ID "

			              + "drop table #permID";
						
						List result=(List) session.createSQLQuery(sSql)
						        .addEntity("permission", Permission.class)
						        .setString("uId", userId).list();					
											
						return result;
					}
				}
			,true);	
	}

}

⌨️ 快捷键说明

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