目录
1、使用框架和技术
2、功能展示与说明
3、系统展示
3.1 使用到技术
3.2 前台展示
3.3 后台界面
4. 论文资料和程序
在教育领域,使用IT技术可以使任何人、任何地方和任意的时间,都可以获得需要的资料。但现在的校园大多是综合性的网站,网站内的内容繁杂。现在的大学中一般有以下几种的校园网站,一种是校园官方的网站,比如宁夏大学中卫校区官网,这种的网站偏向与发布学院各类新闻信息、通知公告、学校概况等。是大学生了解关于学院学习信息、奖金、师资水平等信息的重要途径。这种网站的影响也不尽人意,而且信息长期得不到更新,访问率也不高,因为没有适合的信息访问。还有一些偏向于学生生活的校园平台,例如xx校园服务微信公众平台,这样的平台主要的为学生提供了生活、社团、便捷服务等信息。
校园中的这些网站的虽然包含很多的信息,功能也很繁多,但因定位的差异,导致了它们都没有办法为我们提供更多关于学习方面的资源。实现一个资料共享平台,让学生充分利用信息化工具实现个性化的学习。有效的获取所需资源,提供资源的使用效率。而且现在学院也没有针对宁夏大学中卫校区开发一个的资料分享网站。因此决定开发一个学习资料分享和交流的网络平台。
1、使用框架和技术
Spring +SpringMVC +Hibernate+Mysql+easyui+Bootstrap+redis+ActiveMq+Maven
2、功能展示与说明
- 用户登录注册、注册 发送短信验证码 和邮箱验证、登录验证码
- 前台展示、资料下载 下载未登录 跳转到登录页
- 资料上传
- 搜索资料
- 用户留言
- 用户管理
- 资料管理
- 留言管理
- 下载量分析
- 分类管理
- 等
3、系统展示
3.1 使用到技术
用户注册部分核心代码
@Action("userAction_register")
public String register() throws IOException{
Map<String, Object> session = super.getSession();
String sessionCode = (String) session.get("imageCode");
if(UtilFuns.isEmpty(vercode)||!vercode.equalsIgnoreCase(sessionCode)){
ServletActionContext.getResponse().getWriter().println(0);
System.out.println("图形验证码不匹配");
return NONE;
}
String key ="code_"+model.getTelephone();
String redisTelCode = redisTemplate.opsForValue().get(key);
if(UtilFuns.isEmpty(phoneVercode) || ! phoneVercode.equals(redisTelCode)){
ServletActionContext.getResponse().getWriter().println(1);
System.out.println("手机验证码不匹配");
return NONE;
}
model.setState(0);
model.setRegistTime(new Date());
String pwd = Encrypt.md5(model.getPassword(), model.getUserName());
model.setPassword(pwd);
userClientService.saveOrUpdate(model);
jmsTemplate.send("dataShare-mail", new MessageCreator() {
@Override
public Message createMessage(Session session) throws JMSException {
MapMessage message = session.createMapMessage();
message.setString("email", model.getEmail());
return message;
}
});
ServletActionContext.getResponse().getWriter().println(2);
redisTemplate.delete(key);
return NONE;
}
用户分享资料部分核心代码
@Action(value="uploadAction_upload" ,
results={@Result(name="toIndex",type="redirect",location="/index.jsp")})
public String upload() throws Exception {
String realPath =null;
if(file!=null){
FileInputStream in = new FileInputStream(file);
String fileNameExtension = fileFileName.substring(fileFileName.indexOf("."),fileFileName.length());
String realName =UUID.randomUUID().toString()+fileNameExtension;
FileOutputStream out = new FileOutputStream(new File(path, realName));
byte[] b = new byte[1024];
int len = 0;
while ((len = in.read(b)) > 0) {
out.write(b, 0, len);
}
realPath ="/"+realName;
out.close();
in.close();
}
model.setCount(0);
model.setState(0);
model.setUploadFilePath(realPath);
model.setUploadTime(new Date());
UserClient user = userClientService.findByUserId(userId);
UploadCategory category = uploadCategoryService.findById(categoryId);
model.setUser(user);
model.setUploadCategory(category);
model.setFileName(fileFileName);
uploadService.saveOrUpdata(model);
return "toIndex";
}
3.2 前台展示
3.3 后台界面
4. 程序