"基于JAVA和MySQL的学生信息管理系统设计与实现"

版权申诉
5星 · 超过95%的资源 1 下载量 80 浏览量 更新于2024-03-04 4 收藏 500KB DOC 举报
括学生学号、姓名、性别、出生日期、联系方式等信息;学生基本信息的修改、删除、查询。 3) 课程管理 课程信息的录入,包括课程编号、课程名称、学分等信息;课程信息的修改、删除、查询。 4) 成绩管理 学生成绩信息的录入,包括学生学号、课程编号、成绩等信息;学生成绩信息的修改、删除、查询。 5) 系统用户管理 系统用户信息的录入,包括用户名、密码、权限等信息;系统用户信息的修改、删除、查询。 任务计划 第一周:进行系统功能的分析,确定系统需要具备的功能模块和具体实现方式。 第二周:进行数据库设计,创建相应的数据表结构,并确定各表的功能及其关系。 第三周:实现系统模块功能和界面设计,包括欢迎界面、主菜单界面、子菜单界面等。 第四周:进行程序结构设计培养,养成良好的书写习惯,并注意程序的简洁与清晰。 第五周:对整个课程设计进行总结,分析程序设计过程中的心得体会,并检查完善系统功能。 需求分析 学生管理系统的发展现状 随着教育信息化的进步,学生信息管理系统已经成为各级各类学校不可或缺的一部分。学生信息管理系统的发展可以说是日新月异,功能也越来越完善。目前,学生信息管理系统不仅仅是简单的学生档案管理,还涉及到学生选课、成绩管理、学生评价等方面。系统功能分析 本学生信息管理系统主要包括院系管理、学生基本信息管理、课程管理、学生成绩管理、系统用户管理等功能。系统结构框图 数据库设计 创建数据表的结构 本系统的数据库设计主要包括5张数据表,分别是院系信息表、学生基本信息表、课程信息表、学生成绩表和系统用户表。各表功能及其关系 院系信息表包括院系编号和院系名称两个字段,院系编号作为院系信息的唯一标识;学生基本信息表包括学生学号、姓名、性别、出生日期、联系方式等字段,学生学号作为学生信息的唯一标识;课程信息表包括课程编号、课程名称、学分等字段,课程编号作为课程信息的唯一标识;学生成绩表包括学生学号、课程编号、成绩等字段,学生学号和课程编号共同作为学生成绩信息的唯一标识;系统用户表包括用户名、密码、权限等字段,用户名作为系统用户的唯一标识。系统模块功能的实现与界面设计 系统主要模块 本系统主要包括欢迎界面、主菜单界面、子菜单界面、学生信息录入、学生信息查找、学生信息删除和学生信息修改等模块。欢迎界面 欢迎界面是系统启动后首先显示的界面,用于欢迎用户对系统的使用。主菜单界面 主菜单界面包括系统的各个功能模块,用户可以通过主菜单界面选择相应的功能模块。子菜单 子菜单界面包括每个功能模块的具体操作,用户可通过子菜单界面进行具体的操作。学生信息录入 学生信息录入模块用于添加学生的基本信息,录入学生学号、姓名、性别、出生日期、联系方式等信息。学生信息查找 学生信息查找模块用于查询学生的基本信息,通过学生学号或姓名进行查询。学生信息删除 学生信息删除模块用于删除学生的基本信息,通过学生学号进行删除。学生信息修改 学生信息修改模块用于修改学生的基本信息,通过学生学号进行修改。课程设计心得 程序结构设计培养 本次课程设计过程中,通过对系统的功能模块进行总体设计,养成了良好的程序结构设计习惯。 书写习惯养成 本次课程设计要求书写清晰、规范,使得程序具有良好的可读性,养成了良好的书写习惯。 注意程序简洁 程序设计过程中,注重程序的简洁与清晰,避免冗余代码的出现,提高了代码的执行效率。 总结 本次课程设计通过对学生信息管理系统的功能设计、数据库设计以及系统界面设计等多方面内容的学习和实践,加深了对JAVA和MySQL的使用和应用,提高了系统设计和开发的实际能力。通过课程设计,进一步巩固和扩展了对JAVA语言的应用,对系统开发有了更加深刻的理解,并培养了良好的程序设计习惯和书写规范。 参考文献 1.《数据库系统概论(第4版)》 王珊,沈婧,高敏 著 2.《MySQL必知必会》 本·福特(Ben Forta)著 3.《Java核心技术 卷I:基础知识(原书第9版)》 德特尔斯(Cay S. Horstmann),柯内尔(Gary Cornell)著 4.《Java EE企业级应用开发》 周立 著 5.《软件工程》(第8版) 伊恩·索默维尔,西当·曼莫 著"。
698 浏览量
package com.java.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import com.java.model.Book; import com.java.util.StringUtil; /** * 图书Dao类 * @author Administrator * */ public class BookDao { /** * 图书添加 * @param con * @param book * @return * @throws Exception */ public int add(Connection con,Book book)throws Exception{ String sql="insert into t_book values(null,?,?,?,?,?,?)"; PreparedStatement pstmt=con.prepareStatement(sql); pstmt.setString(1, book.getBookName()); pstmt.setString(2, book.getAuthor()); pstmt.setString(3, book.getSex()); pstmt.setFloat(4, book.getPrice()); pstmt.setInt(5, book.getBookTypeId()); pstmt.setString(6, book.getBookDesc()); return pstmt.executeUpdate(); } /** * 图书信息查询 * @param con * @param book * @return * @throws Exception */ public ResultSet list(Connection con,Book book)throws Exception{ StringBuffer sb=new StringBuffer("select * from t_book b,t_bookType bt where b.bookTypeId=bt.id"); if(StringUtil.isNotEmpty(book.getBookName())){ sb.append(" and b.bookName like '%"+book.getBookName()+"%'"); } if(StringUtil.isNotEmpty(book.getAuthor())){ sb.append(" and b.author like '%"+book.getAuthor()+"%'"); } if(book.getBookTypeId()!=null && book.getBookTypeId()!=-1){ sb.append(" and b.bookTypeId="+book.getBookTypeId()); } PreparedStatement pstmt=con.prepareStatement(sb.toString()); return pstmt.executeQuery(); } /** * 图书信息删除 * @param con * @param id * @return * @throws Exception */ public int delete(Connection con,String id)throws Exception{ String sql="delete from t_book where id=?"; PreparedStatement pstmt=con.prepareStatement(sql); pstmt.setString(1, id); return pstmt.executeUpdate(); } /** * 图书信息修改 * @param con * @param book * @return * @throws Exception */ public int update(Connection con,Book book)throws Exception{ String sql="update t_book set bookName=?,author=?,sex=?,price=?,bookDesc=?,bookTypeId=? where id=?"; PreparedStatement pstmt=con.prepareStatement(sql); pstmt.setString(1, book.getBookName()); pstmt.setString(2, book.getAuthor()); pstmt.setString(3, book.getSex()); pstmt.setFloat(4, book.getPrice()); pstmt.setString(5, book.getBookDesc()); pstmt.setInt(6, book.getBookTypeId()); pstmt.setInt(7, book.getId()); return pstmt.executeUpdate(); } /** * 指定图书类别下是否存在图书 * @param con * @param bookTypeId * @return * @throws Exception */ public boolean existBookByBookTypeId(Connection con,String bookTypeId)throws Exception{ String sql="select * from t_book where bookTypeId=?"; PreparedStatement pstmt=con.prepareStatement(sql); pstmt.setString(1, bookTypeId); ResultSet rs=pstmt.executeQuery(); return rs.next(); } } 部分代码