毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

java综合测评系统框架图+源代码+论文 第9页

更新时间:2009-3-22:  来源:毕业论文
Java applet研究与应用
该模块类也是继承自java.awt包中的的Frame类。首先将进行“新口令”与“确认新口令”的核对,如果两者相同,将进行用户合法性检查。如果是合法用户,可进行密码修改,数据库信息修改成功后,将反馈一个“密码修改成功”的消息给用户。否则,不能进行密码的修改,将反馈一个“密码修改失败”的信息给用户。其中,用户合法性的检查与成绩上传时用户的合法性检查一致,这里不再赘述,只取其中部分核心代码说明如下:
if(datain.readUTF().trim().equals("密码修改合法用户")) //若是合法用户
{   //密码修改SQL语句
String xinmimashangchuan="update  用户信息表 set 密码='"
+this.xinkouling.getText().trim()+"'where 学号='"
+this.xuehao.getText().trim()+"'";
dataout.writeUTF(xinmimashangchuan); //更新数据库请求上传
}
else //非法用户
{……}
7、查询模块
查询模块实现界面如图11所示:
 
图11  查询界面图
其分为精确查询与模糊查询两块,精确查询是将输入的学号作为查询条件,而模糊查询则根据业务学习成绩与综合测评成绩的组合作为查询条件进行查询。精确查询的结果将返回个人的各个得分情况及综合测评与业务学习成绩的排名情况。模糊查询返回结果的界面图12所示:

 
图12  模糊查询结果显示图
当业务学习成绩与综合测评成绩选项数值都为0时,或者两个选项的值都不为0时,将返回所有结果集,并按学号顺序排列。当业务学习选项的数值为0但综合测评成绩选项数值不为0时,或者相反时,将以非0的一项作为排列显示的依据。其核心代码如下:
1)精确查询
resultset= stmt.executeQuery("select * from 综合测评成绩表 order by 综合测评得分 desc");    //成绩由高到低排列
while(this.resultset.next())                    //检索该生的综合测评记录
{   i++;    //i标记该学生综合测评成绩的排名
 if(this.resultset.getString(1).equals(xinxis[1].trim()))
    //若是该学生的综合测评成绩记录则提取其所有的得分情况及排名
 {  jieguo+=","+this.resultset.getFloat(2) + "," + this.resultset.getFloat(3)+","
+this.resultset.getFloat(4) + "," + this.resultset.getFloat(5)+","
+this.resultset.getFloat(6) + "," + i;
      break;   //跳出检索    }
}

2)模糊查询
String mohuchaxunjieguo=datain.readUTF(); //读取模糊查询结果
      //以下是数据在JTable中的显示
this.vector.removeAllElements();          //将存放显示数据的向量清空
this.tm.fireTableStructureChanged();       //通知所有侦听器表结构已更改。
String[] strmohuxianshis=mohuchaxunjieguo.split(":");
//将从服务器端返回的数据字符串按行分割
 for(int i=1;i<strmohuxianshis.length;i++)
 {
  Vector rowvector=new Vector();
  String[] strs=strmohuxianshis[i].split(",");
  for(int j=0;j<strs.length;j++)
  {  rowvector.addElement(strs[j]);  }  //添加一个显示数据项
  this.vector.addElement(rowvector);    //添加一行显示数据项
 }
 this.tm.fireTableStructureChanged();

模糊查询的部分SQL语句如下:
s="select 用户信息表.学号,姓名,政治素质,业务学习,智能素质,体育素质,综合测评得分 from 综合测评成绩表,用户信息表  where 业务学习 >=" + this.yewu.getfloat()+ "and综合测评得分 >=" + this.zonghe.getfloat()
+" and 综合测评成绩表.学号=用户信息表.学号";

8、成绩比例图显示模块
该模块实现界面如图13所示:
 
图13  成绩比例图
其中,左右两块为同一类的两个不同实例化对象。该模块的实现过程是:
先查询数据库,统计总人数以及各个成绩段的人数,然后在客户端计算各个成绩段人数所占总人数的比例,最后将比例图通过Graphics类的fillArc()方法画出,数据通过文本框显示出来,其核心代码如下:
 public void paint(Graphics g)
 {
  int int_red=(int)(bili[0]*360);   //计算红色扇形圆心角的度数
  int int_green=(int)(bili[1]*360);     //计算绿色扇形圆心角的度数
  int int_blue=(int)(bili[2]*360);      //计算蓝色扇形圆心角的度数
  int int_yellow=360-int_red-int_green-int_blue;
       //计算黄色扇形圆心角的度数,下面画出比例图
  g.setColor(Color.red);             //绘制红色扇形
  g.fillArc(startx,starty,endlen,endlen,0,int_red);
  g.setColor(Color.green);           //绘制绿色扇形
  g.fillArc(startx,starty,endlen,endlen,int_red,int_green);
  g.setColor(Color.blue);            //绘制蓝色扇形
  g.fillArc(startx,starty,endlen,endlen,int_red+int_green,int_blue);
  g.setColor(Color.yellow);          //绘制黄色扇形
g.fillArc(startx,starty,endlen,endlen,int_red+int_green+int_blue,int_yellow);
}


4.4开发过程中遇到的问题及解决
在整个项目的开发过程中遇到了各种各样的问题,但在老师的指导下,都得到了解决。
1、刚开始的界面问题
   由于综合测评计算各个得分项相对来说很繁杂,开发本系统就是为了避免因为计算繁杂带来的不便,所以界面如何有序明了很重要。刚开始设计的时候,将全部得分项在一个页面里面全部展现。结果,给人以杂乱的感觉。在指导老师的建议下,最终决定将“政治思想素质”、“业务学习”、“智能素质”、“体育素质”四大部分分开显示。于是采用了CardLayout布局管理器来实现界面的布局,该布局管理器能够帮助用户处理两个以至更多的成员共享同一显示空间[9],终于使界面问题得到了解决。
2、Applet访问数据库的问题
   Java Applet为了安全性得到保证,在各方面做了严格的限制,所以访问服务器端的数据库显得复杂。我通过查找资料,知道了Applet访问服务器端的数据库可以有以下几种方式:
   1)Java Applet 直接访问服务器端的数据库,但是需要配置策略文件[10]。这种方式方便了我们开发者,但却麻烦了使用者,与设计的初衷:方面用户使用相矛盾。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

java综合测评系统框架图+源代码+论文 第9页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。