finduserbynamefromdatabase.java

来自「Java开发的权限管理的例子」· Java 代码 · 共 49 行

JAVA
49
字号
package org.artemis.right.command;

import java.util.List;
import java.util.Map;
import org.artemis.right.model.User;
import com.gsta.eshore.framework.dao.BaseDao;
import com.gsta.eshore.framework.jcf.Command;
import com.gsta.eshore.framework.jcf.JCFException;
import com.gsta.eshore.framework.util.AppUtils;
/**
 * 从数据库中查找该用户User以及所拥有的role
 * @author hewenqiang Nov 23, 2006 9:56:04 AM
 */
public class FindUserByNameFromDataBase extends Command
{
	private BaseDao dao;
	public void setDao(BaseDao dao) {
		this.dao = dao;
	}
    
	public void execute(Map params, Map response) throws Exception
	{
			List list=dao.find("from User u where u.name = ?",(String) params.get("name"));
			if(!AppUtils.isBlank(list)){
				User user=(User)list.get(0);
				//查找有该权限的角色
				user.setRoles(findRolesByUser(user));
				response.put("resultObject",user);
			}else{
				response.put("resultObject",null);
			}

	}
	
	public List findRolesByUser(User user){
		return dao.find("select r from UserRole ur ,Role r where ur.id.userId=? and ur.id.roleId=r.id",user.getId());
	}

	public void fini() throws JCFException
	{
	}

	public void init(String arg0) throws JCFException
	{
	}


}

⌨️ 快捷键说明

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