当前位置:文档之家› 08 考核作业要求

08 考核作业要求

用户从Index.jsp进入登录模块,提供用户名username、密码 password、角色role数据给loginAction.jsp,其中选中管理员 role=1,选中教师或学生role=2或role=3,调用LoginDao去数据库校 验用户。 LoginDao处理用户角色的不同操作不同,调用login方法判 断登陆者是管理员则连接数据库查询t_manager表,若是教师或学生 则连接数据库查询t_teacher表或t_student表。数据库查询用户身份 合法则将用户名放入session并跳转,如管理员身份跳转至 studentManage/stuAdmin.jsp进入管理员操作界面,否则不合法给 出提示并跳回登录界面。
系统需求说明
教师功能需求:
1. 教师信息管理:教师信息查询 2. 课程信息管理:教师任课信息查询
ห้องสมุดไป่ตู้
3. 成绩信息管理:学生成绩查询、学生成绩修改、学生 成绩录入
学生功能需求:
1. 学生信息管理:学生信息查询 2. 选课信息管理:学生选课信息查询
3. 成绩信息管理:学生成绩查询
系统总体设计
项目总体结构设计
系统需求说明
权限,而教师和学生角色仅拥有查及限制性 的增、改权限,因此在这里需要对系统进行 需求分析。
系统功能模块分为六大模块,它们包括:
1. 登录模块 该模块实现用户登录、密码修改功能。用户可选择管 理员、教师或学生身份进行登录,并可修改登录密码。 2. 学生信息管理 该模块实现学生信息查询、学生信息添加、学生信息 修改、学生信息删除功能。
在批量修改的处理中会获取学号,姓名,性别数据,学 号获取自隐藏表单,学号,姓名,性别均被存储于数组 中,需使用循环结构循环更新进数据库。
批量修改updateStu.jsp参考源码(一)
批量修改updateStu.jsp参考源码(二)
批量修改处理updateStuAction.jsp参考源码
系统优化与改进(五)
用javascript进行输入验证
<script type="text/javascript"> function validate(){ 1. JS脚本可以出现在JSP页面任意地方, 但必须由<script if(document.form1.stuno.value==""){ type=“text/javascript”></script>包 alert("学号不能为空!"); 含。 return false; 2. JS脚本可以在按钮控件的onClick() } 事件触发后调用。 if(document.form1.stuname.value==""){ <input type=“button” value=“确定” onClick=“validate()”> alert("姓名不能为空!"); return false; } document.form1.submit(); } </script>
六. 查询记录较多情况下,考虑增加分页功能。用户可单击 “首页”、“上一页”、“下一页”、“尾页”,或填 入页码来选择页面。
中文乱码解决方法
1. 将JSP页面编码设置为utf8
<%@ page language="java" pageEncoding=“utf8"%> 2. 将变量由iso-8859-1编码转成 utf8编码
其中前两种方法不可以共享request请求对象 数据,最后一种则可以。
课程大作业
综合运用所学知识设计和开发WEB网站系统。要 求对网站进行系统需求分析、系统设计与实现, 并撰写报告。 可选系统:
1. 2. 3. 4. 学生信息管理系统:完成管理员管理、教师管理、学生管理模块中任意 2~3个 企业信息管理系统(教材第7章):完成登录模块、客户管理模块、合同 管理模块、售后管理模块、产品管理模块、员工管理模块的2~3个 个人信息管理系统(教材第10章) :完成登录模块、个人信息管理模块、 通讯录模块、日程管理模块、文件管理模块的2~3个 自拟选题,经确认后采用
Java类存放于src目录,样式文件、图片资源、Jsp 文件存放于WebRoot目录,目录结构如下图:
项目结构设计
包结构设计
包名称 作用
DBConnectionManager获取并返回数据库连接
包括Student学生、Teacher教师、Course课程、 Score分数的JAVABEAN类,可实现各自的set与 get方法 包括LoginDao、StudentDao、TeacherDao、 CourseDao、ScoreDao的JAVABEAN组件,实 现对数据库的访问操作 包含各业务的控制器组件
传递stuno参数
addStudent.jsp添加 学生界面
学号已存在
stunoValidat e.jsp 验证学 号是否存在
学号不存在
lookStudent.jsp 查询学生
addStudentCheck. jsp添加学生处理
系统优化与改进
三. 系统增加批量修改功能,将修改记录从数据库查询 并显示在表格中,其中可修改数据项显示在文本框, 一次可修改多条记录,提供一个“修改”按钮可实 现批量修改,效果如图
页面跳转方法
方法一:使用JS脚本跳转
一般在需要先弹出提示对话框后进行跳转的场合中使用 <script type="text/javascript"> alert("该学号已存在!"); window.location.href=“目标页面";
</script>
方法二:使用response对象进行重定向跳转
<% response.sendRedirect(“目标页面”);%>
页面跳转方法
方法三:使用jsp:forward动作进行跳转
该跳转为服务器内部跳转,地址栏地址将不会发生变化, 并且该跳转可以向目标页面传递参数。 <jsp:forward page=“目标页面"> <jsp:param name=“参数名” value=“参数值”/> </jsp:forward>
变量(字符串 )= new String(变量(字符 串 ).getBytes("ISO-8859-1"),“utf8")
中文乱码解决方法
MySQL数据库服务器安装时默认编码 设置为utf8 如安装时未设置,可以在连接数据库 时指定客户端写入编码为utf8,数据库 url为:
jdbc:mysql://localhost:3306/school?useUni code=true&characterEncoding=utf8
系统需求说明
3. 教师信息管理 该模块实现教师信息查询、教师信息添加、教师信息 修改、教师信息删除。 4. 课程信息管理 该模块实现课程信息查询、课程信息添加、课程信息 修改、课程信息删除。 5. 选课信息管理 该模块实现学生选课查询、学生选课添加、学生选课 删除、学生选课修改。
6. 成绩信息管理 该模块实现学生成绩查询、学生成绩修改、学生成绩 录入、学生成绩删除。
隐藏
系统优化与改进
批量修改里需添加隐藏表单以保存学号信息,隐藏表单 用户将无法看见,却可以传递学号
<td> <input type="text" value="<%=stusex%>" name="stusex"> <input type="hidden" value="<%=stuno %>” name="stuno"> </td>
登录模块实现
,登录效果如图:
登录模块实现
首先对登录数据进行客户端校验,要求用户名及密 码不能为空,数据通过校验提交服务器端验证,否 则提示用户重新输入。登录成功跳转到主界面并提 示登录者名称,并提供退出链接,登录失败则给出 提示,并跳回登录页面要求重新登录,效果如图:
登录模块实现
登录功能实现
登录模块实现
登录注销功能
• 用户单击“退出”链接,请求logout.jsp,将session 中的用户名清除session.removeAttribute(“uname”) ,并跳转回登录界面,这样数据访问页面对于退出登录 用户将无法访问,需用户重新进行登录才能再次进入。
系统优化与改进
一.增加用户表单的客户端验证,使用 Javascript对表单输入进行验证。验证表 单输入是否为空,数据长度及类型是否正 确,不合法数据不允许提交,数据验证通 过才能提交服务器进行处理。
学生信息管理系统
系统需求说明
本系统模拟学校对日常教务信息管理 过程,开发学生信息管理系统。该系统可实 现对教务资源中的学生信息、教师信息、课 表信息、课程信息四个模块进行查询及处理 操作。系统面向的用户分为:管理员、教师、 学生。根据访问角色的不同,在系统中应体 现出对教务资源的访问的权限的不同,其中 管理员权限最大,拥有增、删、改、查的
系统优化与改进
让学生信息显示在文本框控件中,成为可修改文本,将信息数 据赋给文本框value属性即可,如: <td><input type="text“ value="<%=stuname%>" name="stuname"></td> 批量修改里需添加隐藏表单以保存学号信息,隐藏表单用户将 无法看见,却可以将重要数据传递。
相关主题