您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 商业计划书 > JSP课设报告——大学生社团管理系统
网站开发与管理课程设计报告题目:学生社团管理系统专业信管班级091姓名陈巧玲学号3090561010指导教师李建勋完成日期2012-06-292012年春季学期2一、系统需求分析随着大学生社团数量增多和加入到社团的人数越来越多,成员资料变动教多。手工对大学生社团进行管理已经显得比较复杂和低效率。如何能提高管理大学生社团的工作效率,快速、方便的添加删除以及查询各类信息并维护系统的安全性确保数据的正确性,减轻手工管理大学生社团的难度是大学生社团管理系统的目标及任务所在。高校社团管理主要是社团基本信息(社团介绍、社员信息)的管理。所以本系统主要包括如下几个功能:信息查询功能、数据维护功能、系统维护功能。各功能的具体作用如下:1.信息查询功能可以查询社团的基本信息和登陆者的基本信息。2.数据维护功能主要是维护成员和指导老师也就是管理员的信息。包括向数据库添加、修改、删除成员各项信息。如成员资料的查询、修改等。添加成员本想在登陆界面添加一个“注册”项,但是由于时间的问题,没有完成此功能。3.系统维护功能可以修改用户资料,可以修改用户名以及密码。4.身份验证功能本系统为了保护数据,引入多用户管理机制,特对用户设置了不同的权限,有两个级别,1、管理员级别,可以对本系统所有的功能进行操作2、普通学生,只具有一般的信息查询能力和修改自己信息和密码。为了达到权限分级的目的,系统管理员对所有用户赋予不同的权限、用户名、密码,当用户要使用系统之前要进行身份认证,系统要求输入用户名和密码,然后将用户名和密码于数据库中的分组用户资料进行核对,核对正确之后才可以进入系统,并根据不同的权限显示不同的操作范围。系统用户分组情况如下表:用户分组对应的用户群体教师用户系统维护人员及其授权下的主管下的主管教师普通学生社团其他会员3二、系统实现目标系统主要提供了对学生社团管理平台。借助B/S模式,学生可以访问浏览社团各种信息,加强了学生与社团之间的联系,取得了较好的社会效益。基于B/S模式的信息管理系统是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使使用者不受地域的局限。一个完备的学生社团管理系统可以使学生在任一台接入校园网或Internet的计算机上,浏览社团信息,查看各社团组织的各种活动,这将大大的激发学生的兴趣,使在校大学生能力、个性得以全面的培养。为了适应新形势的发展,所以设计了社团管理系统,希望它能够发挥高效、便捷的作用,达到简化管理、面向学生的目的。主要设计原则是结合计算机网络应用技术的特点,该项目采用现在流行的B/S架构,框架使用MVC模式。并结合JSP,Servlet,JavaBean等相关技术来设计页面前台和控制层,用Access实现数据库部分。系统流程图如下:4系统功能模块图如下:四、系统实现数据库设计如下:共有五个表用户表、管理员表、学生信息表、社团信息表、选择社团表选择社团表:学号、社团编号、职位5社团信息表:社团编号、社团名称、成立时间、社团人数、主要活动、指导老师管理员表:管理员编号、姓名、性别、年龄、民族、学历、电话、家庭住址、E_mail学生信息表:学号、姓名、性别、年龄、专业、电话6用户表:用户编号、用户密码所有项目如下:main.jsp主界面用三个表单将页面分成三部分,上面显示标题,左面是操作,右面是显示部分。mainleft.jsp有两个超链接,一个是查看社团信息页面corporation.jsp,一个是登陆页面land.jsp。mainright.jsp加入背景,什么都不做。corporation.jsp查看社团信息页面从数据库查询数据,显示所有社团信息。7land.jsp登陆界面登陆界面,有一个用户名和密码输入框,并选择权限。landcheck.jsp登陆检查界面登陆信息确认界面。通过调用数据库数据查询用户名和密码是否正确。并检查权限,权限是管理员则跳转到administrator.jsp页面,权限是一般用户则跳转到generaluser.jsp页面。administrator.jsp管理员界面在此页面显示个人信息。修改个人信息modifyperinfo.jsp修改密码modifypass.jsp查看社团信息seecorporationinfo.jsp修改社团信息modifycorinfo.jsp增加社团信息addcorinfo.jsp删除社团信息removecorinfo.jspmodifyperinfo.jsp修改个人信息界面连接数据库将数据库信息显示在input输入框作为默认值,在此基础上修改信息。可以避免每一项都要修改麻烦。主要是界面设计。form表单的action为modifyperinfocheck.jsp进行修改检查。modifyperinfocheck.jsp修改个人信息检查界面。连接数据库,更新数据。更新成功则跳转到administrator.jsp界面。modifypass.jsp修改密码界面界面只有一个输入框,确定和取消按钮。modifypasscheck.jsp修改密码确认界面连接数据库,更新数据。更新成功则跳转到administrator.jsp界面。seecorporationinfo.jsp查看社团信息界面连接数据库将数据库社团信息显示在表中。modifycorinfo.jsp修改社团信息界面连接数据库将数据库信息显示在input输入框作为默认值,在此基础上修改信息。可以避免每一项都要修改麻烦。主要是界面设计。form表单8的action为modifycorinfocheck.jsp进行修改检查。modifycorinfocheck.jsp修改社团信息界面连接数据库,更新数据。更新成功则跳转到administrator.jsp界面。addcorinfo.jsp增加社团信息(未完成)removecorinfo.jsp删除社团信息(未完成)generaluser.jsp一般用户界面显示登录的一般用户的信息。修改个人信息modifystudentinfo.jsp。修改密码modifypass.jsp和前面的相同。modifystudentinfo.jsp修改一般用户界面连接数据库将数据库信息显示在input输入框作为默认值,在此基础上修改信息。可以避免每一项都要修改麻烦。主要是界面设计。form表单的action为modifystudentinfocheck.jsp进行修改检查。modifystudentinfocheck.jsp修改用户信息确认界面连接数据库,更新数据。更新成功则跳转到administrator.jsp界五、系统配置在设置-控制面板-管理工具-数据源-添加shetuan数据库。运行主界面9查看社团信息登录界面10登录后进入管理员界面修改个人信息11确认修改修改密码12确认修改查看社团信息13修改社团信息修改信息确认界面14一般用户登录查看个人信息15修改个人信息确认16修改密码确认17六、系统维护与扩展这次做的社团管理系统虽然投入了大量时间和精力,但是任然存在诸多不足,现总结归纳如下:1、不知道什么原因,界面加载的比较慢。网上有人给方案,1、把每个sql写在数据库中,用plsql。或是把java代码全放在plsql中,最后从plsql中传个集合到jsp页面,只需连接一次数据库。2、如果是同一个页面需要多次访问,并且数据不是经常在变,可以把页面缓存到服务器的内存中,比如OSCache技术。3、考虑用存储过程。4、封装一下,使用连接池。虽然我发现了这个问题,也在网上浏览了一下相关的帖子,但是,由于能力有限,还是不能解决这个问题。2、功能没有全部实现。选好可设题目以后,我就从系统要实现的功能开始计划。想到了社团管理系统的完备的功能。现在没有实现的功能如下:1、设置社团负责人权限,主要管理社团成员的信息。如增加社团成员信息,删除社团成员信息。发起社团活动和管理活动结束等。2、管理员是超级用户,他的权限应该是最全的,最大的。但是我现在完成的功能还欠缺增加社团成员,删除社团成员。管理员的设计原则就是一个老师负责一个社团,但在增加社团和删除社团的功能仍有一些不妥之处。3、细节性的工作没有涉及。社团管理系统,如果考虑的周全做得功能完备的话,它应该提供所有社团之间信息交流、共享资源,充分利用各个资源的强大的管理系统。这一次课程设计由于时间不是很充分,所以,并没有考虑细节的问题。如果将各个社团的资源如音响设备、投影仪设备、礼仪服装、资金等信息都可以在系统中记录,各社团负责人可以登录系统查询预订。那么会省去很多麻烦的事情。既可以让各社团及时使用设备,又可以让各个社团的东西共享。4、没有提供各社团之间以及社团和负责的老师之间的信息交流平台。很多社团活动都需要先跟老师沟通,先遵照老师的意见决定是否开展18然后在后续举办的过程中,申请举办时间、地点、桌椅板凳等物品又需要和老师沟通。如果能给老师和社团负责人之间搭建一个平台用于交流这些信息则会节省很多时间。人在工作中的70%的时间都用于沟通,所以,如果能设计可用、实用的渠道,可以让老师处理社团事情的时间分散,让学生也可以省去预约老师、等待老师的麻烦。七、心得体会这次的课程设计,我做了两周。虽然效果不是很让人满意,但是我基本完成了需要完成的功能。也在做课程设计的同时又温习了一下JSP相关知识以及SQL语句。我觉得我在这次课程设计时比较成功的事情就是思维不局限在老师给的范例里面。我不断的想要添加新的元素在我的系统里面。我想做一个分权限的登录界面,我就要去实现它。我在这学期的课堂上学习的课程不是很扎实,所以,我有问题就会努力的在网上查资料解决问题。我就这次做课程设计总结一下出现的比较多的问题是:1、java.lang.NULLPointerException.空指针异常的问题。这一类问题大都是对象或者变量的值为空导致,一开始的时候不清楚为什么。出现的这个问题多了,我总结出我出现这个问题的主要原因就是获取上一个JSP页面的输入时把变量名写错了。或者是一个页面要获取上一个页面的信息,如果直接运行这个页面的话就接收不到数据,提示这样的错误。2、ColumnnotFound.字段没有找到。就是写的程序中有几个字段不认识,这种问题出现的主要原因是从数据库中取出来的字段字名和你数据库中的字段不一致。主要是粗心所致。但是在这个问题上我还走了不少弯路。因为各个字段写的都是英语,所以不是太容易能发现错误。3、跳转时出现空白页,并且没有任何反应。第一次出现这个问题的时候,上网查有人说是页面在加载,等一下就好了。可是等了一下还是没有出现反应。后来用out.println();输出信息,才锁定目标。其实是因为要做某些条件判断然后跳转到不同的页面,在if语句中的有response.sendRedirect();语句。但是一般是由于在数据库中查数据或修改数19据并未成功,所以没有进入到if语句中,又没有写配套的else语句。所以就出现了这样的问题。虽然我出现的问题可能都比较简单,但是,我想有必要记下来,让自己在以后不要犯类似的低级错误。八、参考文献[1]耿祥义,张跃平.《JSP实用教程》.清华大学出版社[2]BrueeEckel.《JSP编程思想》.机械工业出版社[3]孙一林,彭波.《JSP数据库编程实例》.清华大学出版社
本文标题:JSP课设报告——大学生社团管理系统
链接地址:https://www.777doc.com/doc-4223400 .html