SpringInitConfig.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package com.ssm.common;
  2. import java.util.HashMap;
  3. import java.util.List;
  4. import java.util.Map;
  5. import org.springframework.beans.BeansException;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.context.ApplicationContext;
  8. import org.springframework.context.ApplicationContextAware;
  9. import com.ssm.model.system.SysMenu;
  10. import com.ssm.model.system.SysRole;
  11. import com.ssm.service.system.SysRoleService;
  12. public class SpringInitConfig implements ApplicationContextAware {
  13. @Autowired
  14. private SysRoleService sysRoleService;
  15. public static Map<String, SysRole> roleMap = new HashMap<String, SysRole>();
  16. public static Map<String, List<SysMenu>> menuMap = new HashMap<String, List<SysMenu>>();
  17. /**
  18. * 初始化 角色 和菜单的对象关系
  19. * 将 关系 存到 servletContext
  20. * 考虑到servletContext 修改 数据不方便,
  21. * 改成 Map
  22. */
  23. @Override
  24. public void setApplicationContext(ApplicationContext applicationContext)
  25. throws BeansException {
  26. List<SysRole> roleList = sysRoleService.selectRoleAndMenuList();
  27. if( !roleList.isEmpty() ) {
  28. for(SysRole role : roleList) {
  29. roleMap.put(role.getRoleId().toString(), role);
  30. menuMap.put(role.getRoleId().toString(), role.getMenuList());
  31. }
  32. }
  33. //下面代码 可以 注释
  34. // for(String key : menuMap.keySet() ){
  35. // System.out.println( "==================================================" );
  36. // SysRole role = roleMap.get(key);
  37. // System.out.print( "角色 :"+ role.getRoleName() +" 菜单>>>");
  38. // List<SysMenu> menuList = menuMap.get(key);
  39. // if(!menuList.isEmpty()) {
  40. // for(SysMenu menu : menuList) {
  41. // System.out.println( menu.getMenucnname() );
  42. // }
  43. // }
  44. // }
  45. }
  46. }