这几天做了一个小项目 让学生登录到网页上上交作业,学生能够通过学号登录 登录以后能上交作业 ,和下载已交的作业。在一次作业中,如果重复提交,后来的会替换到上一个,学生只有这两个权限,老师登录的话,能查看学生已交和未交, 能发布通知 发布作业 设置交作业时间。能打包下载所交学生的作业。
首先 我用的是springmvc+hibernate+spring date jps. 在index里面进入控制层 控制层返回views 在控制层创建一个session 设置session.setAttribute("card", "1"); 1代表首页 未登录情况下 只能看到首页。 学生和管理员能修改密码,不让他们创建账号,不支持注册,学号是账号 。在主页面对其身份进行判定。设置拦截器,已经登录的学生或者管理员 吧链接分享给他人 别人访问不到。
String card=(String)session.getAttribute("card");
if(session.getAttribute("user")!=null){
if(((String)session.getAttribute("type")).equals("admin")){%>
<li><a href="${pageContext.request.contextPath }/login/toindex" <%if(card.equals("1")){%>class="active"<%}%>><span>首页</span></a></li>
<li><a href="#" <%if(card.equals("7")){%>class="active"<%}%>><span>管理学生信息</span></a></li>
<%}else{%>
<li><a href="${pageContext.request.contextPath }/login/toindex" <%if(card.equals("1")){%>class="active"<%}%>><span>首页</span></a></li>
<li><a href="${pageContext.request.contextPath }/student/todownload" <%if(card.equals("3")){%>class="active"<%}%>><span>作业查询或下载</span></a></li>
<%}
}
从后台获得的数据 在前台进行渲染来显示 在此以通知为例:
<script type="text/html" id="notice">
{{if notive != null}}
{{notive.description}}
{{else}}暂无通知
{{/if}}
</script>
function getNotice() {
var url = "${pageContext.request.contextPath }/index/getNotice";
$.ajax({
url:url,
type:"POST",
data:null,
dataType:"json",
success:function(res){
console.log(res);
if(res.success){
$("#getNoticeArea").html(template('notice',res));
}else{
$("#getNoticeArea").html(res.msg);
}
}
})
渲染和弹框在这个项目中能把几个小模块的功能实现,
下载和打包 正在写。
大概牵涉到5张表