课题任务及要求:
课题来源:Java课程设计(2020版)
小组成员:
姓名 | 任务分配 | 课程设计博客地址 |
---|---|---|
吴信波(组长) | 任务点1、4、7 | https://www.cnblogs.com/kevin2001 |
陈勇 | 任务点5、6、8 | https://www.cnblogs.com/kevin2001 |
沈益民 | 任务点2、3、9 | https://www.cnblogs.com/kevin2001 |
涉及技术:
GUI编程
数据库MySql
JDBCTemplate
POI
Excel
项目git提交记录截图:
功能架构图:
主要功能流程图:
生成的成绩报表:
数据库更新的数据:
public static String code(String str){
try {
MessageDigest md = MessageDigest.getInstance("MD5");//获取md5实例
md.update(str.getBytes()); //传入要加密的byte类型值
byte[]byteDigest = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < byteDigest.length; offset++) {
i = byteDigest[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
//32位加密
return buf.toString();
// 16位的加密
//return buf.toString().substring(8, 24);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return null;
}
}
随机生成成绩时,使用nextGaussian()方法生成N(0,1)标准正太分布,逆用正太分布标准化公式将其乘标准差8再加期望80,得到N(80,64)正态分布。需要控制成绩小于100.0。使用Calendar类获得当前系统时间,再将其减去若干天,获得一个大概区间内的时间范围,如图将区间约控制在[1998,2001]。
关键代码:
添加单个学生信息:
查找学生信息:
通过学号精准查找学生信息:
通过姓名模糊查找学生信息:
不足:
展望:希望以后我们团队能继续将这个项目进行下去,继续完善这个项目。
想要进一步完成的任务
原文:https://www.cnblogs.com/Kevin2001/p/14339777.html