📄 userutil.java
字号:
package com.ntsky.bbs.service;/** * <p>Title: Ntsky OpenSource BBS</p> * <p>Description: 用户操作</p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: 天网文化发展有限公司</p> * @author 姚君林 * @version 1.0 */import java.util.*;import org.apache.log4j.Logger ;import com.ntsky.bbs.service.User;import com.ntsky.bbs.service.db.DBUser;import com.ntsky.bbs.service.UserFactory;import com.ntsky.bbs.service.db.DBManager;public class UserUtil { private final static Logger logger = Logger.getLogger(UserUtil.class); private static HashMap users = new HashMap(); private static UserUtil userUtil = null; private static List list = new ArrayList(); private static Object obj = new Object(); private static UserFactory userFactory = UserFactory.getInstance(); public UserUtil(){ //将最新的用户添加到数组 list.add(0,userFactory.getNewestUser()); } public static UserUtil getInstance() { if (userUtil == null) { //使用synchronzed保证一次只有一个实例能访问userUtil对象 synchronized (obj) { if (userUtil == null) { try { userUtil = new UserUtil(); } catch (Exception e) { System.err.println( "UserUtil Exception loading class: " + e.getMessage()); e.printStackTrace(); } } } } return userUtil; } /** * 管理用户的检验 */ public static boolean isManagerUser(int boaId,User user){ if( user == null ){ return false; } String usrName = user.getUsrName(); List list = BoardUtil.masterArray(boaId); Manager manager = new DBManager(); if((list.contains(usrName))||(manager.AdminArray().contains(usrName))){ logger.info("该操作者是管理员......"); return true; } else return false; } /** * 用户注册获取的接口 */ public static User getUserInstance(User user){ return userFactory.getCreateUser(user); } /** * 判断是否有该用户 */ public static boolean isUserExist(User user){ return getUserInstance(user).getIsUserExist(); } /** * 从静态数组中获取最新的用户 */ public User getNewestUser(){ return (User)list.get(0); } /** * 重置(重新设置数组) */ public static void reset(){ try { list.remove(0); } catch (Exception ex) { logger.error("移除数组错误 : " + ex.getMessage()); } list.add(0,userFactory.getNewestUser()); logger.info("reset数组成功 ---- 数组中存放了最新的数据"); } /** * 用户添加主题时更新的信息 */ public static void upUserInfo_AddTopic(String usrName){ userFactory.upUserInfo_AddTopic(usrName); } /** * 更新用户信息 * @return Collection */ public static boolean getEditUser(User user){ return userFactory.editUser(user); } /** * 用户详细信息 1 (根据用户ID判断) * @return Collection */ public static User getUserInfo(int usrId){ return userFactory.userInfo(usrId); } /** * 2(根据用户名判断) */ public static User userInfo(String usrName){ return userFactory.userInfo(usrName); } //角色查询时用到 /** * 查询用户是否存在判断(返回整个用户) */ public static User selectUser(String usrName){ return userFactory.selectUser(usrName); } /** * 用户数组 */ public static List getArrayUser(User user){ List list = new ArrayList(); list.add(new CommonDTO(user.getUsrId(),user.getUsrName())); return list; } /** * 根据角色得到的数据 * @return Collection */ public static List selArrayUser(int usrRole){ List list = new ArrayList(); Iterator rs = userFactory.selArrayUser(usrRole).iterator(); while(rs.hasNext()){ User user = (DBUser)rs.next(); list.add(new CommonDTO(user.getUsrId(),user.getUsrName())); } return list; } /** * 更新用户角色 * @return Collection */ public static void upUserRole(int i,String usrRole,int usrId){ userFactory.upUserRole(i,usrRole,usrId); } /** * 用户头像 */ public static Collection getUserFace(){ List list = new ArrayList(); for(int i=1;i<84;i++){ list.add(new CommonDTO("/images/headpho/"+i+".gif",i+".gif")); } return list; } /** * 职业 */ public static Collection listUsrOccupation(){ List list = new ArrayList(); list.add(new CommonDTO("金融业","金融业")); list.add(new CommonDTO("服务业","服务业")); list.add(new CommonDTO("信息产业","信息产业")); list.add(new CommonDTO("制造业","制造业")); list.add(new CommonDTO("传播业","传播业")); list.add(new CommonDTO("教育","教育")); list.add(new CommonDTO("政府机构","政府机构")); list.add(new CommonDTO("医疗保健","医疗保健")); list.add(new CommonDTO("房地产","房地产")); list.add(new CommonDTO("其它","其它")); return list; } /** * 最高学历 */ public static Collection listUsrEducation(){ List list = new ArrayList(); list.add(new CommonDTO("博士","博士")); list.add(new CommonDTO("硕士","硕士")); list.add(new CommonDTO("大学","大学")); list.add(new CommonDTO("高中","高中")); list.add(new CommonDTO("初中","初中")); list.add(new CommonDTO("小学","小学")); return list; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -