基于javaweb+mysql的jsp+servlet高校社团管理系统(java+servlet+jsp+mysql)

基于javaweb+mysql的jsp+servlet高校社团管理系统(java+servlet+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的JSP+Servlet高校社团管理系统(java+servlet+jsp+mysql)

功能简介

高校社团管理系统分为前后台,角色分为三种:管理员、社长、普通社员。

超级管理员角色包含以下功能:会员管理,物品管理,活动审批,系统用户管理,社团添加删除等功能。

社长角色包含以下功能:社团管理员登录,会员管理,物品管理,活动管理,查询社团信息,密码修改等功能。

普通社员角色包含以下功能:社员登录,申请入社,物品查看,活动申请等功能。

前台主要是展示社团列表、社团风采、社团活动、新闻列表 前台登录后进入个人中心,在个人中心能申请加入社团、查看参加的社团活动等 后台为管理员与社长使用,应用于对社团的管理及内容发布等。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 8.0版本;

使用技术 使用技术:servlet+jsp+mysql 8.0

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;注:数据库使用mysql 8.0,注意版本要匹配,否则可能会产生连接异常的情况, 2. 将项目中db.properties配置文件中的数据库配置改为自己的配置 3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;

前台地址:http://localhost:8080/team/front/login.jsp 普通社员账号:苏c 密码:123

后台地址:http://localhost:8080/team/mui/login.jsp 管理员账号:sys 密码:123456 社长账号:苏悲 密码:123456

	}
	
	/**
	 * 跳转到首页
	 * @param request
	 * @param response
	 */
	private void index(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String contextPath = request.getServletContext().getContextPath();
		User user = CurrentUserUtils.getCurrentUser(request);
		if (user==null) {
		}
		List<Map<String, Object>> menus = new ArrayList<Map<String, Object>>();
		List<Menu> parentMenus = menuRoleDao.getUserMenus(user.getRole(), "0");
		for (Menu menu : parentMenus) {
			Map<String, Object> map = new HashMap<String, Object>();
			map.put("parentMenu", menu);
			List<Menu> childrenMenus = menuRoleDao.getUserMenus(user.getRole(), menu.getId());
			map.put("sonMenus", childrenMenus);
			menus.add(map);
		}
		String projectName = PropertiesUtil.getValue("projectName");
		request.getSession().setAttribute("projectName", projectName);
		request.getSession().setAttribute("indexMenus", menus);
		request.getRequestDispatcher("/mui/index.jsp").forward(request, response);
	}

	/**
	 * 修改密码
	 * @param request
	 * @param response
	 * @throws ServletException
	 * @throws IOException
	 */
	private void repassword(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String contextPath = request.getServletContext().getContextPath();
		String id = request.getParameter("id");
		String password = request.getParameter("password");
		String password1 = request.getParameter("password1");
		String password2 = request.getParameter("password2");
		response.setCharacterEncoding("utf-8");
		
		User user = userService.getById(id);
		if (MD5.Encrypt(password).equals(user.getPassword())) {
					if ("phone".endsWith(name)) {
						activeStu.setPhone(item.getString("UTF-8"));
						
					}
					
					if ("type".endsWith(name)) {
						activeStu.setType(item.getString("UTF-8"));
						
					}
					
					if ("isArrive".endsWith(name)) {
						activeStu.setIsArrive(item.getString("UTF-8"));
						
					}
                    
                }else{//如果fileitem中封装的是上传文件
                    //得到上传的文件名称,
                    String filename = item.getName();
                    System.out.println(filename);
                    if(filename==null || filename.trim().equals("")){
                        continue;
                    }
                    //注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,如:  c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt
                    //处理获取到的上传文件的文件名的路径部分,只保留文件名部分
                    filename = filename.substring(filename.lastIndexOf("\\")+1);
                    //获取item中的上传文件的输入流
                    String suffix = filename.substring(filename.lastIndexOf("."));
                    filename=String.valueOf(System.currentTimeMillis()+suffix);
                    InputStream in = item.getInputStream();
                    //创建一个文件输出流
                    FileOutputStream out = new FileOutputStream(savePath + "\\" + filename);
                    //创建一个缓冲区
                    byte buffer[] = new byte[1024];
                    //判断输入流中的数据是否已经读完的标识
                    int len = 0;
                    //循环将输入流读入到缓冲区当中,(len=in.read(buffer))>0就表示in里面还有数据
                    while((len=in.read(buffer))>0){
                        //使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\" + filename)当中
                        out.write(buffer, 0, len);
                    }
                    //关闭输入流
                    in.close();
                    //关闭输出流
                    out.close();
                    //删除处理文件上传时生成的临时文件
                    item.delete();
 					msg = "文件上传成功!";
                    
                }
            }
	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		HttpServletRequest req = (HttpServletRequest) request;
		req.setCharacterEncoding("utf-8");
		HttpServletResponse res = (HttpServletResponse) response;
		//res.setContentType("charset=utf-8");
		res.setCharacterEncoding("utf-8");
		String parameter = request.getParameter("method");
		//如果不是登录和安全退出方法 进行过滤操作
		if (parameter!=null && parameter !="" && !"regit".equals(parameter) && !"login".equals(parameter)&& !"logout".equals(parameter)) {
			User login = CurrentUserUtils.getCurrentUser(req);
			if (login==null) {
				String contextPath = req.getServletContext().getContextPath();
			}else{
				chain.doFilter(req, res);
			}
		}else{
			chain.doFilter(req, res);
		}
	}

	/**
	 * @see Filter#init(FilterConfig)
	 */
	public void init(FilterConfig fConfig) throws ServletException {
		// TODO Auto-generated method stub
	}

}

public class CurrentUserUtils {
	
	/**
	 * 获取当前登录用户信息
	 * @param request
	 * @return
	 */
	public static User getCurrentUser(HttpServletRequest request){
		User user = null;
		Object attribute = request.getSession().getAttribute("login");
		System.out.println("attribute");
		if (attribute!=null && attribute instanceof User) {
			user = (User) attribute;
		}
		return user;
	}

@WebServlet("/menu")
public class MenuController extends HttpServlet {
	private static final long serialVersionUID = 1L;
	
	private String contextPath = "";
	
	MenuDao menuDao=new MenuDao();
	MenuService menuService = new MenuServiceImpl();
	MenuRoleDao menuRoleDao = new MenuRoleDao();
	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}
	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		contextPath = request.getServletContext().getContextPath();
		String method = request.getParameter("method");
		if ("add".equals(method)) {
			add(request,response);
		}else if ("delete".equals(method)) {
			delete(request, response);
		}else if ("list".equals(method)) {
			list(request, response);
		}else if ("update".equals(method)) {
			update(request, response);
		}else if ("form".equals(method)) {
			form(request, response);
		}else if ("save".equals(method)) {
			save(request, response);
		}else if ("setMenuRole".equals(method)) {
			setMenuRole(request, response);
		}else if ("saveMenuRole".equals(method)) {
			saveMenuRole(request, response);
		}
            char c = s.charAt(i);

            boolean nextUpperCase = true;

            if (i < (s.length() - 1)) {
                nextUpperCase = Character.isUpperCase(s.charAt(i + 1));
            }

            if ((i > 0) && Character.isUpperCase(c)) {
                if (!upperCase || !nextUpperCase) {
                    sb.append(SEPARATOR);
                }
                upperCase = true;
            } else {
                upperCase = false;
            }

            sb.append(Character.toLowerCase(c));
        }

        return sb.toString();
    }
    
}

/**
 * 这是过滤器,用于设置请求与响应的字符集编码
* @ClassName: SerFilter 
//        String savePath = PropertiesUtil.getValue("fileUpload");
//        File file = new File(savePath+"/");
//        if (!file.exists() && !file.isDirectory()) {
//            System.out.println(savePath+"目录不存在,需要创建");
//            //创建目录
//            file.mkdirs();
//        }
        //消息提示
        String msg = "";
        try{
            //使用Apache文件上传组件处理文件上传步骤:
            //1、创建一个DiskFileItemFactory工厂
            DiskFileItemFactory factory = new DiskFileItemFactory();
            //2、创建一个文件上传解析器
            ServletFileUpload upload = new ServletFileUpload(factory);
             //解决上传文件名的中文乱码
            upload.setHeaderEncoding("UTF-8"); 
            //3、判断提交上来的数据是否是上传表单的数据
            if(!ServletFileUpload.isMultipartContent(request)){
                //按照传统方式获取数据
                return;
            }
            //4、使用ServletFileUpload解析器解析上传数据,解析结果返回的是一个List<FileItem>集合,每一个FileItem对应一个Form表单的输入项
            List<FileItem> list = upload.parseRequest(request);
            for(FileItem item : list){
                //如果fileitem中封装的是普通输入项的数据
                if(item.isFormField()){
                    String name = item.getFieldName();
                     //解决普通输入项的数据的中文乱码问题
					if ("id".endsWith(name)) {
                    	if (item.getString("UTF-8")!=null && item.getString("UTF-8")!="") {
                    		teamApplay.setId(item.getString("UTF-8"));
						}
					}
					
					if ("applayTeam".endsWith(name)) {
						teamApplay.setApplayTeam(item.getString("UTF-8"));
						
					}
					
					if ("applayStu".endsWith(name)) {
						teamApplay.setApplayStu(item.getString("UTF-8"));
						
					}
					

/**
 * 系统用户控制器servlet
 * @version V1.0
 */
@WebServlet("/user")
public class UserController extends HttpServlet {
	private static final long serialVersionUID = 1L;
	
	UserDao userDao=new UserDao();
	UserService userService = new UserServiceImpl();
	RoleService roleService = new RoleServiceImpl();
	MenuRoleDao menuRoleDao = new MenuRoleDao();
	
					if ("activeId".endsWith(name)) {
						activeStu.setActiveId(item.getString("UTF-8"));
						
					}
					
					if ("stuId".endsWith(name)) {
						activeStu.setStuId(item.getString("UTF-8"));
						
					}
					
					if ("stuName".endsWith(name)) {
						activeStu.setStuName(item.getString("UTF-8"));
						
					}
					
					if ("phone".endsWith(name)) {
						activeStu.setPhone(item.getString("UTF-8"));
						
					}
					
					if ("type".endsWith(name)) {
						activeStu.setType(item.getString("UTF-8"));
						
					}
					
					if ("isArrive".endsWith(name)) {
						activeStu.setIsArrive(item.getString("UTF-8"));
						
					}
                    
                }else{//如果fileitem中封装的是上传文件
                    //得到上传的文件名称,
                    String filename = item.getName();
                    System.out.println(filename);
                    if(filename==null || filename.trim().equals("")){
                        continue;
                    }
                    //注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,如:  c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt
                    //处理获取到的上传文件的文件名的路径部分,只保留文件名部分
                    filename = filename.substring(filename.lastIndexOf("\\")+1);
                    //获取item中的上传文件的输入流
                    String suffix = filename.substring(filename.lastIndexOf("."));
                    filename=String.valueOf(System.currentTimeMillis()+suffix);
                    InputStream in = item.getInputStream();
                    //创建一个文件输出流
                    FileOutputStream out = new FileOutputStream(savePath + "\\" + filename);
                    //创建一个缓冲区
                    byte buffer[] = new byte[1024];
                    //判断输入流中的数据是否已经读完的标识
                    int len = 0;
                    //循环将输入流读入到缓冲区当中,(len=in.read(buffer))>0就表示in里面还有数据
                    while((len=in.read(buffer))>0){
                        //使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\" + filename)当中
                        out.write(buffer, 0, len);
        String msg = "";
        try{
            //使用Apache文件上传组件处理文件上传步骤:
            //1、创建一个DiskFileItemFactory工厂
            DiskFileItemFactory factory = new DiskFileItemFactory();
            //2、创建一个文件上传解析器
            ServletFileUpload upload = new ServletFileUpload(factory);
             //解决上传文件名的中文乱码
            upload.setHeaderEncoding("UTF-8"); 
            //3、判断提交上来的数据是否是上传表单的数据
            if(!ServletFileUpload.isMultipartContent(request)){
                //按照传统方式获取数据
                return;
            }
            //4、使用ServletFileUpload解析器解析上传数据,解析结果返回的是一个List<FileItem>集合,每一个FileItem对应一个Form表单的输入项
            List<FileItem> list = upload.parseRequest(request);
            for(FileItem item : list){
                //如果fileitem中封装的是普通输入项的数据
                if(item.isFormField()){
                    String name = item.getFieldName();
                     //解决普通输入项的数据的中文乱码问题
					if ("id".endsWith(name)) {
                    	if (item.getString("UTF-8")!=null && item.getString("UTF-8")!="") {
                    		activeStu.setId(item.getString("UTF-8"));
						}
					}
					
					if ("activeId".endsWith(name)) {
						activeStu.setActiveId(item.getString("UTF-8"));
						
					}
					
					if ("stuId".endsWith(name)) {
						activeStu.setStuId(item.getString("UTF-8"));
						
					}
					
					if ("stuName".endsWith(name)) {
						activeStu.setStuName(item.getString("UTF-8"));
						
					}
					
						}
					}
					
					if ("teamName".endsWith(name)) {
						teams.setTeamName(item.getString("UTF-8"));
						
					}
					
					if ("pic".endsWith(name)) {
						teams.setPic(item.getString("UTF-8"));
						
					}
					
					if ("teamIntro".endsWith(name)) {
						teams.setTeamIntro(item.getString("UTF-8"));
						
					}
					
					if ("buildTime".endsWith(name)) {
						if(item.getString("UTF-8")!=null &&item.getString("UTF-8")!="") {
						
						teams.setBuildTime(Timestamp.valueOf(item.getString("UTF-8")));
						}
						
					}
					
					if ("buildStu".endsWith(name)) {
						teams.setBuildStu(item.getString("UTF-8"));
						
					}
					
					if ("auditType".endsWith(name)) {
						teams.setAuditType(item.getString("UTF-8"));
						
					}
					
					if ("members".endsWith(name)) {
						teams.setMembers(Integer.parseInt(item.getString("UTF-8")));
						
					}
					
					if ("remark".endsWith(name)) {
						teams.setRemark(item.getString("UTF-8"));
						
					}
                    
                }else{//如果fileitem中封装的是上传文件
                    //得到上传的文件名称,
                    String filename = item.getName();
                    System.out.println(filename);
			moneyManger.setSqlStr(stringBuffer.toString());
		}
		List<MoneyManger> moneys = moneyMangerService.findAll(moneyManger);
		double zhichu = 0.0;
		double shouru = 0.0;
		for (MoneyManger moneyManger2 : moneys) {
			if ("1".equals(moneyManger2.getType())) {
				zhichu += moneyManger2.getMoney();
			}else {
				shouru += moneyManger2.getMoney();
			}
		}
		request.setAttribute("zhichu", zhichu);
		request.setAttribute("shouru", shouru);
		
		request.getRequestDispatcher("/mui/welcome.jsp").forward(request, response);
	}

	//添加
	private void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		

		String newsType = request.getParameter("newsType");
		String title = request.getParameter("title");
		String pic = request.getParameter("pic");
		String shortContent = request.getParameter("shortContent");
		String content = request.getParameter("content");
		String createUser = request.getParameter("createUser");
		String createTime = request.getParameter("createTime");
		String isRun = request.getParameter("isRun");
		String belonTeam = request.getParameter("belonTeam");
		String isAudit = request.getParameter("isAudit");
		SiteNews siteNews = new SiteNews();
		siteNews.setNewsType(newsType);
		siteNews.setTitle(title);
		siteNews.setPic(pic);
		siteNews.setShortContent(shortContent);
		siteNews.setContent(content);
		siteNews.setCreateUser(createUser);
		siteNews.setIsRun(isRun);
		siteNews.setBelonTeam(belonTeam);
		siteNews.setIsAudit(isAudit);
		siteNewsService.add(siteNews);
		response.sendRedirect(contextPath+"/siteNews?method=list");
	}
	 * 		toUnderScoreCase("helloWorld") = "hello_world"
	 */
    public static String toUnderScoreCase(String s) {
        if (s == null) {
            return null;
        }

        StringBuilder sb = new StringBuilder();
        boolean upperCase = false;
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);

            boolean nextUpperCase = true;

            if (i < (s.length() - 1)) {
                nextUpperCase = Character.isUpperCase(s.charAt(i + 1));
            }

            if ((i > 0) && Character.isUpperCase(c)) {
                if (!upperCase || !nextUpperCase) {
                    sb.append(SEPARATOR);
                }
                upperCase = true;
            } else {
                upperCase = false;
            }

            sb.append(Character.toLowerCase(c));
        }

        return sb.toString();
    }
    
}

                }else{//如果fileitem中封装的是上传文件
                    //得到上传的文件名称,
                    String filename = item.getName();
                    System.out.println(filename);
                    if(filename==null || filename.trim().equals("")){
                        continue;
                    }
                    //注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,如:  c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt
                    //处理获取到的上传文件的文件名的路径部分,只保留文件名部分
                    filename = filename.substring(filename.lastIndexOf("\\")+1);
                    String suffix = filename.substring(filename.lastIndexOf("."));
                    filename=String.valueOf(System.currentTimeMillis()+suffix);
                    
                    //获取item中的上传文件的输入流
                    InputStream in = item.getInputStream();
                    //创建一个文件输出流
                    FileOutputStream out = new FileOutputStream(savePath + "\\" + filename);
                    //创建一个缓冲区
                    byte buffer[] = new byte[1024];
                    //判断输入流中的数据是否已经读完的标识
                    int len = 0;
                    //循环将输入流读入到缓冲区当中,(len=in.read(buffer))>0就表示in里面还有数据
                    while((len=in.read(buffer))>0){
                        //使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\" + filename)当中
                        out.write(buffer, 0, len);
                    }
                    //关闭输入流
                    in.close();
                    //关闭输出流
                    out.close();
                    //删除处理文件上传时生成的临时文件
                    item.delete();
 					msg = "文件上传成功!";
                    
                    siteNews.setPic(request.getContextPath()+"/upload" + "/" + filename);
                }
            }
            if (siteNews.getId()!=null && !"".equals(siteNews.getId())) {
    			siteNewsService.update(siteNews);
    		}else{
    			String username = CurrentUserUtils.getCurrentUser(request).getUsername();
    			siteNews.setCreateUser(username);
    			siteNewsService.add(siteNews);
    		}
    		response.sendRedirect(contextPath+"/siteNews?method=list&newsType="+siteNews.getNewsType());
        }catch (Exception e) {
            msg= "文件上传失败!";
        }
        //消息提示
        String msg = "";
        try{
            //使用Apache文件上传组件处理文件上传步骤:
            //1、创建一个DiskFileItemFactory工厂
            DiskFileItemFactory factory = new DiskFileItemFactory();
            //2、创建一个文件上传解析器
            ServletFileUpload upload = new ServletFileUpload(factory);
             //解决上传文件名的中文乱码
            upload.setHeaderEncoding("UTF-8"); 
            //3、判断提交上来的数据是否是上传表单的数据
            if(!ServletFileUpload.isMultipartContent(request)){
                //按照传统方式获取数据
                return;
            }
            //4、使用ServletFileUpload解析器解析上传数据,解析结果返回的是一个List<FileItem>集合,每一个FileItem对应一个Form表单的输入项
            List<FileItem> list = upload.parseRequest(request);
            for(FileItem item : list){
                //如果fileitem中封装的是普通输入项的数据
                if(item.isFormField()){
                    String name = item.getFieldName();
                     //解决普通输入项的数据的中文乱码问题
					if ("id".endsWith(name)) {
                    	if (item.getString("UTF-8")!=null && item.getString("UTF-8")!="") {
                    		user.setId(item.getString("UTF-8"));
						}
					}
					if ("username".endsWith(name)) {
						user.setUsername(item.getString("UTF-8"));
					}
					if ("password".endsWith(name)) {
						user.setPassword(item.getString("UTF-8"));
					}
					if ("pic".endsWith(name)) {
						user.setPic(item.getString("UTF-8"));
					}
					if ("role".endsWith(name)) {
						user.setRole(item.getString("UTF-8"));
					}
					if ("isBolck".endsWith(name)) {
						user.setIsBolck(item.getString("UTF-8"));
					}
                    
                }else{//如果fileitem中封装的是上传文件
                    //得到上传的文件名称,
                    String filename = item.getName();
                    System.out.println(filename);
                    System.out.println(filename);
                    if(filename==null || filename.trim().equals("")){
                        continue;
                    }
                    //注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,如:  c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt
                    //处理获取到的上传文件的文件名的路径部分,只保留文件名部分
                    filename = filename.substring(filename.lastIndexOf("\\")+1);
                    
                    String suffix = filename.substring(filename.lastIndexOf("."));
                    filename=String.valueOf(System.currentTimeMillis()+suffix);
                    //获取item中的上传文件的输入流
                    InputStream in = item.getInputStream();
                    //创建一个文件输出流
                    FileOutputStream out = new FileOutputStream(savePath + "\\" + filename);
                    //创建一个缓冲区
                    byte buffer[] = new byte[1024];
                    //判断输入流中的数据是否已经读完的标识
                    int len = 0;
                    //循环将输入流读入到缓冲区当中,(len=in.read(buffer))>0就表示in里面还有数据
                    while((len=in.read(buffer))>0){
                        //使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\" + filename)当中
                        out.write(buffer, 0, len);
                    }
                    //关闭输入流
                    in.close();
                    //关闭输出流
                    out.close();
                    //删除处理文件上传时生成的临时文件
                    item.delete();
 					msg = "文件上传成功!";
                    
                    teams.setPic(request.getContextPath()+"/upload" + "/" + filename);
 					//teams.setPic(savePath.substring(savePath.lastIndexOf("\\")) + "\\" + filename);
                }
            }
						try {
				teams.setPic(teams.getPic().replace("/team",""));
			} catch (Exception e) {
				e.printStackTrace();
			}
            if (teams.getId()!=null && !"".equals(teams.getId())) {
    			teamsService.update(teams);
    		}else{
    			teams.setBuildTime(new Date());
    			teamsService.add(teams);
    		}
							if((s.getLoginName()+"").equals(student.getLoginName())){
								System.out.println(msg="帐号已存在!!!");
								System.out.println(msg);
								System.out.println(msg);
								System.out.println(msg);
								System.out.println(msg);
								throw new RuntimeException(msg);
							}
						}
					}
					
					if ("loginPassword".endsWith(name)) {
						student.setLoginPassword(item.getString("UTF-8"));
						
					}
					
					if ("regitTime".endsWith(name)) {
						student.setRegitTime(new Date());
						
					}
					
					if ("auditType".endsWith(name)) {
						student.setAuditType(item.getString("UTF-8"));
						
					}
					
					if ("stuName".endsWith(name)) {
						student.setStuName(item.getString("UTF-8"));
						
					}
					
					if ("sex".endsWith(name)) {
						student.setSex(item.getString("UTF-8"));
						
					}
					
					if ("schoolRoom".endsWith(name)) {
						student.setSchoolRoom(item.getString("UTF-8"));
						
					}
					
					if ("classRoom".endsWith(name)) {
						student.setClassRoom(item.getString("UTF-8"));
						
					}
					
					if ("phone".endsWith(name)) {
						student.setPhone(item.getString("UTF-8"));
						
					}
					
					if ("pic".endsWith(name)) {
						student.setPic(item.getString("UTF-8"));
						
		String id = request.getParameter("id");
		User user = new User();
		if (id!=null && id!="") {
			user = userService.getById(id);
		}
		request.setAttribute("user", user);
		List<Role> findAll = roleService.findAll(new Role());
		request.setAttribute("roles", findAll);
		request.getRequestDispatcher("/views/system/userForm.jsp").forward(request, response);
	}
	
}

@WebServlet("/menu")
public class MenuController extends HttpServlet {

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 大学社团管理系统社团管理系统 很早之前学习时的第一个项目,sql文件丢失了,手动写了几个,如需要达到理想的界面展示,需要手动添加一些数据。 更新,部分代码由于不是本人所写,没有上传,导致部分功能不能使用。所有代码仅供参考。项目目前不能友好的跑起来,见谅。 背景 是为了迎合学校“百团大战”(一种每年都有的社团迎新活动),为社团迎新开发的管理系统。方便学生浏览申请参加各种社团,同时方便管理者对各社团发送通知,下发文件等管理。 运行环境 JDK1.7编写 Eclipse( Neon.3 Release (4.6.3)) windows下 Tomcat v8.5 Mysql 5.5 使用技术 Java servlet & jsp Mysql 数据库 c3p0连接池 封装Page类 用以数据库分页 JavaScript & jQuery 使用bootstrap搭建前端展示界面 实现的功能 前端展示 普通用户登录、注册。保证用户名唯一性,不可重复。 登录前可以查看各种分类的社团的概要,简介等信息,还有最近各社团将要举行的各种活动的时间地点,活动标题等活动公告。 登录后可以查看、修改个人信息、密码等。 管理员登录后台后,后台登录URL [http://localhost/shetuan/admin_login.jsp] 用户管理,添加用户(根据账号修改普通用户的密码或权限),更新当前账号密码、查看用户列表(可以查看用户详细信息及加入或创建的社团信息,可对用户的个人信息进行修改、删除)。 社团管理,添加社团,查看社团列表(可以查看某一个社团的具体信息,进行编辑或删除),查看社团活动信息(可以查看社团活动详情,进行编辑或删除)。 审核管理,创建社团审批,创办活动审批。 社联新闻,添加社联新闻,更新社联新闻。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值