java课程设计简单的成绩管理系统

合集下载

学生管理系统JAVA课课程设计

学生管理系统JAVA课课程设计

学生管理系统JAVA课课程设计一、教学目标本课程的目标是让学生掌握学生管理系统的Java编程知识,能够运用Java语言实现一个简单的学生管理系统。

具体目标如下:1.知识目标:–理解Java语言的基本语法和数据结构。

–掌握Java中的控制结构和面向对象编程思想。

–了解Java中的文件操作和数据库连接。

2.技能目标:–能够使用Java编写简单的程序,实现学生的增删改查功能。

–能够使用Java连接数据库,实现对学生信息的持久化存储。

–能够使用Java的文件操作,读写学生数据。

3.情感态度价值观目标:–培养学生的编程兴趣,提高学生解决问题的能力。

–培养学生团队协作的精神,提高学生的沟通表达能力。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.Java语言基础:包括基本语法、数据类型、变量、运算符等。

2.控制结构:包括条件语句、循环语句等。

3.面向对象编程:包括类、对象、继承、多态等。

4.文件操作:包括文件的读写、文件管理等。

5.数据库连接:包括JDBC的概念、数据库的连接与操作等。

6.学生管理系统的设计与实现:包括系统需求分析、系统设计、功能实现等。

三、教学方法为了达到课程目标,本课程将采用以下几种教学方法:1.讲授法:用于讲解Java语言基础、控制结构、面向对象编程等理论知识。

2.案例分析法:通过分析实际案例,让学生理解并掌握文件操作和数据库连接的方法。

3.实验法:让学生动手编写代码,实现学生管理系统,提高学生的实际操作能力。

4.小组讨论法:分组让学生讨论问题,培养学生的团队协作和沟通能力。

四、教学资源为了支持课程的顺利进行,我们将准备以下教学资源:1.教材:《Java编程思想》等。

2.参考书:《Java核心技术》、《Java Web开发》等。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、网络环境、数据库服务器等。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以保证评估的客观性和公正性。

基于java的学生成绩管理系统的设计与实现

基于java的学生成绩管理系统的设计与实现

文章标题:基于Java的学生成绩管理系统的设计与实现一、引言学生成绩管理系统是学校管理系统中的重要组成部分,它可以帮助学校、老师和学生高效地管理和查询学生成绩信息。

基于Java的学生成绩管理系统的设计与实现是一个重要的课题,本文将从深度与广度两个角度来探讨这个主题。

二、学生成绩管理系统的基本要求学生成绩管理系统需要满足以下基本要求:1)能够实现学生信息的录入、修改和删除;2)能够实现课程信息的录入、修改和删除;3)能够实现成绩信息的录入、修改和删除;4)能够实现成绩的统计和排名功能;5)能够实现成绩的查询和导出功能。

三、基于Java的学生成绩管理系统的设计与实现1. 系统架构设计学生成绩管理系统可以采用三层架构设计,即用户界面层、业务逻辑层和数据访问层。

用户界面层负责与用户的交互,业务逻辑层负责处理业务逻辑,数据访问层负责与数据库进行交互。

2. 数据库设计数据库设计是学生成绩管理系统中的关键环节,需要设计学生信息表、课程信息表和成绩信息表,并建立它们之间的关联关系。

3. 功能模块设计学生成绩管理系统的功能模块包括学生信息管理、课程信息管理、成绩信息管理、成绩统计和排名以及成绩查询和导出功能。

四、基于Java的学生成绩管理系统的个人观点我认为基于Java的学生成绩管理系统的设计与实现不仅可以提高学校管理效率,也可以帮助老师更好地了解学生的学习情况,同时也能够让学生更方便地查询自己的成绩信息。

这个系统可以为学校管理和教学工作提供很大的便利,是非常值得推广和应用的。

五、总结与展望通过本文的探讨,我们深入了解了基于Java的学生成绩管理系统的设计与实现,从系统架构设计、数据库设计,功能模块设计等方面进行了全面的评估。

我们也共享了个人观点和理解。

希望本文能够为读者提供有价值的信息,同时也为学生成绩管理系统的推广应用提供一些借鉴和思路。

六、个人观点通过本次的撰写,我对基于Java的学生成绩管理系统的设计与实现有了更深入的了解,同时也对系统架构设计、数据库设计、功能模块设计等方面有了更全面的认识。

基于javaweb的学生成绩管理系统毕业设计模板

基于javaweb的学生成绩管理系统毕业设计模板

学生成绩管理系统是现代教育管理中不可或缺的一部分。

随着信息化时代的到来,学生成绩管理系统已经成为学校教务管理的基础工具之一。

通过使用基于javaweb的学生成绩管理系统,学校可以更高效地管理学生成绩,并为学生、老师和家长提供更加便捷的查询和反馈渠道。

1. 学生成绩管理系统的意义学生成绩管理系统作为教务管理的重要组成部分,可以帮助学校实现信息化管理、提高管理效率、减轻教师工作负担、增加家长对学生成绩的了解渠道等方面的作用。

基于javaweb的学生成绩管理系统具有良好的稳定性和安全性,能够满足学校教务管理的需求,值得深入探讨和研究。

2. javaweb在学生成绩管理系统中的应用在学生成绩管理系统的设计和开发中,javaweb技术可以发挥重要作用。

通过javaweb技术,可以实现系统的快速开发和良好的用户体验,同时也能保证系统的性能和安全性。

javaweb还可以与数据库等其他技术相结合,实现学生成绩的有效管理和查询。

3. 设计模板的重要性设计模板是学生成绩管理系统开发的关键环节之一。

一个合理的设计模板能够直接影响到系统的使用体验和用户满意度。

在设计模板时,需要考虑到系统的可用性、易用性和美观性,以及不同用户角色的需求。

只有通过合理的设计模板,学生成绩管理系统才能真正发挥作用,并得到广泛的应用和认可。

4. 个人观点和理解对于基于javaweb的学生成绩管理系统毕业设计模板,我认为需要充分考虑到系统的灵活性和可扩展性。

学生成绩管理系统面向的是未来的教育管理需求,因此需要具备良好的可扩展性,以适应未来的变化和发展。

系统的用户体验和界面设计也是至关重要的,只有用户满意度高的系统才能真正发挥作用。

总结回顾在本文中,我对基于javaweb的学生成绩管理系统毕业设计模板进行了深入的探讨。

我指出了学生成绩管理系统的意义、javaweb在其中的应用、设计模板的重要性,并共享了个人观点和理解。

通过这些内容的阐述,相信读者对于学生成绩管理系统的设计和开发有了更深入的理解,也能够更好地应用这些知识到实际的毕业设计中。

java学生成绩管理系统报告

java学生成绩管理系统报告

Java学生成绩管理系统报告简介本文将介绍一个基于Java开发的学生成绩管理系统。

该系统旨在帮助学校和教师高效管理学生的成绩信息,包括录入、查询、统计和分析等功能。

开发环境和工具•Java编程语言•IntelliJ IDEA集成开发环境•MySQL数据库功能需求1. 学生信息管理•录入学生信息,包括学生姓名、学号、性别等基本信息。

•修改学生信息,如学号、班级等。

•删除学生信息。

2. 成绩录入和查询•录入学生的考试成绩,包括科目、分数、考试日期等。

•查询学生的考试成绩,可按照学生姓名、学号、科目等进行检索。

3. 成绩统计和分析•对学生的考试成绩进行统计,包括平均分、最高分、最低分等。

•根据科目、班级等条件进行成绩分析,生成成绩报表。

4. 数据备份与恢复•对学生信息和成绩数据进行备份,以防数据丢失或损坏。

•支持从备份中恢复数据。

数据库设计学生表(student)字段名类型备注学号int 主键姓名varchar(50)性别varchar(10)班级varchar(50)成绩表(score)字段名类型备注学号int 外键科目varchar(50)分数float考试日期date系统架构本系统采用Java MVC(Model-View-Controller)架构模式进行设计和开发。

•Model层:负责数据的处理和存储,包括与数据库的交互。

•View层:负责用户界面的展示和交互,使用Swing或JavaFX等GUI 库进行开发。

•Controller层:负责接收用户的请求,调用对应的Model方法进行数据处理,并更新View层的显示。

开发步骤1. 数据库连接和表设计使用JDBC连接MySQL数据库,并创建上述的学生表和成绩表。

2. 学生信息管理模块开发•创建学生类(Student)和学生管理类(StudentManager)。

•实现学生信息的录入、修改和删除功能。

3. 成绩录入和查询模块开发•创建成绩类(Score)和成绩管理类(ScoreManager)。

学生成绩在线管理系统数据库课程设计mysql+java

学生成绩在线管理系统数据库课程设计mysql+java

学生成绩在线管理系统数据库课程设计mysql+java以下是一个学生成绩在线管理系统的数据库设计示例,使用MySQL数据库和Java 编程语言:1. 学生表(students)-学生ID(student_id):主键,自增-学生姓名(student_name):varchar类型,最大长度为50-学生年龄(student_age):整数类型-学生性别(student_gender):varchar类型,最大长度为10-学生班级(student_class):varchar类型,最大长度为502. 课程表(courses)-课程ID(course_id):主键,自增-课程名称(course_name):varchar类型,最大长度为503. 成绩表(scores)-成绩ID(score_id):主键,自增-学生ID(student_id):外键,关联到学生表的学生ID-课程ID(course_id):外键,关联到课程表的课程ID-分数(score):浮点数类型通过以上表的设计,你可以实现以下功能:-添加学生信息-添加课程信息-添加学生成绩-查询学生信息-查询课程信息-查询学生的成绩-更新学生信息-更新课程信息-更新学生成绩-删除学生信息-删除课程信息-删除学生成绩在Java中,你可以使用JDBC(Java Database Connectivity)来连接MySQL数据库并执行SQL语句来实现对数据库的操作。

你需要配置数据库连接信息,并编写相应的Java代码来执行查询和更新操作。

这只是一个简单的数据库设计示例,你可以根据你的具体需求进行调整和扩展。

java课程设计学生信息管理系统

java课程设计学生信息管理系统

java课程设计学生信息管理系统一、教学目标本节课的教学目标是使学生掌握Java编程语言的基本语法和编程技巧,能够运用Java语言实现简单的学生信息管理系统。

具体目标如下:1.知识目标:–掌握Java语言的基本语法和数据结构;–理解面向对象编程的基本概念和方法;–了解学生信息管理系统的功能和结构。

2.技能目标:–能够使用Java语言编写简单的程序;–能够运用面向对象编程方法设计和实现学生信息管理系统;–能够对程序进行调试和优化。

3.情感态度价值观目标:–培养学生的编程兴趣和自主学习能力;–培养学生解决问题的能力和团队合作精神;–使学生认识到计算机技术在现实生活中的重要性和应用价值。

二、教学内容本节课的教学内容主要包括以下几个部分:1.Java语言的基本语法和数据结构;2.面向对象编程的基本概念和方法;3.学生信息管理系统的功能和结构;4.学生信息管理系统的实现和优化。

具体安排如下:1.第1-2课时:讲解Java语言的基本语法和数据结构;2.第3-4课时:讲解面向对象编程的基本概念和方法;3.第5-6课时:介绍学生信息管理系统的功能和结构;4.第7-8课时:引导学生实现和优化学生信息管理系统。

三、教学方法本节课采用多种教学方法相结合的方式,以激发学生的学习兴趣和主动性:1.讲授法:讲解Java语言的基本语法和数据结构,面向对象编程的基本概念和方法;2.案例分析法:分析实际的学生信息管理系统的案例,使学生更好地理解理论知识;3.实验法:引导学生动手实现和优化学生信息管理系统,提高学生的实际编程能力。

四、教学资源本节课所需的教学资源包括:1.教材:Java编程语言相关教材;2.参考书:面向对象编程相关参考书;3.多媒体资料:讲解Java语言和面向对象编程的PPT;4.实验设备:计算机和网络设备,以便进行编程实践。

五、教学评估本节课的教学评估将采用多元化评价方式,以全面、客观、公正地评估学生的学习成果。

java课程设计题目及代码

java课程设计题目及代码

java课程设计题目及代码题目:学生成绩管理系统设计一个学生成绩管理系统,能够实现以下功能:1. 添加学生信息:录入学生的姓名、学号、性别等基本信息。

2. 添加学生成绩:录入学生的各门成绩,包括语文、数学、英语等课程。

3. 查找学生成绩:根据学号或姓名查找学生的成绩信息。

4. 修改学生成绩:根据学号或姓名修改学生的成绩信息。

5. 删除学生成绩:根据学号或姓名删除学生的成绩信息。

6. 统计学生成绩:统计全班学生的各门课程的平均分、最高分和最低分。

代码实现如下:```javaimport java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.Scanner;class Student {private String name;private String studentId;private String gender;private Map<String, Integer> scores;public Student(String name, String studentId, String gender) { = name;this.studentId = studentId;this.gender = gender;this.scores = new HashMap<>();}public String getName() {return name;}public String getStudentId() {return studentId;}public String getGender() {return gender;}public Map<String, Integer> getScores() {return scores;}public void addScore(String subject, int score) {scores.put(subject, score);}public void updateScore(String subject, int score) { scores.put(subject, score);}public void removeScore(String subject) {scores.remove(subject);}}class GradeManagementSystem {private ArrayList<Student> students;public GradeManagementSystem() {students = new ArrayList<>();}public void addStudent(String name, String studentId, String gender) {students.add(new Student(name, studentId, gender));}public Student findStudentById(String studentId) {for (Student student : students) {if (student.getStudentId().equals(studentId)) {return student;}}return null;}public Student findStudentByName(String name) {for (Student student : students) {if (student.getName().equals(name)) {return student;}}return null;}public void addScore(String studentId, String subject, int score) {Student student = findStudentById(studentId);if (student != null) {student.addScore(subject, score);}}public void updateScore(String studentId, String subject, int score) {Student student = findStudentById(studentId);if (student != null) {student.updateScore(subject, score);}}public void removeScore(String studentId, String subject) {Student student = findStudentById(studentId);if (student != null) {student.removeScore(subject);}}public void printStudentInfo(Student student) {System.out.println("姓名:" + student.getName());System.out.println("学号:" + student.getStudentId());System.out.println("性别:" + student.getGender());System.out.println("成绩:");for (Map.Entry<String, Integer> entry :student.getScores().entrySet()) {System.out.println(entry.getKey() + ":" +entry.getValue());}}public void printClassStatistics() {int chineseTotal = 0;int mathTotal = 0;int englishTotal = 0;int chineseMax = 0;int mathMax = 0;int englishMax = 0;int chineseMin = Integer.MAX_VALUE;int mathMin = Integer.MAX_VALUE;int englishMin = Integer.MAX_VALUE;for (Student student : students) {Map<String, Integer> scores = student.getScores();if (scores.containsKey("语文")) {int chineseScore = scores.get("语文");chineseTotal += chineseScore;chineseMax = Math.max(chineseMax, chineseScore);chineseMin = Math.min(chineseMin, chineseScore); }if (scores.containsKey("数学")) {int mathScore = scores.get("数学");mathTotal += mathScore;mathMax = Math.max(mathMax, mathScore);mathMin = Math.min(mathMin, mathScore);}if (scores.containsKey("英语")) {int englishScore = scores.get("英语");englishTotal += englishScore;englishMax = Math.max(englishMax, englishScore); englishMin = Math.min(englishMin, englishScore); }}int studentCount = students.size();double chineseAverage = (double) chineseTotal / studentCount;double mathAverage = (double) mathTotal / studentCount; double englishAverage = (double) englishTotal / studentCount;System.out.println("语文最高分:" + chineseMax);System.out.println("数学最高分:" + mathMax);System.out.println("英语最高分:" + englishMax);System.out.println("语文最低分:" + chineseMin);System.out.println("数学最低分:" + mathMin);System.out.println("英语最低分:" + englishMin);System.out.println("语文平均分:" + chineseAverage); System.out.println("数学平均分:" + mathAverage); System.out.println("英语平均分:" + englishAverage); }}public class Main {public static void main(String[] args) {GradeManagementSystem system = new GradeManagementSystem();// 添加学生信息system.addStudent("张三", "001", "男");system.addStudent("李四", "002", "女");system.addStudent("王五", "003", "男");// 添加学生成绩system.addScore("001", "语文", 90);system.addScore("001", "数学", 85);system.addScore("001", "英语", 92);system.addScore("002", "语文", 80);system.addScore("002", "数学", 75);system.addScore("002", "英语", 88);system.addScore("003", "语文", 95);system.addScore("003", "数学", 90);system.addScore("003", "英语", 97);// 查找学生成绩Student student = system.findStudentById("001"); if (student != null) {system.printStudentInfo(student);}// 修改学生成绩system.updateScore("002", "数学", 78);student = system.findStudentById("002");if (student != null) {system.printStudentInfo(student);}// 删除学生成绩system.removeScore("003", "语文");student = system.findStudentById("003");if (student != null) {system.printStudentInfo(student);}// 统计学生成绩system.printClassStatistics();}}```这是一个简单的学生成绩管理系统,通过添加学生信息、添加学生成绩、查找学生成绩、修改学生成绩、删除学生成绩和统计学生成绩等功能,可以对学生的成绩进行管理和操作。

java学生成绩管理系统的实验目的

java学生成绩管理系统的实验目的

实验目的:通过设计和实现一个简单的Java学生成绩管理系统,加深对Java编程语言和面向对象编程的理解,提高编程能力和实践能力。

1. 理解面向对象编程的思想面向对象编程是一种程序设计范式,通过封装、继承和多态等特性,将现实世界中的实体抽象为对象,以对象为中心进行设计和开发。

通过实现学生成绩管理系统,能够更好地理解面向对象编程的思想,掌握对象的创建和使用,提高对对象和类的理解。

2. 提高对Java编程语言的熟练程度Java是一种广泛应用的面向对象编程语言,具有跨评台特性和丰富的类库。

通过实践设计和实现学生成绩管理系统,能够提高对Java编程语言的熟练程度,掌握Java的语法和特性,熟练使用类、对象、继承、多态等概念。

3. 学习软件开发流程和规范在开发学生成绩管理系统的过程中,可以学习软件开发的流程和规范,包括需求分析、系统设计、编码、测试和维护等各个阶段。

通过实践学习,更加全面地了解和掌握软件开发的流程和规范,提高对软件开发的整体把控能力。

4. 提高问题解决能力和创新能力在实验过程中,可能会遇到各种各样的问题和挑战,需要不断地解决和克服。

通过实践设计和实现学生成绩管理系统,能够提高对问题解决能力和创新能力,培养分析和解决问题的能力,锻炼独立思考和创新思维。

5. 培养团队合作精神和交流能力在实验过程中,可能需要与同学合作,共同完成学生成绩管理系统的设计和实现。

通过团队合作,可以培养团队合作精神和交流能力,学会与他人合作、协调和交流,提高团队协作能力和团队管理能力。

总结通过设计和实现一个简单的Java学生成绩管理系统,能够加深对Java 编程语言和面向对象编程的理解,提高编程能力和实践能力。

同时也能够学习软件开发流程和规范,培养问题解决能力和创新能力,提高团队合作精神和交流能力。

这对于提高计算机专业学生的实际操作能力和综合素质是非常有益的。

扩展内容:6. 加强对数据结构和算法的理解在设计学生成绩管理系统时,还需要考虑数据的存储和处理问题,这就涉及到了数据结构和算法的应用。

基于JAVA的学生成绩管理系统的设计与实现(含源文件)

基于JAVA的学生成绩管理系统的设计与实现(含源文件)

基于JAVA的学生成绩管理系统的设计与实现摘要:本文按照目前流行的B/S体系结构模式,结合现有的学生成绩管理系统的现状,采用SQL Server 2000数据库和JAVA技术,设计开发了学生成绩管理系统系统,本系统分为前台页面和后台管理两大部分,主要实现成绩查询、成绩删除、成绩添加、成绩修改四大主体功能。

在细节方面,着重考虑了用户添加成绩、成绩查询两方面的简易操作,力求为客户带来方便。

关键词:B/S模式;JA V A;SQL ServerAbstract:This according to the popular B / S architecture model, combined with the current status of student achievement management system using SQL Server 2000 database and JAVA technology, design and development of student achievement management system, the system is divided into front page and back office management two parts, the main accomplishment query results to delete, add scores, results modify the four main functions. In detail, the focus to consider the user to add results, performance query both easy to operate, and strive to bring convenience for customers.Key words:B/S mode;JA V A;SQL Server近年来,随着高校的扩招,运用常规的方法对学生成绩的管理变得越来越困难,因此学校迫切的需要一种高效的系统来帮助其管理学生的成绩。

JAVA课程设计运动会成绩管理系统

JAVA课程设计运动会成绩管理系统

权限管理:设置不同级别的用 户权存储设备

软件需求:操 作系统、数据 库、应用软件

部署步骤:安 装操作系统、 安装数据库、 安装应用软件

维护方案:定 期备份数据、 定期检查系统、 定期更新软件

系统运行环境:硬件、软件、网络等 系统维护:定期检查、备份、更新等 系统安全管理:用户权限、数据加密、防火墙等 系统性能优化:优化算法、提高响应速度等
系统升级:定期更 新系统版本,提高 系统稳定性和性能
功能扩展:根据用 户需求,增加新的 功能模块
数据备份:定期备 份系统数据,防止 数据丢失
安全防护:加强系 统安全防护,防止 黑客攻击和数据泄 露
汇报人:
性能需求:系统 响应时间、处理 速度等
可靠性需求:系 统稳定性、数据 安全性等
可用性需求:用 户界面友好、操 作简便等
可维护性需求: 系统升级、维护 方便等
前端设计:用户界面,包括登录、注册、成绩查询等功能 后端设计:数据库设计,包括成绩表、用户表、管理员表等 通信设计:前后端通信,包括HTTP请求、WebSocket等 安全设计:用户身份验证、数据加密等 性能设计:优化查询速度、提高系统稳定性等 可扩展性设计:支持未来功能扩展和升级等
测试方法:黑盒测试、白盒 测试、灰盒测试等
测试目的:确保系统功能正 常,提高系统稳定性
优化目标:提高系统响应速度、 降低系统资源消耗、提高系统 安全性
优化方法:代码优化、数据 库优化、服务器优化等
安全测试:对系统进行安全漏 洞扫描,确保系统安全
优化措施:对系统进行性能优 化,提高系统运行效率
数据备份:定期备份系统数据, 防止数据丢失
,a click to unlimited possibilities

学生成绩管理系统(JAVA课程设计)

学生成绩管理系统(JAVA课程设计)

Java课程设计课题:学生成绩管理系统一、问题及功能分析1、身份验证,和使用系统的权限设置、判定。

2、实现同学的学号、性别、成绩等信息的录入、编辑3、提供对学号或姓名,进行成绩或所有信息的查询.4、计算学生平均成绩,显示最高成绩学生信息5、能实现按成绩、学号、姓名排序列出学生信息.6、能统计学生成绩分数段的分布(60以下、60~70、70~80、80~90、90~100)情况,并输出。

7、用文件保存数据,以便反复使用.二、概要设计import java。

lang.*;import java.io。

*;class Mytest{public static void main(String[]args)throws IOException{{int select;select = 1;Student stu[]= new Student[10];StudentMis mis=new StudentMis();Scanner sc = new Scanner(System.in);System。

out.println();System.out。

println(”—---—-—-————————-——-——-——-—---—--———-——");System.out。

println(”* *");System。

out.println(”欢迎进入学生成绩管理系统");System。

out。

println(”**”);System。

out.println(”-————--——-—-—---——-——--———-—-—----——--—");while(true){System。

out.println( );System。

out.println(" 请选择您的操作:");System.out.println(” 1.录入学生成绩信息;”);System.out.println(" 2.显示学生成绩信息;”);System。

java学生成绩管理系统类图,学生成绩管理系统的分析及设计-应用UML建模

java学生成绩管理系统类图,学生成绩管理系统的分析及设计-应用UML建模

java学⽣成绩管理系统类图,学⽣成绩管理系统的分析及设计-应⽤UML建模《学⽣成绩管理系统的分析及设计-应⽤UML建模》由会员分享,可在线阅读,更多相关《学⽣成绩管理系统的分析及设计-应⽤UML建模(48页珍藏版)》请在⼈⼈⽂库⽹上搜索。

1、第1章 系统需求学⽣成绩管理系统的域1描述如下:在学⽣成绩管理系统中,要为每个学⽣建⽴⼀个帐户,并给学⽣发放帐户(帐户可以提供帐户号、帐户初始密码),帐户中存储学⽣的个⼈信息、选课信息以及课程成绩。

持有帐户的学⽣可以登陆系统,只能查看本⼈的个⼈信息、选课信息、个⼈成绩。

在登陆时,需要输⼊⾃⼰的账号和密码,系统验证学⽣是否有效(在系统中存在帐户),若有效,则登陆系统,否则重新输⼊,超过三次,则不允许再次输⼊。

⽼师可以修改学⽣成绩信息,但仅限于学⽣选修的那门课程。

⽼师也有⾃⼰的个⼈帐户,权限⽐学⽣⾼,可以浏览学⽣信息。

学⽣成绩管理系统的管理员,可以编辑、添加、删除、学⽣信息。

对上述学⽣成绩管理系统。

2、的域描述进⾏分析,可以获得如下功能性需求:学⽣持有帐户 (帐户号和密码)。

学⽣可以登陆系统。

学⽣可以查看系统消息内的信息。

学⽣可以查看个⼈信息,个⼈成绩信息和选课情况。

在学期结束时,学⽣可以选课。

学⽣可以给管理员发消息。

⽼师可以修改选修⾃⼰课程的学⽣的成绩信息。

⽼师可以浏览选修⾃⼰课程的学⽣的信息。

学⽣成绩管理员可以创建新的学⽣帐户。

学⽣成绩管理员可以修改学⽣的帐户信息。

学⽣成绩管理员可以删除已存在的学⽣帐户。

学⽣成绩管理员可以在系统中添加学⽣信息。

学⽣成绩管理员可以编辑学⽣信息。

学⽣成绩管理员可以删除学⽣信息。

第2章 需求分析采⽤⽤例驱动的分析⽅法分析需求的主要任务是识别出系统中的参与者和⽤。

3、例,并建⽴⽤例模型。

2.1 识别参与者通过对系统需求的分析,可以确定系统中有三个参与者:StudentActor(学⽣)、TeacherActor(教师)、AdminerActor(管理员)。

java简单项目案例附讲解

java简单项目案例附讲解

java简单项目案例附讲解一、学生成绩管理系统项目简介:开发一个学生成绩管理系统,能够实现学生信息的录入、查询、修改和删除等功能,并能根据学生成绩进行排序和统计分析。

1. 学生信息录入:通过界面输入学生的基本信息包括学号、姓名、性别、年龄等,并能够录入学生的各科成绩。

2. 学生信息查询:提供学生信息的查询功能,可以按学号或姓名进行查询,查询结果展示学生的基本信息和各科成绩。

3. 学生信息修改:允许对学生的基本信息和成绩进行修改,包括姓名、性别、年龄、各科成绩等。

4. 学生信息删除:提供删除学生信息的功能,可以根据学号或姓名进行删除操作。

5. 学生成绩排序:能够按照总分或某一科目的成绩对学生进行排序,可以选择升序或降序排列。

6. 学生成绩统计:能够对学生的各科成绩进行统计分析,包括平均分、最高分、最低分等。

7. 数据存储:使用数据库或文件存储学生的信息和成绩数据,保证数据的可靠性和安全性。

二、图书管理系统项目简介:开发一个图书管理系统,能够实现图书的录入、借阅、归还和查询等功能,能够对借阅情况进行管理和统计。

1. 图书录入:通过界面输入图书的基本信息包括书名、作者、出版社、出版日期等,并生成唯一的图书编号。

2. 图书借阅:提供图书借阅功能,学生或教师可以通过输入图书编号进行借阅操作,并记录借阅人和借阅日期。

3. 图书归还:提供图书归还功能,借阅人可以通过输入图书编号进行归还操作,并记录归还日期。

4. 图书信息查询:能够根据图书编号或关键字进行图书信息的查询,查询结果展示图书的基本信息和借阅情况。

5. 借阅情况管理:能够对图书的借阅情况进行管理,包括借阅人、借阅日期、归还日期等。

6. 图书统计分析:能够对图书的借阅情况进行统计分析,包括借阅次数、借阅人数等。

7. 数据存储:使用数据库或文件存储图书的信息和借阅情况,保证数据的可靠性和安全性。

三、在线购物系统项目简介:开发一个在线购物系统,能够实现用户的注册、登录、商品浏览、购买和订单管理等功能,提供安全、便捷的购物体验。

学生信息管理系统java课程设计代码

学生信息管理系统java课程设计代码

学生信息管理系统java课程设计代码学生信息管理系统Java课程设计代码一、引言学生信息管理系统是一种方便、高效的信息管理工具,可以帮助学校或教育机构管理学生的个人信息、学籍信息等。

本文将介绍一个基于Java语言的学生信息管理系统的设计代码。

二、系统设计1. 需求分析学生信息管理系统需要满足以下需求:- 学生信息的录入、修改和删除- 学生信息的查询和显示- 学生成绩的录入、修改和查询- 学生课表的查询和显示- 学生考勤情况的记录和查询2. 数据库设计系统需要设计学生信息、学生成绩、课程表和考勤情况等相关数据库表。

每个表需要定义相应的字段,如学生姓名、学号、性别、年龄等。

3. 界面设计系统需要设计用户友好的界面,方便用户进行操作。

可以使用JavaSwing等图形界面库进行开发,界面要清晰、美观,并提供相应的按钮和输入框供用户使用。

4. 功能实现系统的功能实现需要编写相应的Java代码。

可以使用面向对象的编程思想,将学生、成绩、课程表和考勤等信息封装成对象,通过调用对象的方法来完成相应的操作。

5. 数据库连接系统需要与数据库进行连接,使用Java JDBC等技术来实现数据库的增删改查操作。

可以使用MySQL等关系型数据库管理系统。

6. 用户权限管理系统可以设计管理员和普通用户两种角色,管理员具有录入、修改和删除学生信息的权限,普通用户只能查询和显示学生信息。

三、代码实现以下是一个简单的学生信息管理系统的Java代码示例:```javaimport java.sql.*;import javax.swing.*;public class StudentManagementSystem {// 数据库连接信息private static final String URL = "jdbc:mysql://localhost:3306/student_db";private static final String USERNAME = "root";private static final String PASSWORD = "123456";public static void main(String[] args) {// 连接数据库Connection conn = null;try {conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);} catch (SQLException e) {e.printStackTrace();JOptionPane.showMessageDialog(null, "数据库连接失败!");System.exit(0);}// 界面初始化JFrame frame = new JFrame("学生信息管理系统");frame.setSize(800, 600);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 添加组件JPanel panel = new JPanel();JLabel label = new JLabel("学生信息管理系统");panel.add(label);frame.add(panel);// 显示界面frame.setVisible(true);}}```四、总结通过以上的代码示例,我们可以看到一个简单的学生信息管理系统的实现框架。

学生成绩管理系统课程设计

学生成绩管理系统课程设计

目录1 需求分析 01.1 功能需求 01.2 系统地开发运行环境 02 总体设计 02.1 系统功能模块 02.2 主要类设计(子模块设计) (1)3 数据库设计 (2)〔要求数据库设计完整,参考综合实验〕........................... 错误!未定义书签。

3.1 数据表设计(要体现数据完整性) (2)3.2 存储过程与触发器设计 (3)3.3 索引(视图)设计 (4)3.4 安全性设计 (4)4 详细设计 (8)5.1 登录模块 (8)5.2教师模块 (11)5.3学生模块 (13)5 小结和展望 (15)参考文献 (15)附录 (15)使用说明书 (15)1需求分析1.1 功能需求我做地是学生成绩管理系统,设计到地主要用户有两大类,即教师和学生.从学生地角度来看,需要实现地功能有查询基本信息,查询成绩,修改密码.这三项功能是学生成绩管理系统所必须具备地,其余功能可以具体分析是否添加.我做地系统地学生界面就是基于这三个功能进行地.从教师地角度来看,需要实现地功能有录入学生基本信息,录入学生地各科成绩,修改教师登录系统地密码,以及修改学生成绩.1.2 系统地开发运行环境本系统开发平台: Java 或其他可视化高级语言+ sql servereclipse本系统运行环境: windows 72总体设计2.1 系统功能模块为了简化学生管理系统,将系统划分为三个模块,即:登录模块,教师模块,学生模块.功能模块实现用户地登录,用户主要为两类:学生,教师.其中登录账号即为学生地学号与教师地教师号,学生地初始密码为123,教师地初始密码为教师号.登录系统之后要及时进行修改.教师模块实现对学生成绩与基本信息地管理.即录入学生信息,录入学生成绩,修改成绩,修改密码学生模块实现对信息地查询与更改,查询即为查询学生地基本信息,查询学生地成绩,以及更改密码.系统总体结构图2.2 主要类设计(子模块设计)学生成绩管理系统由9个类组成,分别是:系统类,教师类,学生类,添加信息类,添加成绩类,修改成绩类,修改密码类,查询基本信息类,查询成绩类.系统类实现用户地登录,验证用户地身份.学生地登录账号为学号,初始密码为123.教师地登录账号为教师号,初始密码为教师号.当登录账号输入有错时,系统会提示登录失败.教师成功登录系统之后进入地是教师界面,教师自由地选择要实现地功能.教师可以录入学生地基本信息,录入学生地成绩,修改学生地成绩,修改教师地登录密码.教师选择录入学生地基本信息之后系统就弹出了录入信息类,通过添加学生地学号,姓名,性别,班级,学院,备注,出生年月,点击添加按钮实现向数据库添加学生信息.教师选择录入学生地成绩之后,录入成绩地界面弹出.教师根据学号,一次添加学生地各科成绩之后,点击添加实现向数据库中添加学生地成绩.同时教师也可以修改学生地成绩,因为考虑到教师地误操作,所以设置了修改学生成绩类.教师只要输入学号再加上要修改地学生地科目地成绩之后点击添加即可.为了避免账号被人随意登录,教师可在首次登录系统之后进行密码地修改.学生成功登录系统之后进入地是学生界面,学生界面主要实现一些基本地查询功能,如查询学生地基本信息,查询学生地成绩,修改学生地登录密码等.学生选择查询基本信息之后系统随即弹出查询信息类地界面,学生不需要输入学号,点击查询即可.同时学生可以选择查询成绩,点击之后系统自动弹出查询成绩类地界面,学生不需要输入学号即可实现查询.因为学生成绩管理系统地初始登录密码为123,所以学生登录之后地第一件事是修改登录密码.3数据库设计3.1 数据表设计(要体现数据完整性)学生成绩管理系统共有四个表,分别是:学生表,成绩表,教师表,课程表.表地设计如下:学生表(学号,姓名,性别,初始年月,专业班级,总学分,备注,班级,学校,密码);教师表(教师号,姓名,性别,学校,密码);课程表(课程号,课程名,教师号,学分,学时);3.2 存储过程与触发器设计存数过程是数据库对象之一,存储过程可以理解为数据库地子程序,在客户端和服务端可以使用它.触发器是与表直接关联地特殊地存储过程,是对表记录操作时触发地.在数据库设计过程中,均对存储过程和触发器进行了设计.定义select * from xsb存储过程:create procedure student_info as select * from xsbexec student_info定义select * from TCH 存储过程:create procedure tch_info as select * from tchexec tch_info定义select * from xsb存储过程:create procedure xsb_info_search asselect * from xsb where 学号 = '" + id + "'创建触发器,当向学生表中插入一行数据时,提示“trigger is working”create trigger xsb_insert on xsb after insertasbegin declare @str char(50)set @str='trigger is working'print @strend创建触发器,当想xsb中插入一个学生地成绩时,将xsb表中地该学生地总学分加上添加地课程地学分create trigger cjb_insert on cjb after insertasbegindeclare @num char(6),@kc_num char(3)declare @xf intselect @num=kcb.学分,@kc_num=kcb.课程号 from insertedselect @xf=学分 from kcb where kcb.课程号=@kc_numupdate xsb set 总学分=总学分+@xf where 学号=@numprint'修改成功'End创建触发器,当修改xsb表中地学号时,同时也要将cjb表中地学号修改成相应地学号create trigger xsb_updateon xsb after updateasbegindeclare @old_num char(6),@new_num char(6)select @old_num=学号 from deletedselect @new_num=学号 from insertedupdate cjb set 学号=@new_num where 学号=@old_numend创建xscjgl数据库作用域地ddl触发器,当删除一个表时,提示禁止该操作,然后回滚删除表地操作.create trigger safetyon databaseafter drop_tableas print '不能删除该表'rollback transaction创建服务器作用域地ddl触发器,当删除一个数据库时,提示禁止该操作并回滚删除数据库地操作.create trigger safety_server_deleteon all serverafter drop_databaseasprint '不能删除该数据库'rollback transaction3.3 索引(视图)设计Sql server中索引可以分为两类,即聚集索引和非聚集索引.索引是可以唯一地,这意味着不会有两行相同地索引键值,这样地索引称为唯一索引.聚集索引将数据行地键值在表内排序并存储对应地数据记录,使得数据表物理顺序与索引顺序一致.非聚集完全独立于数据行地结构.本系统使用地是唯一索引,这是因为考虑到每个表中都不允许出现两行一样地值,约束输入数据地正确规范,保证数据地完整性.创建唯一聚集索引:create unique clustered index xsb_id_ind on xsb(学号)create unique clustered index tch_id_ind on tch(教师号)create unique clustered index cjb_id_ind on cjb(学号)3.4 安全性设计对于学生成绩管理系统地安全性设计,我是从两个方面去考虑地.其一是数据库地备份与恢复.其二是系统安全管理.创建备份:在本地硬盘上创建一个备份文件,备份设备地逻辑名是mybackupfile exec sp_addumpdevice 'disk','mybackupfile','e:\data\mybackupfile.bak'sql 执行差异备份时应注意一下几点:(1)若在上次完全数据库备份之后,数据库地某行被修改了,则执行差异备份至保存最后一次地修改.(2)为了是差异备份设备与完全数据库备份设备区分开来,应使用不同地备份设备名.backup database xscjgl to disk='e:\data\xscjgl.bak' with differential创建一个命名地备份设备xscjgllogbk,并备份xscjgl数据库地事务日志exec sp_addumpdevice 'disk','xscjgllogbk','e:\data\xscjgllog.bak'backup log xscjgl to xscjgllogbk如果数据库遭到破坏或者毁坏导致数据丢失,则可以使用备份设备进行备份:backup database xscjgl to mybackupfile恢复数据库:restore database xscjgl from mybackupfilewith norecovery ,replacerestore log xscjgl from xscjgllogbk创建sql server登录名manager1,密码,manager2,密码,默认数据库设为xscjgl create login manager1with password='542542',default_database=xscjglcreate login manager2with password='111222',default_database=xscjgl使用sql server登录名manager1在xscjgl数据库中创建数据库用户名tao ,默认架构名使用dbo. 使用sql server登录名manager2在xscjgl数据库中创建数据库用户名su ,默认架构名使用dbo.create user tao for login manager1 with default_schema=dbocreate user su for login manager2 with default_schema=dbo4详细设计5.1 登录模块1.功能设计在已经设计好地界面中地相应地方输入账号,密码,选择是学生还是老师.在以上地都填写完毕之后点击登录,完成登录.学生地登录账号为学号,初始密码也为学号.教师地登录账号为教师号,初始密码也为教师号.用户可以在首次登录之后进行更改密码,以保证信息安全.2.界面设计界面设计力求简洁,在简单地验证过身份之后即进入系统.登录界面没有做过多地身份认证,主要考虑到学生成绩管理系统是在学校内部使用,是在校内网,所以能登录地只是学校地老师或学生.界面顶部用地是带有华北科技学院学院地名字地图片.登录界面截图:3模块算法(或重要代码段)if(xsb.isSelected()){try{Connection con =DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433。

java学生成绩统计程序设计

java学生成绩统计程序设计

java学生成绩统计程序设计Java学生成绩统计程序设计Java是一种广泛应用于软件开发领域的编程语言。

在教育领域,Java也被广泛应用于计算机编程教学。

而学生成绩统计是教师们经常需要处理的任务之一。

为了提高教师们的工作效率,我们可以设计一个Java程序来自动完成学生成绩的统计。

本文将一步一步回答有关Java学生成绩统计程序设计的问题。

首先,我们需要明确程序的功能和需求。

一个基本的学生成绩统计程序需要能够记录学生的个人信息,并保存学生的成绩信息,同时还需要能够计算学生的平均分、最高分和最低分等统计指标。

因此,我们的程序需要包含学生类和成绩类,并且还需要有相应的方法来实现各种功能。

接下来,我们可以开始设计程序的结构。

在Java中,我们可以创建两个类:Student(学生类)和Grade(成绩类)。

Student类用于表示学生的个人信息,而Grade类用于表示学生的成绩信息。

首先,我们来设计Student类。

Student类需要包含学生的姓名、学号和班级等属性。

为了便于获取和设置学生的信息,我们可以使用私有变量,并提供公共的getter和setter方法。

javapublic class Student {private String name;private int studentId;private String className;public String getName() {return name;}public void setName(String name) { = name;}public int getStudentId() {return studentId;}public void setStudentId(int studentId) { this.studentId = studentId;}return className;}public void setClassName(String className) {this.className = className;}}接下来,我们来设计Grade类。

基于java的学生成绩管理系统的设计与实现

基于java的学生成绩管理系统的设计与实现

基于java的学生成绩管理系统的设计与实现基于Java的学生成绩管理系统的设计与实现序言在当今数字化时代,学生成绩管理是教育领域至关重要的一环。

传统的手工管理方式已经无法满足大规模学生信息处理的需求,学生成绩管理系统的设计与实现显得尤为重要。

本文将通过对基于Java的学生成绩管理系统进行深度探讨,旨在帮助读者全面了解系统的设计原理及操作流程,并分享作者对该系统的个人观点和理解。

一、引言基于Java的学生成绩管理系统是一款通过计算机实现的,能够方便、高效地管理学生成绩信息的软件。

该系统通过数据的存储、计算、分析和展示等功能,帮助教师和学校管理人员更好地了解学生成绩状况,及时进行个性化教学和学生成长。

下面将从系统的设计理念、功能模块和技术实现等方面进行全面介绍。

二、设计理念基于Java的学生成绩管理系统的设计理念是面向对象和模块化。

对于面向对象,系统将学生、教师、课程等各种元素抽象为对象,通过类与类之间的关系进行交互和数据传递;对于模块化,系统将各个功能模块拆分成独立的子系统,方便维护和拓展。

这两个设计理念保证了系统的可扩展性和灵活性,使其能够适应不同规模和功能要求的教育机构。

三、功能模块1. 学生管理模块学生管理模块是学生成绩管理系统的核心,包括学生信息录入、修改、查询及删除等功能。

教师可以通过该模块录入学生的基本信息,如尊称、学号、性别等,并进行相应的更新和查询操作。

系统还提供成绩录入和成绩查询功能,方便教师对学生的成绩进行管理和统计。

2. 课程管理模块课程管理模块主要用于管理学生所修读的课程信息。

教师可以录入、修改和删除课程信息,并进行课程查询和统计操作。

该模块与学生管理模块相互关联,为学生成绩分析和排名提供了基础数据。

3. 成绩分析模块成绩分析模块是学生成绩管理系统的关键功能之一。

通过该模块,教师可以进行成绩的分析和统计操作。

系统提供了多种统计指标,如平均分、最高分、最低分等,教师可以根据需要进行灵活的分析和对比。

JAVA程序设计课程设计大作业Java学生管理系统(一)

JAVA程序设计课程设计大作业Java学生管理系统(一)

JAVA程序设计课程设计大作业Java学生管理系统(一)Java学生管理系统是一款面向学生的信息管理软件,全面展示学生各个方面的信息。

随着信息技术的不断进步,学生管理系统已经成为学校教育管理中必不可少的一部分。

随着学生数量的增长以及学校管理的需要,对于管理系统的需求也越来越高,要求系统更加智能化、快捷化和便捷化。

Java程序设计课程设计大作业Java学生管理系统也是为此而生。

Java学生管理系统主要是为了解决学校学生的管理问题而设计的。

学生管理系统可以对学生的各项信息进行统一管理,包括学生的个人信息、学籍信息、社团信息、成绩信息、荣誉信息等。

这些数据可以随时查询,以方便老师、家长、学生等人根据需求查看、修改等操作。

Java学生管理系统中包含多个模块,主要包括学生信息模块、课程信息模块、成绩信息模块、荣誉信息模块以及社团信息模块。

在学生信息模块中,管理员可以添加、修改、查询和删除学生的个人信息。

在课程信息模块中,管理员可以添加、修改、查询和删除课程的信息。

在成绩信息模块中,管理员可以添加、修改、查询和删除学生的成绩信息。

在荣誉信息模块中,管理员可以查询学生的荣誉信息。

在社团信息模块中,管理员可以查询学生所在的社团信息。

Java学生管理系统还包括了多种安全机制,如登录验证、权限控制等。

只有管理员才能登录系统,并通过权限控制访问特定的模块,保证了系统的安全性。

Java学生管理系统设计的核心是系统的数据结构以及数据的交互方式。

在系统中,数据是以树状结构组织起来的,各个节点之间通过指针相连。

这种数据结构的形式可以降低系统的复杂度,并使得系统更加易于管理。

总之,Java程序设计课程设计大作业Java学生管理系统是一款高效、简便、安全的学生信息管理系统。

它可以满足学校管理的需求,为了更好地适应学校管理的需要,将不断进行完善和升级。

它对于学校管理和教育工作者都是非常有益的,为了使得学校管理更加高效、自动化,推动学校信息化建设的发展。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、应用软件的开发环境的简要说明在java软件运行时需要在JDK中添加驱动如下表所示,并连接数据库oracle.jdbc.driver.OracleDriver ;二、需求分析本系统采用 Oracle 建立一个小型的成绩数据库score和Useradd,有一张score表存放学生的成绩,其表结构如表1所示,Useradd表存放登录用户号和密码,其表结构如表2所示,编写程序对score表记录进行添加、修改、查询、删除等操作。

编写一个连接数据库的类Gread.java该类中加载数据驱动为驱动,连接数据库,创建Statement 对象,创建查询数据库的方法,修改数据库的方法,添加数据库的方法,删除数据库的方法,编辑数据库的方法等。

编写一个面板类Gul.java输入学生学号后,按下查询键对数据库进行查询。

若想进行其他操作,先单击编辑按钮,似的下面的按钮有效,单击添加按钮插入一条记录,单击修改按钮将修改当前记录,单击删除按钮将删除当前记录。

编写一个面板类LoginWindowV2.java用于用户登录,用户根据表2的用户号和密码登录界面,进入学生成绩管理系统。

三、数据文件(或数据库)设计表1表2四、功能设计1 实现界面登录2 建立学生成绩数据库和用户数据库,实现对学生成绩的一个简单管理3 实现对学生成绩的查询4 实现对学生成绩的编辑5 实现对学生成绩的添加6 实现对学生成绩的修改7 实现对学生成绩的删除五、程序的主要界面、代码实现1 用户登录界面:输入用户编号和密码后,可以登录,可以关闭窗口,也可以重置若密码和用户名输入不正确,将显示提示对话框2 登录成功后系统登录成功后将显示提示语句:并自动进入成绩管理界面:查询界面:删除界面:添加界面://这是Gread类,用于连接数据库import java.sql.*;public class Gread{Connection conn=null;Statement stmt=null;ResultSet rs=null;public Gread(){try{String driverClassName = "oracle.jdbc.driver.OracleDriver";Class.forName(driverClassName);//2.连接数据库String url ="jdbc:oracle:thin:@10.40.6.248:1521:orcl";Connection conn = DriverManager.getConnection(url,"stu2010131244","stu2010131244");stmt=conn.createStatement();}catch(Exception ex){ex.printStackTrace();}}ResultSet executeQuery(String sql){//查询try{rs=stmt.executeQuery(sql);}catch(Exception e){System.out.println(e);} return rs;}void executeUpdate(String sql){//修改try{stmt.executeUpdate(sql);}catch(SQLException e){}}void close(){//关闭try{stmt.close();conn.close();}catch(SQLException e){}}}//这是成绩管理界面类import Gread.java;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.awt.BorderLayout;import java.awt.Rectangle;import java.sql.*;public class Gul extends JFrame implements ActionListener{ BorderLayout BL=new BorderLayout();JButton jq=new JButton();//查询JButton ji=new JButton();//插入JButton jd=new JButton();//删除JButton jo=new JButton();//编辑JButton ju=new JButton();//修改JPanel jp=new JPanel();JLabel L1=new JLabel();JLabel L2=new JLabel();JLabel L3=new JLabel();JLabel L4=new JLabel();JLabel L5=new JLabel();JLabel ts=new JLabel();JTextField id=new JTextField();JTextField name=new JTextField();JTextField score=new JTextField();JTextField sid=new JTextField();ResultSet rs=null;public Gul(){try{jbInit();}catch(Exception a){a.printStackTrace();}}private void jbInit()throws Exception{getContentPane().setLayout(BL);this.setTitle("简单的成绩管理系统");jp.setLayout(null);jp.setBackground(Color.pink);L1.setText("学号:");L1.setBounds(new Rectangle(8,103,71,30));L2.setText("成绩:");L2.setBounds(new Rectangle(6,175,42,15));L3.setText("姓名:");L3.setBounds(new Rectangle(6,144,42,15));L4.setText("查询条件:");L4.setBounds(new Rectangle(4,27,86,22));L5.setText("学号:");L5.setBounds(new Rectangle(42,52,73,24));id.setEditable(false);id.setBounds(new Rectangle(48,109,124,22));name.setEditable(false);name.setBounds(new Rectangle(48,143,124,22));score.setEditable(false);score.setBounds(new Rectangle(47,174,125,23));sid.setBounds(new Rectangle(82,55,110,20));ts.setBounds(new Rectangle(9,281,237,34));ji.setEnabled(false);ju.setEnabled(false);jd.setEnabled(false);jd.setDoubleBuffered(true);this.getContentPane().add(jp,java.awt.BorderLayout.CENTER);jq.setBounds(new Rectangle(216,53,79,23));ji.setBounds(new Rectangle(20,229,72,23));ju.setBounds(new Rectangle(133,230,76,23));jo.setBounds(new Rectangle(217,173,79,23));jd.setBounds(new Rectangle(245,231,74,23));jq.setText("查询");jq.addActionListener(this);ju.setText("修改");ju.addActionListener(this);ji.setText("添加");ji.addActionListener(this);jo.setText("编辑");jo.addActionListener(this);jd.setText("删除");jd.addActionListener(this);jp.add(L1);jp.add(id);jp.add(name);jp.add(score);jp.add(L5);jp.add(sid);jp.add(L4);jp.add(jq);jp.add(ji);jp.add(jo);jp.add(L3);jp.add(L2);jp.add(jd);jp.add(ju);jp.add(ts);this.setSize(500,400);this.setV isible(true);}public static void main(String args[]){Gul F=new Gul();}public void actionPerformed(ActionEvent e){ts.setText("");if(e.getSource()==jq){//查询String s=sid.getText().trim();String sql="select * from score where id='"+s+"'";Gread db=new Gread();rs=db.executeQuery(sql);try{while(rs.next()){id.setText(rs.getString(1));name.setText(rs.getString(2));score.setText(rs.getString(3));}rs.close();if(!id.getText().equals(""))ts.setText("操作成功!");}catch(SQLException ex){}}else if(e.getSource()==jo){//编辑id.setEditable(true);name.setEditable(true);score.setEditable(true);ji.setEnabled(true);ju.setEnabled(true);jd.setEnabled(true);}else if(e.getSource()==ji){//添加String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(score.getText());String sql="insert into score values("+s1+","+s2+","+s3+")";System.out.println(sql);Gread db=new Gread();db.executeUpdate(sql);ts.setText("操作成功!");}else if(e.getSource()==ju){//修改String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(score.getText());String sql="update score set name="+s2+",score="+s3+"where id="+s1+"";Gread db=new Gread();db.executeUpdate(sql);ts.setText("操作成功!");}else if(e.getSource()==jd){//删除String s1=id.getText();String s2=name.getText();int s3=Integer.parseInt(score.getText());String sql="delete score where id="+s1+"and name="+s2+"and score="+s3;Gread db=new Gread();db.executeUpdate(sql);id.setText("");name.setText("");score.setText("");id.setEditable(false);name.setEditable(false);score.setEditable(false);ts.setText("操作成功!");}}}//登录界面类import java.awt.*;import java.awt.image.*;import java.awt.event.*;import javax.swing.*;import javax.imageio.*;import java.sql.*;import java.util.*;import java.io.*;class LoginWindowV2 extends JFrame implements ActionListener{ JPanel p1=new JPanel();JPanel p2=new JPanel();JPanel p3=new JPanel();JPanel p4=new JPanel();JPanel p5=new JPanel();JTextField txtUserName=new JTextField(15); //用户名文本框JPasswordField txtPwd=new JPasswordField(15);//密码框JButton ok=new JButton("登录");JButton cancel=new JButton("关闭");JButton resert=new JButton("重置");public LoginWindowV2(){//字体设置Font font = new Font("宋体",Font.PLAIN,24);Font labelFont = new Font("隶书",Font.BOLD,24);UIManager.put("Button.font",font);UIManager.put("Label.font",labelFont);UIManager.put("TextField.font",labelFont);JpanelBack jpb = new JpanelBack();Container contentPane=this.getContentPane();//取出内容面板p2.add(new JLabel("用户编号:"));p2.add(txtUserName); //将组件添加到中间容器p3.add(new JLabel("密码:"));p3.add(txtPwd);p4.add(ok);p4.add(cancel);p4.add(resert);ok.addActionListener(this);cancel.addActionListener(this);resert.addActionListener(this);txtUserName.addActionListener(this);txtPwd.addActionListener(this);jpb.add(p2);jpb.add(p3);jpb.add(p4);contentPane.add(jpb);setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);//设置自动关闭窗口int width = 400,height=300;setSize(width,height);Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();setLocation((screen.width-width)/2,(screen.height-height)/2);setTitle("欢迎你!");setResizable(false); //不让用户改变窗口大小setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==ok||e.getSource()==txtPwd) //单击确定按钮后{String uid = txtUserName.getText().trim();String upass = txtPwd.getText().trim();if(checkUser(uid,upass)){int i=JOptionPane.showConfirmDialog(null,"登录成功,是否立即去查询系统?","是否查询",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);if(i==JOptionPane.YES_OPTION){Gul stu = new Gul();dispose();stu.setVisible(true);}}else{ JOptionPane.showMessageDialog(null,"用户编号或密码错误!");txtUserName.requestFocus(); //设置焦点txtUserName.setSelectionStart(0); //设置选中文本开始位置txtUserName.setSelectionEnd(txtUserName.getText().length());}}else if(e.getSource()==cancel) //单击关闭{ dispose();System.exit(0);}else if(e.getSource()==txtUserName) //在用户编号文本框按回车移动焦点到密码框{ txtPwd.requestFocus();}else if(e.getSource()==resert){txtUserName.setText("");txtPwd.setText("");txtUserName.requestFocus();}}public boolean checkUser(String id ,String password){try{//1.注册驱动String driverClassName = "oracle.jdbc.driver.OracleDriver";Class.forName(driverClassName);//2.连接数据库String url ="jdbc:oracle:thin:@10.40.6.248:1521:orcl";Connection conn = DriverManager.getConnection(url,"stu2010131244","stu2010131244");String temp_ID=txtUserName.getText();String temp_pass=txtPwd.getText();String sql_useradd="select UserID,UserPW from Useradd where UserID=? and UserPW=?";PreparedStatement pst=null;pst=conn.prepareStatement(sql_useradd);pst.setString (1,temp_ID); //为绑定变量赋值pst.setString (2,temp_pass);ResultSet rst=pst.executeQuery();if(rst.next()){rst.close();pst.close();conn.close();return true;}elsereturn false;}catch(Exception sqle){System.err.println(sqle);return false;}}public static void main(String[] args){new LoginWindowV2();}class JpanelBack extends JPanel {BufferedImage img =null;public JpanelBack (){try {img = ImageIO.read(new File("12.jpg"));} catch (IOException e) {e.printStackTrace();}}protected void paintComponent(Graphics g) {super.paintComponent(g);g.drawImage(img, 0,0, getWidth(),getHeight(),this);}}}六、对设计结果的总结我自己感觉此次课程设计做得挺成功的,通过这一次,我学到了不少实际编程的知识在这次设计开始的第一天开始,我就开始着手修改一个书上的基于客户-服务器端的计算三角形面积的java程序,这个程序的大框架给了我很大的启发。

相关文档
最新文档