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 + -
显示快捷键?