基于javaweb+mysql的高校学生会社团管理系统(前台、后台)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
前台:用户注册登陆、个人中心的管理(成立社团、加入的社团、申请加入社团、申请加入活动等)、社团列表、社团风采、社团活动、新闻列表以及留言板功能;
后台管理页面主要有:注册登陆、个人中心、系统管理(用户管理、角色管理、菜单管理、新闻管理、留言管理)、社团管理(财务管理、社团列表、社团风采、社团活动、活动申请、学生管理、社团申请)等几大块
前台
后台:
技术框架
JSP Servlet MySQL JDBC Tomcat CSS JavaScript jstl
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
Page<Student> page = new Page<Student>();
//设置查询页
String pageNoStr = request.getParameter("pageNo");
if (pageNoStr != null && pageNoStr != "") {
page.setPageNo(Integer.parseInt(pageNoStr));
}
//设置查询条件
String loginName = request.getParameter("loginName");
if (loginName != null && loginName != "") {
student.setLoginName(loginName);
request.setAttribute("loginName", loginName);
}
String loginPassword = request.getParameter("loginPassword");
if (loginPassword != null && loginPassword != "") {
student.setLoginPassword(loginPassword);
request.setAttribute("loginPassword", loginPassword);
}
String auditType = request.getParameter("auditType");
if (auditType != null && auditType != "") {
student.setAuditType(auditType);
request.setAttribute("auditType", auditType);
}
String stuName = request.getParameter("stuName");
if (stuName != null && stuName != "") {
student.setStuName(stuName);
request.setAttribute("stuName", stuName);
}
}
request.setAttribute("teams", teams);
request.getRequestDispatcher("/views/team/teamsForm.jsp").forward(request, response);
}
}
package com.so.team.controller;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Timestamp;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
<label for="recordPropertyAgeId" class="input">Approx. Age of Home:</label>
<select name="recordPropertyAgeId" id="recordPropertyAgeId" class="inputclass">
<option value="">-Select-</option>
<option value="1">Less Than 1 year</option>
<option value="2">1-5 years</option>
<option value="3">6-10 years</option>
<option value="4">11-15 years</option>
<option value="5">More than 15 years</option>
</select>
<br>
<label for="recordPropertySqFt" class="input">Approx. Square Footage:</label>
<input name="recordPropertySqFt" id="recordPropertySqFt" class="inputclass" maxlength="254">
<br>
<div class="buttonWrapper">
<input name="formBack0" type="button" class="open0 prevbutton" value="Back" alt="Back" title="Back">
required : true
},
acStartTime : {
required : true
},
acEndTime : {
required : true
}
},
messages : {
title : {
required : "主题必填"
},
acStartTime : {
required : "活动起始时间必填",
},
acEndTime : {
required : "活动截止时间必填",
}
}
siteNews.setIsRun(isRun);
request.setAttribute("isRun", isRun);
}
String belonTeam = request.getParameter("belonTeam");
if (belonTeam != null && belonTeam != "") {
siteNews.setBelonTeam(belonTeam);
request.setAttribute("belonTeam", belonTeam);
}
String isAudit = request.getParameter("isAudit");
if (isAudit != null && isAudit != "") {
siteNews.setIsAudit(isAudit);
request.setAttribute("isAudit", isAudit);
}
//判断提示信息
Object msg = request.getSession().getAttribute("msg");
if (msg != null) {
request.setAttribute("msg", msg.toString());
request.getSession().removeAttribute("msg");
}
<script src="../../../jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script src="../jquery.treeTable.js" type="text/javascript"></script>
<!--引用的文件 End-->
<script type="text/javascript">
$(function(){
var option = {
theme:'vsStyle',
expandLevel : 2,
beforeExpand : function($treeTable, id) {
//判断id是否已经有了孩子节点,如果有了就不再加载,这样就可以起到缓存的作用
if ($('.' + id, $treeTable).length) { return; }
//这里的html可以是ajax请求
var html = '<tr id="8" pId="6"><td>5.1</td><td>可以是ajax请求来的内容</td></tr>'
+ '<tr id="9" pId="6"><td>5.2</td><td>动态的内容</td></tr>';
$treeTable.addChilds(html);
//解决普通输入项的数据的中文乱码问题
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"));
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Timestamp;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import com.so.system.bean.User;
import com.so.team.bean.TeamApplay;
import com.so.team.bean.Teams;
import com.so.team.dao.TeamApplayDao;
import com.so.team.service.TeamApplayService;
<input name="testForm18[text]" id="testForm18[text]" required>
</form>
<form id="testForm19">
<!-- test id/name containing $ -->
<input name="testForm19$text" id="testForm19$text" required>
</form>
<form id="dataMessages">
<input name="dataMessagesName" id="dataMessagesName" class="required" data-msg-required="You must enter a value here">
</form>
<div id="simplecontainer">
<h3></h3>
</div>
<div id="container" style="min-height:1px"></div>
<ol id="labelcontainer"></ol>
<form id="elementsOrder">
<select class="required" name="order1" id="order1">
<option value="">none</option>
</select>
<input class="required" name="order2" id="order2">
<input class="required" name="order3" type="checkbox" id="order3">
<input class="required" name="order4" id="order4">
<input class="required" name="order5" type="radio" id="order5">
Message message = new Message();
//分页有关
Page<Message> page = new Page<Message>();
//设置查询页
String pageNoStr = request.getParameter("pageNo");
if (pageNoStr != null && pageNoStr != "") {
page.setPageNo(Integer.parseInt(pageNoStr));
}
//设置查询条件
String createStus = request.getParameter("createStu");
Student findByName = messageService.findByName(createStus);
String createStu="";
if(findByName!=null) {
createStu = findByName.getId();
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA" selected="selected">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
file.mkdir();
}
//上传到服务器硬盘上,保证重启tomcat不会丢失文件
//获取上传文件的路径
// 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");
form(request, response);
}else if ("save".equals(method)) {
save(request, response);
}else if ("main".equals(method)) {
main(request, response);
}
}
/**
* 跳转到主页
* @param request
* @param response
* @throws IOException
* @throws ServletException
*/
private void main(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//查出最新的6条活动内容 2是活动
SiteNews siteNews = new SiteNews();
siteNews.setIsAudit("1");
siteNews.setNewsType("2");
Integer acNum = siteNewsService.findAll(siteNews).size();
request.setAttribute("acNum", acNum);//返回活动数
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA" selected="selected">Pennsylvania</option>
<option value="RI">Rhode Island</option>
student.setPic(request.getContextPath()+"/upload" + "/" + filename);
}
}
if (student.getId()!=null && !"".equals(student.getId())) {
studentService.update(student);
request.setAttribute("msg","修改成功");
request.getSession().setAttribute("flogin", student);
request.getRequestDispatcher("/front/userInfo.jsp").forward(request, response);
}else{
studentService.add(student);
request.setAttribute("msg","注册成功");
request.getRequestDispatcher("/front/regit.jsp").forward(request, response);
}
}catch (Exception e) {
msg= "注册失败!";