欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 毕业论文 > 计算机毕业论文

基于AS2SH的大学生综合素质评测系统的设计与实现

时间:2015-08-23  作者:黄大秀梁弼
其中,系统表示层采用Struts2 技术来完成,主要实现系统中控制器和视图部分;系统持久层通过 Hibernate 技术来完成,它使开发者可以以面向对象编程的方式来操作数据库,其中后台数据库使用 Mysql关系数据库工具来创建;系统业务层使用 Spring 技术来负责,它主要完成两方面任务:第一是通过调用 DAO 类来实现业务逻辑,第二是编写Server方法, 最后利用 Spring的IoC容器功能来有机整合系统表示层、业务层和持久层,并通过Ajax技术实现客服端和服务器端异步通信,具体如下图2所示[5]。

 

3评测系统的实现

3.1表示层

学生、教师、领导登录系统后可以对相关同学或学生进行评测,评测类型共有四种,分别是思想评测(thinking)、心理评测(heat)、身体评测(body)、专业评测(major)。每种类型提供十余个问题,学生、教师、领导通过相应的选择得出评测总分,并提交数据库。当被评用户登录后会显示评测详情,若此人还未被评测则显示“暂无评测”,其核心代码如下。

生成柱状图的代码:

CategoryDataset dataset = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);

Font 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();

rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

rangeAxis.setLabelFont(font);

CategoryAxis domainAxis = plot.getDomainAxis();

domainAxis.setLabelFont(font);

BarRenderer3D renderer = new BarRenderer3D(){};

显示柱状图的代码:

<%String filename=ServletUtilities.saveChartAsPNG((JFreeChart)

request.getAttribute(jfreechart), 500, 300, null, session);

String graphURL = request.getContextPath()+'/DisplayChart?

filename=' + filename;%>

暂无评价

具体运行效果如下图3所示。

基于AS2SH的大学生综合素质评测系统的设计与实现

图3 评测结果3D柱状图

3.2业务逻辑层

评测一个学生需要对一些试题进行选择,而这些试题则是通过系统后台的试题管理模块进行添加的,管理员通过将试题及试题选项录入数据库,从而使得学生、教师或领导在对被评测人做出相应的评测时能及时地从数据库中提取试题并作出相应的选择,然后提交被评测人的对应素质成绩。其添加试题关键代码如下:

public void addtest(TestQuestionVo test,EvaluateType evaluateType){

TestQuestion testq=new TestQuestion();

testq.setTitle(test.getTitle());

testq.setAnswerA(test.getAnswerA());

……

testq.setAnswerDValue(test.getAnswerDValue());

testq.setEvaltypeid(evaluateType);

testQuestionDao.addtest(testq);}

当学生登录系统时,系统就会在后台采用加权平均算法统计该学生思想素质、心理素质、身体素质、专业素质的各个成绩以及该学生的最后总成绩。然后分别以3D柱状体和3D饼状图显示。其统计分数的部分关键代码如下:

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!=0&&jiaoshi!=0&& fdyuan!=0){

Score=(xuesheng*2)/10+(jiaoshi*3)/10+( fdyuan *5)/10;

return Score;

}else if(xuesheng!=0&&jiaoshi==0&&fdyuan==0){

Score=(xuesheng*9)/10; return Score;

}else if(xuesheng==0&&jiaoshi!=0&&fdyuan==0){

Score=(jiaoshi*8.5)/10; return Score;

}else if(xuesheng==0&&jiaoshi==0&&fdyuan!=0){

Score=( fdyuan *8)/10; return Score;

}else{return 0;}}

3.3数据持久层

在数据持久层中,本系统采用Hibernate技术来实现各类业务数据与数据库中数据进行交互,并以面向对象的方式来操作各类数据,以下是评测系统中的数据持久类(以学生为例)。其部分代码如下[6]:

public List evalNoStudent(Student stu){……

String hql='from Student where sentrancetime='+stu.getSentrancetime()

+' and grade='+stu.getGrade()+' and snumber!='+stu.

查看相关论文专题
加入收藏  打印本文
上一篇论文:基于ADO.NET的XML与数据库数据交换
下一篇论文:基于人体切片的三维人体建模研究
毕业论文分类
行政管理毕业论文 工商管理毕业论文
护理毕业论文 会计毕业论文
会计专业毕业论文 英语专业毕业论文
大学毕业论文 硕士毕业论文
计算机毕业论文 市场营销毕业论文
物流管理毕业论文 法学毕业论文
相关计算机毕业论文
最新计算机毕业论文
读者推荐的计算机毕业论文