1.团队课程设计博客

2.个人负责模块或任务说明

①.Menu

Menu.jsp

在页面中给出提示,用HTML的,与下一个跳转页面进行连接,即点击后进入下一个页面

MenuTeacher.jsp

利用Menu.jsp进行具体化完善和修改,由于教师与学生的权限不同,将教师和学生的功能选择进行区分

教师:增、删、改、查

学生:改,查(个人)

确认后跳转到相应的页面

②Login

Login.jsp

通过账号和密码匹配正确后,进入Menu界面

教师与学生分别位于不同的表中,需要分开处理

StudentLogin.jsp

学生通过在页面输入学号密码进行账号登录

将输入的学号在数据库中进行查找,找到后进行密码比较,一直即进入菜单界面

③Delete

Delete.jsp

提示输入需要删除的学生学号

确认后,通过delete(String stuno)方法,最后跳转至删除成功与否界面

DeleteSuccess.jsp

Delete页面中的学号存在,显示该学生信息;否则,提示找不到,删除失败

返回菜单界面

3.自己的代码提交记录截图

4.自己负责模块或任务详细说明

①Login----提示输入账户和密码进行登录,教师与学生在不同的数据库表中,教师的表名为teachers,内含账号和密码;学生的表名为students,内含学生个人信息与成绩。

登陆界面

pageEncoding="UTF-8"%>

学生登录

账号 :

密码 :

登录页面

登录后(数据库找到对应学号,比较密码,成功即登录,失败即刷新重新输入)

pageEncoding="UTF-8"%>

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

学生登录成功

StudentDao sdao = new StudentDaoJDBC();

String no = request.getParameter("stuno");

int stuno = Integer.parseInt(no);

String password = request.getParameter("password");

if(sdao.login(stuno,password)!=1){

response.sendRedirect("StudentLogin.jsp");

}

else

{

%>

学号:>

登陆成功!

}

%>

学生登录成功进入菜单界面(登录失败刷新页面重新输入)

登录过程方法(可具体提示登录失败的原因,密码错误或学号不存在)

@Override

public int login(int no, String password) {

// TODO Auto-generated method stub

int result=-1;

Connection conn = null;

PreparedStatement pstat = null;

ResultSet rs = null;

String sql = "select * from students where stuno=?";//表中有id和name这列

try {

conn = JDBCUtil.getConnection();

pstat = conn.prepareStatement(sql);

pstat.setInt(1,no);

rs = pstat.executeQuery();

int stu = 0;

String stupassword=null;

while(rs.next()){

stupassword=rs.getString("password");

stu=rs.getInt("stuno");

}

if(stu>0){

if(stupassword.equals(password)){

System.out.println("登录成功!");

result = 1;

}

else{

System.out.println("登录失败,密码错误!");

}

}else {

System.out.println("登录失败,学号不存在!");

}

}catch (SQLException sqle) {

sqle.printStackTrace();

}catch(Exception e){

e.printStackTrace();

}finally{

JDBCUtil.realeaseAll(rs,pstat, conn);

}

return result;

}

②Menu----根据学生与老师的权限进行排版,(教师:增、删、改、查; 学生:改,查(个人)),每一个选择按钮点击之后进入到相应界面

初步界面(未修订)

pageEncoding="UTF-8"%>

菜单选项

功能选择

1.录入学生成绩,点击

value="录入"/>

2.删除学生信息,点击

value="删除"/>

3.修改学生信息,点击

value="修改"/>

4.查找学生信息,点击

value="查找"/>

老师界面

pageEncoding="UTF-8"%>

老师菜单

功能选择

1.录入学生成绩,点击

value="录入"/>

2.删除学生信息,点击

value="删除"/>

3.修改学生信息,点击

value="修改"/>

4.查找学生信息,点击

value="查找"/>

5.所有学生信息,点击

value="导出"/>

③Delete

delete方法(信息仅学号唯一,根据学号进行删除操作)

@Override

public int delete(String no) {

// TODO Auto-generated method stub

Connection conn = null;

Statement st= null;

ResultSet resultset=null;

String sql = "delete from students where stuno="+no;

int result = -1;

try {

conn = JDBCUtil.getConnection();

st = conn.createStatement();

int i=st.executeUpdate(sql);

}catch (SQLException sqle) {

sqle.printStackTrace();

}catch(Exception e){

e.printStackTrace();

}finally{

JDBCUtil.realeaseAll(null,st, conn);

}

return result;

}

delete界面

pageEncoding="UTF-8"%>

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

删除学生

请输入需要删除的学生学号

学号:

delete成功或失败

pageEncoding="UTF-8"%>

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

删除成功

StudentDao sdao = new StudentDaoJDBC();

String no = request.getParameter("stuno");

int s = sdao.delete(no);

%>

删除成功!返回菜单

5.课程设计感想

通过这次课设,对数据库,Dao,JDBC等认识加深了很多,不仅如此,还积累了一些课外的新知识;虽然过程中碰到许多令人崩溃和无语的问题,,在jsp与Java还有一些不熟悉的地方,所幸最终大部分问题都能解决;还有重要的一点是团队协作很重要,有时候你忽略的小问题别人一眼就能发现,虽然我的能力不够好,但是到最后看到自己的代码(虽然不多)能在整个项目中运行还是很激动很开心的;遗憾的是时间紧,技术弱,没能把想法更加完善出来。

java课程设计 成绩_Java课程设计—学生成绩管理系统(201521123004-林艺如)相关推荐

  1. java计算并显示学生的成绩_Java开学测试-学生成绩管理系统

    题目: 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishiscore,networkscore ...

  2. java 成绩_java输出各种学生成绩

    class stu { public String stuno; public String name; public float math; public float english; public ...

  3. java 学生课程成绩_Java课设--学生成绩管理系统一

    写在前面 这个项目是Java课程的课设,一共花了5天的时间去完成它,在这期间感谢一些博主的帮助,让我了解到了一些新的技术知识,所以打算写这一系列博客来介绍一整个课设项目,也为了帮助之后的人,如有错误, ...

  4. c语言可视化学生管理系统,课程的设计C语言可视化程序学生成绩管理系统.doc

    课程的设计C语言可视化程序学生成绩管理系统 C语言可视化程序 设计报告 行政班级 机械0805 姓名 魏永涛 学号 0806080524 指导老师 夏建芳 课题名称 学生成绩管理系统 C可视化程序设计 ...

  5. c语言利用指针函数等完成学生成绩管理系统,课程设计C语言可视化程序学生成绩管理系统...

    <课程设计C语言可视化程序学生成绩管理系统>由会员分享,可在线阅读,更多相关<课程设计C语言可视化程序学生成绩管理系统(37页珍藏版)>请在人人文库网上搜索. 1.C语言可视化 ...

  6. 3、有5个学生,每个学生的数据信息包括学号、姓名、4门课程成绩,编程实现学生成绩管理。要求: (1)用input函数来输入数据,并计算每个学生的平均成绩。 (2)用print函数来输出学生的信息

    3.有5个学生,每个学生的数据信息包括学号.姓名.4门课程成绩,编程实现学生成绩管理.要求: (1)用input函数来输入数据,并计算每个学生的平均成绩. (2)用print函数来输出学生的信息 #i ...

  7. 数据库设计(结构化设计方法)——学生考试管理系统

    文章目录 作业要求 一.需求分析 1.1.需求说明 1.2.数据流图 1.2.1.系统的顶层数据流图 1.2.2.系统的第0层数据流图 1.3.数据字典 1.3.1.数据流 1.3.2.数据存储 1. ...

  8. Java黑皮书课后题第7章:**7.17(对学生排序)编写一个程序,提示用户输入学生个数、学生姓名和他们的成绩,然后按照学生成绩的降序打印学生的姓名。假定姓名是不包含空格的字符,使用next()读取

    **7.17(对学生排序)编写一个程序,提示用户输入学生个数.学生姓名和他们的成绩,然后按照学生成绩的降序打印学生的姓名.假定姓名是不包含空格的字符,使用next方法读取 题目 题目描述 破题 代码 ...

  9. 【C#Windows 窗体应用】实现简单学生查询成绩,管理员管理学生成绩

    [C#Windows 窗体应用]实现简单学生查询成绩,管理员管理学生成绩功能 已经上传到 https://gitee.com/biflcy/student-management-system 给颗小心 ...

  10. c语言学生成绩统计问题分析,学生成绩统计c语言教程分析.doc

    课 程 设 计 课程名称____C语言课程设计___ 题目名称____学生成绩统计_____ 学生学院______物理学院_______ 专业班级____电子科学与技术___ 学 号_____3110 ...

最新文章

  1. PlanAhead 与时序分析
  2. Spring cloud系列之Zuul配置项中sensitiveHeaders和ignoredHeaders
  3. Python生成器与迭代器详细教程
  4. CTF中智能合约部署交互基础
  5. 东京组委会“友情提示”:奖牌是用回收金属做的不能吃!别咬了
  6. saltstack 自动化运维神器(四)salt-ssh
  7. (转)spring boot整合redis
  8. 袋鼠云服务案例系列 | 从DB2到MySQL,某传统金融平台的互联网转型之路
  9. PMP考试只刷题能否通过呢?
  10. Compiler Optimization on VLIW Instruction Scheduling for Low Power
  11. Rasterio入门
  12. 网络爬虫-京东优惠活动数据分析
  13. AD(九)原理图Value值核对、网路编号核对、元件名称核对
  14. 【地图易-制图案例】全球地震分布地图
  15. 我没有基础,能学会Python吗?
  16. VM虚拟机局域网组网配置
  17. 面试-Senior Specialist for Devops-车企
  18. 什么是SaaS,SaaS有哪些优缺点?
  19. 优盘里面的文件夹变0字节也打不开文件的解决方法
  20. mysql 税率用什么类型_在MySQL中计算增值税/税金总额 - 增值税税率取决于地点字段...

热门文章

  1. java数组详解_java数组详解
  2. linux7下安装git,centos7下安装配置git仓库
  3. C语言socket bind()函数(为socket套接字关联了一个相应的地址与端口号)
  4. yunyang1994 tensorflow_yolov3 对于检测中心点的边缘物体时评估IOU对召回率和精度的影响
  5. numpy np.matmul()(两个数组的矩阵乘积)
  6. Intel Realsense D435 opencv 为什么将color图转换成灰度图后,再与depth图水平堆叠,其结果一片黑色?(数据未map到0-255)
  7. nginx启动成功,解决别的电脑访问不了页面的问题
  8. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): dao.UserDao.selectU
  9. Redis击穿、雪崩、穿透场景描述与解决方案
  10. android studio多页面滑动,Android Studio之多个Activity的滑动切换(二)