基于AS2SH的大学生综合素质评测系统的设计与实现_第1页
基于AS2SH的大学生综合素质评测系统的设计与实现_第2页
基于AS2SH的大学生综合素质评测系统的设计与实现_第3页
基于AS2SH的大学生综合素质评测系统的设计与实现_第4页
基于AS2SH的大学生综合素质评测系统的设计与实现_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于AS2SH的大学生综合素质评测系统的设计与实现摘要:目前的大学生综合素质评测系统存在一定的片面性、局限性以及不稳定性,针对这些问题,本文提出了采用当前主流的S2SH轻量级J2EE框架技术,并有效结合 Ajax 异步通信技术来优化设计并实现大学生评测系统。实践证明该系统不仅具有良好的可维护性、可扩展性和可移植性,而且用户体验良好。论文关键词:S2SH,Ajax,大学生评测,设计与实现传统的大学生综合素质评测一般是通过书面问答或者实际调查的方式来进行,随着网络信息技术的快速开展,传统的评测方式已经不能满足当前教学管理的需求,为进一步提高大学生综合素质评测的效率,减轻学生处工作人员的压力,开发一

2、个高效、智能的大学生综合素质评测系统是非常必要的。本文采用当前主流的S2SHStruts2+Spring+Hibernate轻量级J2EE框架技术以及Ajax异步通信技术来优化设计并实现大学生综合素质评测系统。同时,通过采用加权平均算法策略使大学生综合素质评测结果更加科学、准确,这进一步提高了大学生综合素质评测效率,缩短了评测时间。1相关技术简介1.1 Ajax技术Ajax是一种创立交互式网页应用的网站前端开发技术,其核心是JavaScript对象XmlHttpRequest。Ajax主要提供与效劳器异步通信的能力,从而使用户从请求/响应的循环中解脱出来。借助于Ajax可以在用户单击按钮时使用

3、JavaScript和DHTML立即更新UI,并向效劳器发出异步请求,以执行更新或查询数据库的操作。当请求返回时,就可以使用基金工程:四川文理学院2021年大学生科学研究工程(X2021Z002);四川省教育厅2021年一般工程(11ZB269)JavaScript和CSS来相应地更新UI,而不是刷新整个页面。最重要的是,用户甚至不知道浏览器正在与效劳器通信【1】。因而使用Ajax可以构建更为动态和响应更灵敏的Web应用程序,更能提高系统性能,优化用户界面。1.2 Struts2技术Struts2一种Java-Web的MVC框架技术【2】。它使用了WebWork的设计核心,采用拦截器的机制来处

4、理用户的请求,从而使得用户的业务逻辑控制器与Servlet API别离。Struts2为了让Web开发变得更加容易,与Struts1相比它提供了更多新特性,比方智能的默认设置、annotation的使用以及惯例重于配置;原那么的应用等,这一切都大大减少了XML繁琐的配置。总的来说,Struts2是整合了 WebWork 与 Struts1 优点,并且是更加优雅、扩展性更强的优秀框架。1.3 Spring技术Spring是一个轻量级的IoC(Inversion of Control)和AOP(Aspect Oriented Programming)的容器框架。它将简单的组件配置组合成为复杂的应用

5、【3】。提供了事务管理、持久化框架集成等很多根底功能,它将应用逻辑的开发留给了开发人员。且致力于提供一个以统一的、高效的方式构造整个应用,将单层框架以最正确的组合揉和在一起建立一个连贯的体系。可以说Spring是一个提供更完善开发环境的框架,可以为POJO(Plain Old Java Object)对象提供企业级的效劳。1.4 Hibernate技术Hibernate是对JDBC进行轻量级封装的O/R Mapping框架。它使得开发人员可以随心所欲的使用面向对象编程思维来操纵数据库。Hibernate能应用在任何使用JDBC的场合,它既可以在Java的客户端程序使用,也可以在Servlet/

6、JSP的Web应用中使用。实际上,Hibernate是用来把对象模型表示的对象映射到基于SQL的关系模型结构中,为面向对象的领域模型到传统的关系型数据库的映射提供了一个使用方便的持久框架。2评测系统的设计2.1评测策略设计本系统采用了三级评测体系,一级为学生用A1表示,二级为教师且有任课教师和辅导员之分用A2表示,三级为领导用A3表示。由于每一级的侧重点有所不同,因而所占比例也不一样【4】。本系统设有四项评测内容,它们分别是学生的思想品德、心理健康、身体素质、专业情况,各评测内容所占比例是不同的,并且不同角色所评测的具体内容所占权重也不一样。为了能够从评测过程后获得相应信息,系统采用加权平均算

7、法对各项评测内容的结果进行相关计算,具体算式为Score=A1*30%+A2*55%+A3*15%,A2中任课教师占30%,辅导员占70%。其中,三等级的权重分别为:一级A1权重占30%;二级A2权重占50%;三级A3权重占20%。根据最后计算的分数,可以得到对应学生在该评测系统中思想评测、心理评测、身体评测、专业评测的总分数,分别用B1、B2、B3、B4来表示,然后再按照这四方面评测所占比例不同来计算总分,具体算式为ScoreA=B1*30%+B2*15%+B3*15%+B4*40%,这样就可以计算出该学生的评测总分。同时,本系统还采用了Web数据挖掘方式来获取学生在学习和生活上的加分信息,

8、总计加分用ScoreB表示,最后将评测总分ScoreA和加分总数ScoreB的70%合计便得到最终评测分数,其表达式为ScoreF=ScoreA+ScoreB*70%。2.2系统总体设计本系统分为前台和后台,前台主要是学生、教师、领导对学生进行一些评测操作,而后台那么主要是管理员对学生、教师、领导、试题的CRUDCreate、Read,Update、Delete操作,具体如下列图1所示。图1 系统总体功能图前台有学生、教师和领导三种用户,系统通过账号来区分他们的身份。不同身份的用户在前台都可以上传自己头像,浏览学生相关信息,也可以通过模糊搜索来查询学生,并予以评测。当学生登录后,可以编辑个人信

9、息供其他人评测参考,同时可以看到自己被评测的情况以三维柱状效果图显示,还可以根据自己的喜好选择以怎样的图形来显示自己的评测结果。学生可以根据自己的综合素质评测分数,有针对性的咨询相关专业人员,学生还可以有选择性的学习相关视频、浏览相关新闻,以便进一步提高自身综合素质。后台主要是管理员对学生、教师和领导进行有权限的添加、修改、删除和对试题的添加、删除、查看,对学生、教师和领导的信息进行模糊或精确的搜索,然后生成相关列表,最后将列表信息以文档形式生成,利用打印机将其打印出来。同时后台管理员还需要定期更新有关学生综合素质教育视频,这样更有利于学生提升综合素质能力。2.3系统架构设计本系统充分利用J2

10、EE轻量级开源框架的特点,采用现在主流的S2SH框架技术以及Ajax技术来实现,并采用改良的三层架构设计模式来搭建。其中,系统表示层采用Struts2 技术来完成,主要实现系统中控制器和视图局部;系统持久层通过 Hibernate 技术来完成,它使开发者可以以面向对象编程的方式来操作数据库,其中后台数据库使用 Mysql关系数据库工具来创立;系统业务层使用 Spring 技术来负责,它主要完成两方面任务:第一是通过调用 DAO 类来实现业务逻辑,第二是编写Server方法, 最后利用 Spring的IoC容器功能来有机整合系统表示层、业务层和持久层,并通过Ajax技术实现客服端和效劳器端异步通

11、信,具体如下列图2所示【5】。3评测系统的实现3.1表示层学生、教师、领导登录系统后可以对相关同学或学生进行评测,评测类型共有四种,分别是思想评测thinking、心理评测heat、身体评测body、专业评测major。每种类型提供十余个问题,学生、教师、领导通过相应的选择得出评测总分,并提交数据库。当被评用户登录后会显示评测详情,假设此人还未被评测那么显示暂无评测;,其核心代码如下。生成柱状图的代码:CategoryDataset dataset = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);Font

12、font = new Font(宋体, Font.BOLD, 17);JFreeChart chart = ChartFactory.createBarChart3D(大学生综合素质评测统计,评测类型, 得分情况, dataset, PlotOrientation.VERTICAL, true,false, false);CategoryPlot plot = chart.getCategoryPlot();chart.getTitle().setFont(font);NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();rangeAx

13、is.setStandardTickUnits(NumberAxis.createIntegerTickUnits();rangeAxis.setLabelFont(font);CategoryAxis domainAxis = plot.getDomainAxis();domainAxis.setLabelFont(font);BarRenderer3D renderer = new BarRenderer3D();显示柱状图的代码:request.getAttribute(jfreechart), 500, 300, null, session);String graphURL = req

14、uest.getContextPath()+/DisplayChart?filename= + filename;%暂无评价具体运行效果如下列图3所示。图3 评测结果3D柱状图3.2业务逻辑层评测一个学生需要对一些试题进行选择,而这些试题那么是通过系统后台的试题管理模块进行添加的,管理员通过将试题及试题选项录入数据库,从而使得学生、教师或领导在对被评测人做出相应的评测时能及时地从数据库中提取试题并作出相应的选择,然后提交被评测人的对应素质成绩。其添加试题关键代码如下:public void addtest(TestQuestionVo test,EvaluateType evaluateTyp

15、e)TestQuestion testq=new TestQuestion();testq.setTitle(test.getTitle();testq.setAnswerA(test.getAnswerA();testq.setAnswerDValue(test.getAnswerDValue();testq.setEvaltypeid(evaluateType);testQuestionDao.addtest(testq);当学生登录系统时,系统就会在后台采用加权平均算法统计该学生思想素质、心理素质、身体素质、专业素质的各个成绩以及该学生的最后总成绩。然后分别以3D柱状体和3D饼状图显示。

16、其统计分数的局部关键代码如下:public double getallOneSroce(List list,Student stu)double Score=0.0;double xuesheng=getOneStuOrTeaSroce(list,stu,0);double jiaoshi=getOneStuOrTeaSroce(list,stu,1);double fdyuan=getOneStuOrTeaSroce(list,stu,2);if(xuesheng!=0jiaoshi!=0 fdyuan!=0)Score=(xuesheng*2)/10+(jiaoshi*3)/10+( fd

17、yuan *5)/10;return Score;else if(xuesheng!=0jiaoshi=0fdyuan=0)Score=(xuesheng*9)/10; return Score;else if(xuesheng=0jiaoshi!=0fdyuan=0)Score=(jiaoshi*8.5)/10; return Score;else if(xuesheng=0jiaoshi=0fdyuan!=0)Score=( fdyuan *8)/10; return Score;elsereturn 0;3.3数据持久层在数据持久层中,本系统采用Hibernate技术来实现各类业务数据与

18、数据库中数据进行交互,并以面向对象的方式来操作各类数据,以下是评测系统中的数据持久类以学生为例。其局部代码如下【6】:public List evalNoStudent(Student stu)String hql=from Student where sentrancetime=+stu.getSentrancetime()+ and grade=+stu.getGrade()+ and snumber!=+stu.getSnumber();list=baseDao.getObjectList(hql);public List getObjectList(String hql) list = this.getHibernateTemplate().find(hql);在用户注册时,一般情况下账号必须是唯一的,本系统通过Ajax技术来验证用户账号是否唯一。其局部代码如下:public Student validateStudentNo(String stuid)String

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论