package com.java2nb.common.utils; import com.java2nb.system.domain.UserToken; import org.apache.commons.beanutils.BeanUtils; import org.apache.shiro.SecurityUtils; import org.apache.shiro.session.Session; import org.apache.shiro.session.mgt.eis.SessionDAO; import org.apache.shiro.subject.Subject; import com.java2nb.system.domain.UserDO; import org.springframework.beans.factory.annotation.Autowired; import java.lang.reflect.InvocationTargetException; import java.security.Principal; import java.util.Collection; import java.util.List; public class ShiroUtils { @Autowired private static SessionDAO sessionDAO; public static Subject getSubjct() { return SecurityUtils.getSubject(); } public static UserDO getUser() { Object object = getSubjct().getPrincipal(); return (UserDO)object; } public static Long getUserId() { return getUser().getUserId(); } public static void logout() { getSubjct().logout(); } public static List getPrinciples() { List principals = null; Collection sessions = sessionDAO.getActiveSessions(); return principals; } }