-
2021-03-07 21:30:03
//三.修改学生
private static void reviseStudent(ArrayList list) {
// TODO Auto-generated method stub
//1. 判断集合中有没有学生信息
Scanner sc = new Scanner(System.in);
if(list.size()==0) {
System.out.println("当前没有学生信息");
return; //return直接跳出当前语句,不会执行下面的语句
}
//2. 输入要修改的学生学号
System.out.println("请输入您想修改的学生学号:");
int id = sc.nextInt();
//3. 判断输入的id是否在list集合中,如果在,则执行一系列的代码,如果不在,直接跳出
boolean flag = false;
for(int i=0;i
if(list.get(i).getSid() == id) {
flag = true;
// list.remove(i);
//4. 提示用户输入新的学生信息(学号、姓名、年龄、住址)
System.out.println("请输入新的学号:");
int sidNew = sc.nextInt();
System.out.println("请输入新的姓名:");
String nameNew = sc.next();
System.out.println("请输入新的年龄:");
int ageNew = sc.nextInt();
System.out.println("请输入新的住址:");
String addressNew = sc.next();
//5. 将接受到的学生的零散的信息重新包装到Student Bean中
Student stu = new Student(sidNew, nameNew, ageNew, addressNew);
//6. 将集合进行修改
list.set(i, stu);
System.out.println("修改成功!");
break;
//这是第二种方法
//return; //return之后后面的语句不会执行
}
}
if(flag == false) {
System.out.println("没有找到该学生,请重新输入");
}
//因为上面的 return 不会执行这里的语句,所以可以这样写
//if(flag) {
// System.out.println("没有找到该学生,请重新输入");
//}
}
更多相关内容 -
java 添加学生信息并修改
2018-04-10 21:11:28添加学生信息(性别,班级,学号)并提供修改的java参考代码。 -
Java学生信息管理系统源码(含数据库脚本等).zip
2019-12-24 11:22:27修改dbConn.java配置文件: 数据库端口:3306 数据库名:stuManagerDB 数据库用户名:root 数据库密码:123456 3、运行程序 4、系统登录 打开本程序首先进入登录界面,有账号可直接登录,无账号点击注册进行... -
学生信息管理系统--java连接mysql
2020-12-04 08:58:56通过java代码连接mysql数据库(JDBC),实现对数据库中表格的增删查改操作,同时增加了"注册"功能,内有java源代码和简单的PPT介绍,适用于初学数据库的人员。 -
Java学生信息管理(Swing窗体)x_学生信息管理系统代码
2020-03-09 13:49:26JAVA 程序设计实验报告 学期2016-2017-2 实验名称实验 5综合性程序设计简单学生信息管理系统 班级* 一实验目的 二实验内容与结果 姓名Zzz 学号20151601* 1任务描述(1.3 与 1.4 二选一建议选择 1.4 利用课程所学知识... -
java学生信息管理系统源代码
2021-03-04 02:18:22导读正文本文实例为大家分享了java学生信息管理系统的具体代码,实现学生信息: 增加 int[] a=new int[9] 、删除 、查找、更改,供大家参考,具体内容如下/*学生信息管理系统,实现学生信息:*增加 int[] a=new int...导读
正文
本文实例为大家分享了java学生信息管理系统的具体代码,实现学生信息: 增加 int[] a=new int[9] 、删除 、查找、更改,供大家参考,具体内容如下
/*学生信息管理系统,实现学生信息:
*增加 int[] a=new int[9]
*删除
*查找
*更改
*/
import java.util.Scanner;//导入java输入流
import java.lang.*;
import java.io.*;
class Student
{
private static Student[] s=new Student[2];
int n=0;
private String name;
private int num;
private String classAge;
public void judge()throws IOException
{
int i;
char ch;
String str;
Scanner In=new Scanner(System.in);
if(n==0)
{
System.out.print("你还没有录入任何学生,是否录入(Y/N):");
str=In.next();
ch=str.charAt(0);
while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n')
{
System.out.print("输入有误,请重新输入:");
str=In.next();
ch=str.charAt(0);
}
if(ch=='Y'||ch=='y')
{
this.add();
}
if(ch=='N'||ch=='n')
{
this.menu();
}
}
}
public void menu()throws IOException//定义菜单函数
{
int a;//定义switch语句变量
Scanner in=new Scanner(System.in);//实例化输入流对象
System.out.println("*********学生信息管理系统功能表*********");
System.out.println("***** 1.增加 *****");
System.out.println("***** 2.显示 *****");
System.out.println("***** 3.修改 *****");
System.out.println("***** 4.删除 *****");
System.out.println("***** 5.查看 *****");
System.out.println("***** 0.退出 *****");
System.out.println("****************************************");
System.out.print("请选择(0~5):");
a=in.nextInt();
while(a<0||a>5)
{
System.out.print("输入超出范围,请重新输入:");
a=in.nextInt();
}
switch(a)
{
case 1:this.add();break;
case 2:this.show();break;
case 3:this.modif();break;
case 4:this.delete();break;
case 5:this.look();break;
case 0:System.exit(0);break;
}
}
public void add()throws IOException//定义增加函数
{
String str,str1,str2;
int i,num1,t=1;
char ch,ch1;
FileWriter fw=new FileWriter("F://javaFile//student.txt",true);
fw.write(" 录入的学生信息列表\r\n\r\n学号 姓名 班级\r\n");
Scanner In=new Scanner(System.in);
while(t==1)
{
System.out.print("请输入学生学号:");
num1=In.nextInt();
for(i=0;i
{
while(s[i].num==num1)
{
System.out.println("已存在此学号,请重新输入");
System.out.print("请输入学号:");
num1=In.nextInt();
}
}
s[n].num=num1;
str2=String.valueOf(num1);
fw.write(str2+" ");
System.out.println();
System.out.print("请输入学生姓名:");
s[n].name=In.next();
fw.write(s[n].name+" ");
System.out.println();
System.out.print("请输入学生班级:");
s[n].classAge=In.next();
fw.write(s[n].classAge+"\r\n");
++n;
fw.close();
System.out.println();
System.out.print("是否继续添加(Y/N)");
str=In.next();
ch=str.charAt(0);
while(ch!='N'&&ch!='n'&&ch!='Y'&&ch!='y')
{
System.out.print("输入有误,请重新输入:");
str=In.next();
ch=str.charAt(0);
}
if(ch=='N'||ch=='n')
{
break;
}
}
System.out.println();
System.out.print("是否返回主菜单(Y/N)");
str1=In.next();
ch1=str1.charAt(0);
while(ch1!='Y'&&ch1!='y'&&ch1!='N'&&ch1!='n')
{
System.out.print("输入有误,请重新输入:");
str1=In.next();
ch1=str1.charAt(0);
}
if(ch1=='Y'||ch1=='y')
{
this.menu();
}
if(ch1=='N'||ch1=='n')
{
System.out.println("正在退出...谢谢使用!");
System.exit(0);
}
}
public void show()throws IOException
{
int i;
this.judge();
System.out.println("本次操作共录入"+n+"位学生!");
System.out.println("你录入的学生信息如下:");
System.out.println();
System.out.println("学号\t\t姓名\t班级");
for(i=0;i
{
System.out.println(s[i].num+" "+s[i].name+" "+s[i].classAge);
}
System.out.println("系统返回主菜单!");
this.menu();
}
public void delete()throws IOException//删除信息功能实现 注:本功能暂时不具备可扩展性
{
this.judge();
int j=0,t=0,k=0,num1;
char ch;
String str;
Scanner pin=new Scanner(System.in);
System.out.print("请输入要删除的学号:");
num1=pin.nextInt();
for(j=0;j
{
if(s[j].num==num1)
{
k=1;
t=j;
}
}
if(k==0)
{
System.out.println("对不起!你要删除的学号不存在!");
System.out.println("系统将返回主菜单!");
this.menu();
}
if(k==1)
{
System.out.println("你要删除的学生信息如下:");//打印管理员要删除的学生信息
System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性
System.out.println(s[t].num+" "+s[t].name+" "+s[t].classAge);
System.out.println();
System.out.print("你确定要删除(Y/N):");
str=pin.next();
ch=str.charAt(0);
while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n')
{
System.out.print("输入有误,请重新输入:");
str=pin.next();
ch=str.charAt(0);
}
if(ch=='N'||ch=='n')
{
System.out.println();
System.out.println("系统返回主菜单!");
this.menu();
}
if(ch=='Y'||ch=='y')
{
for(j=t;j
{
s[j]=s[j+1];
}
n--;
System.out.println("数据成功删除!");
System.out.println("系统返回主菜单!");
this.menu();
}
}
}
public void look()throws IOException
{
FileReader fr=new FileReader("F://javaFile//student.txt");
int a;
while((a=fr.read())!=-1)
{
System.out.print((char)a);
}
fr.close();
System.out.println("系统返回主菜单!");
System.out.println();
this.menu();
}
public void modif()throws IOException
{
this.judge();
int j=0,num2,num3,moi,c=1;
char ch;
String str,str2;
Scanner pin=new Scanner(System.in);
System.out.print("请输入要修改的学号:");
num2=pin.nextInt();
for(j=0;j
{
if(s[j].num==num2)
{
k=1;
t=j;
}
}
if(k==0)
{
System.out.println("对不起!你要修改的学号不存在!");
System.out.println("系统将返回主菜单!");
this.menu();
}
if(k==1)
{
System.out.println("你要修改的学生信息如下:");//打印管理员要删除的学生信息
System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性
System.out.println(s[t].num+" "+s[t].name+" "+s[t].classAge);
System.out.println();
System.out.print("你确定要修改(Y/N):");
str=pin.next();
ch=str.charAt(0);
while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n')
{
System.out.print("输入有误,请重新输入:");
str=pin.next();
ch=str.charAt(0);
}
if(ch=='N'||ch=='n')
{
System.out.println();
System.out.println("系统返回主菜单!");
this.menu();
}
while(c==1)
{
if(ch=='Y'||ch=='y')
{
System.out.println("****************************************");
System.out.println("***** 1.修改学号 *****");
System.out.println("***** 2.修改班级 *****");
System.out.println("***** 3.修改姓名 *****");
System.out.println("****************************************");
System.out.print("请选择:");
moi=pin.nextInt();
switch(moi)
{
case 1:System.out.print("请输入新的学号:");num3=pin.nextInt();s[t].num=num3;break;
case 2:System.out.print("请输入新的班级:");str1=pin.next();s[t].classAge=str1;break;
case 3:System.out.print("请输入新的姓名:");str2=pin.next();s[t].name=str2;break;
}
System.out.println("数据已成功修改!");
}
System.out.print("是否继续修改(Y/N)");
str=pin.next();
ch=str.charAt(0);
System.out.println();
while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n')
{
System.out.print("输入有误,请重新输入:");
str=pin.next();
ch=str.charAt(0);
}
if(ch=='N'||ch=='n')
{
break;
}
}
}
System.out.println();
System.out.println("系统返回主菜单!");
this.menu();
}
public static void main(String[] args)throws IOException
{
Student stu=new Student();
for(int i=0;i<2;i++)
{
s[i]=new Student();
}
stu.menu();
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
相关
总结
以上是编程之家为你收集整理的java学生信息管理系统源代码全部内容,希望文章能够帮你解决java学生信息管理系统源代码所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250
-
学生信息管理系统java课程设计(含源代码).rar
2019-12-18 14:32:37录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,... 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 -
java mysql 学生信息管理系统
2018-02-02 22:29:29欢迎使用学生信息管理系统(管理员端) 本系统支持添加,删除,修改等实用功能 方便您更好的管理学生数据 【I】管理员端 一,选择数据库 通过右上角的数据库菜单栏可以选择当前操 作的数据库 二,添加教师,学生,... -
Java数据库课程设计,学生选课信息管理系统源代码+报告
2021-08-05 21:11:18数据库课程设计,学生选课信息管理系统源代码+设计报告(MySQL+Java) 分为三类用户角色学生用户:修改个人信息、课程查询、选课、退课、成绩查询、打印成绩单查询、奖惩信息 教师用户:修改个人信息、查看所授课程... -
基于JAVA的学生信息管理系统.rar
2019-09-15 15:44:33JAVA-学生信息管理系统 1. 分三大对象:管理员、教师、学生;可实现基本的增删改查,如添加各个对象的信息修改各个对象的信息、删除各个对象的信息、输出各个对象的信息等功能 2. 功能完善;由登录窗口、内部窗口、... -
学生信息管理系统 实现学生的添加删除修改(java代码编写)
2010-06-09 17:30:24java 代码编写 能够实现学生信息的添加,删除,修改. -
基于java web的简单学生信息管理系统(jsp+servlet)
2019-12-31 17:06:05java web简单学生信息管理系统 项目描述 利用Java以及jsp等技术实现学生信息管理,学生可以自己注册登记,教师进行学生管理,快捷方便合理利用资源。 运行环境 jdk7+tomcat8+mysql+IntelliJ IDEA 项目技术(必填... -
java学生信息管理系统swing
2019-11-26 22:29:59学生信息管理系统 (1) 读取文件 (2) 添加记录 (3) 查找记录(按学号查找) (4) 修改记录(按学号修改) (5) 删除记录(按学号删除) (6) 记录按成绩升序排列 记录按成绩降序排列 (7) 保存文件 -
JAVA学生信息管理系统(公众号:代码奇才).zip
2021-06-24 15:06:40该学生信息管理系统涉及到学生、教师、系统管理员、班级、学生成绩、课程。...老师进入系统后,对自己这门课程的学生设置课程成绩、查看和修改自己的信息,查看学生的信息和成绩、以及统计分析学生的成绩 -
JAVA代码实现学生信息的录入和查询
2021-05-26 12:39:59JAVA代码实现学生信息的录入和查询 要求: 程序运行后输入1进行学生信息录入(学号、姓名、JAVA成绩、高数成绩、英语成绩)(默认四个学生,该程序暂时只能手动修改学生数),信息录入完成输入2进行个人信息查询,也可以...JAVA代码实现学生信息的录入和查询
要求:
程序运行后输入1进行学生信息录入(学号、姓名、JAVA成绩、高数成绩、英语成绩)(默认四个学生,该程序暂时只能手动修改学生数),信息录入完成输入2进行个人信息查询,也可以输入1重新录入学生信息。(输入其他数字进行提示错误,并重新开始输入。)
程序思路:
1.创建一个学生类,里面有学号、姓名、JAVA成绩、高数成绩、英语成绩等属性。有一个构造方法和所有属性的getter方法。
class pupil { private String No; private String name; private String JavaScore; private String MathScore; private String EnglishScore; public pupil(String No, String name, String JavaScore, String MathScore, String EnglishScore) { this.No = No; this.name = name; this.JavaScore = JavaScore; this.MathScore = MathScore; this.EnglishScore = EnglishScore; } public String getNo() { return No; } public String getName() { return name; } public String getJavaScore() { return JavaScore; } public String getMathScore() { return MathScore; } public String getEnglishScore() { return EnglishScore; } }
2.测试类中定义两个打印方法
public static void print(){ System.out.println("欢迎来到学生信息系统!!!"); System.out.println("按1输入学生信息!"); System.out.println("按2查询学生信息!"); } public static void print2(){ System.out.println("按1重新输入学生信息!"); System.out.println("按2查询学生信息!"); System.out.println("按0退出系统"); }
3.在main方法中创建三个数组,数组一用来存储每个学生对象,数组二用来进行构造方法的信息输入,数组三用来放每个信息的名称。
pupil[] arr1 = new pupil[4]; String[] arr2 = new String[5]; String[] arr3 = new String[5]; arr2[0] = "学号: "; arr2[1] = "姓名: "; arr2[2] = "Java成绩: "; arr2[3] = "高数成绩: "; arr2[4] = "英语成绩: ";
4.主干程序:while循环套用Switch语句
print(); int a = sc.nextInt(); while(a!=0){ switch (a){ case 1: for(int i = 0;i<4;i++){ System.out.println("进行第"+(i+1)+"个学生的信息输入"); for(int b = 0;b<5;b++){ System.out.println("请输入"+arr2[b]); String c = sc.next(); arr3[b]=c; } arr1[i] = new pupil(arr3[0],arr3[1],arr3[2],arr3[3],arr3[4]); } print2(); a = sc.nextInt(); break; case 2: System.out.println("请输入你要查询的学号:"); String d = sc.next(); for(int e = 0;e<4;e++){ if (d.equals(arr1[e].getNo())){ System.out.println("学号:"+arr1[e].getNo()); System.out.println("姓名:"+arr1[e].getName()); System.out.println("Java成绩:"+arr1[e].getJavaScore()); System.out.println("高数成绩:"+arr1[e].getMathScore()); System.out.println("英语成绩:"+arr1[e].getEnglishScore()); } } print2(); a = sc.nextInt(); break; default: System.out.println("请输入正确的数字!!!"); System.out.println("--------------------------------------------------------"); print2(); a = sc.nextInt(); break; } }
完整程序:
package one; import java.util.Scanner; public class test31 { public static void print(){ System.out.println("欢迎来到学生信息系统!!!"); System.out.println("按1输入学生信息!"); System.out.println("按2查询学生信息!"); } public static void print2(){ System.out.println("按1重新输入学生信息!"); System.out.println("按2查询学生信息!"); System.out.println("按0退出系统"); } static Scanner sc = new Scanner(System.in); public static void main(String[] args) { pupil[] arr1 = new pupil[4]; String[] arr2 = new String[5]; String[] arr3 = new String[5]; arr2[0] = "学号: "; arr2[1] = "姓名: "; arr2[2] = "Java成绩: "; arr2[3] = "高数成绩: "; arr2[4] = "英语成绩: "; print(); int a = sc.nextInt(); while(a!=0){ switch (a){ case 1: for(int i = 0;i<4;i++){ System.out.println("进行第"+(i+1)+"个学生的信息输入"); for(int b = 0;b<5;b++){ System.out.println("请输入"+arr2[b]); String c = sc.next(); arr3[b]=c; } arr1[i] = new pupil(arr3[0],arr3[1],arr3[2],arr3[3],arr3[4]); } print2(); a = sc.nextInt(); break; case 2: System.out.println("请输入你要查询的学号:"); String d = sc.next(); for(int e = 0;e<4;e++){ if (d.equals(arr1[e].getNo())){ System.out.println("学号:"+arr1[e].getNo()); System.out.println("姓名:"+arr1[e].getName()); System.out.println("Java成绩:"+arr1[e].getJavaScore()); System.out.println("高数成绩:"+arr1[e].getMathScore()); System.out.println("英语成绩:"+arr1[e].getEnglishScore()); } } print2(); a = sc.nextInt(); break; default: System.out.println("请输入正确的数字!!!"); System.out.println("--------------------------------------------------------"); print2(); a = sc.nextInt(); break; } } } } class pupil { private String No; private String name; private String JavaScore; private String MathScore; private String EnglishScore; public pupil(String No, String name, String JavaScore, String MathScore, String EnglishScore) { this.No = No; this.name = name; this.JavaScore = JavaScore; this.MathScore = MathScore; this.EnglishScore = EnglishScore; } public String getNo() { return No; } public String getName() { return name; } public String getJavaScore() { return JavaScore; } public String getMathScore() { return MathScore; } public String getEnglishScore() { return EnglishScore; } }
程序实现结果:
-
数据库课程设计,学生选课信息管理系统源代码+设计报告(MySQL+Java)
2021-07-08 14:58:32数据库课程设计——学生选课信息管理系统(MySQL+Java) 分为三类用户角色学生用户:修改个人信息、课程查询、选课、退课、成绩查询、打印成绩单查询、奖惩信息 教师用户:修改个人信息、查看所授课程信息、查看学生... -
JAVA程序设计报告学生信息管理系统x_学生信息管理系统代码
2020-10-12 07:36:39JAVA 程序设计报告 学生信息管理系统 辅导老师张松敏 系别计算机系 专业软件技术 学号 姓名 日期 需求分析 功能分析 模块设计 软件设计分析 数据库设计 模块及窗体设计 数据库模块设计 用户登录识别模块 用户信息... -
学生信息查询系统 JAVA代码
2009-12-16 09:40:45有JAVA可视化界面,可连接ACESS数据库。实现添加,删除,修改等常用功能。简单好用 -
西安电子科技大学java作业:学生信息管理系统,附详细问题分析、代码思路(初级)
2021-05-29 11:39:09在该类中提供验证以下功能的操作菜单:可以创建任意多个Student对象、可选择对实例对象进行修改姓名操作、修改年龄操作、设置绩点操作、可对于同一学院的同学按GPA排序,并输出排序后的所有的学生信息(GPA排名)、... -
学生信息管理系统java课程设计(含源代码)
2021-02-12 10:16:37《学生信息管理系统java课程设计(含源代码)》由会员分享,可在线阅读,更多相关《学生信息管理系统java课程设计(含源代码)(43页珍藏版)》请在人人文库网上搜索。1、JAVA程序设计 课程设计报告课 题: 学生信息管理...《学生信息管理系统java课程设计(含源代码)》由会员分享,可在线阅读,更多相关《学生信息管理系统java课程设计(含源代码)(43页珍藏版)》请在人人文库网上搜索。
1、JAVA程序设计 课程设计报告课 题: 学生信息管理系统 姓 名: 学 号: 同组姓名: 专业班级: 指导教师: 设计时间: 评阅意见:评定成绩:指导老师签名:年 月 日目 录一、系统描述21、需要实现的功能32、设计目的3二、分析与设计31、功能模块划分32、数据库结构描述43、系统详细设计文档64、各个模块的实现方法描述95、测试数据及期望结果11三、系统测试16四、心得体会23五、参考文献24六、附录24一、系统描述1、需求实现的功能1.1、录入学生基本信息的功能学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。1.。
2、2、修改学生基本信息的功能在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。1.3、查询学生基本信息的功能可使用 “姓名”对已存有的学生资料进行查询。1.4、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。1.5、用户登陆用不同的登录权限可以进入不同的后台界面,从而实现权限操作。1.6、用户登陆信息设置可以修改用户登陆密码2、设计目的学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户。
3、提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规。
4、化管理,与世界接轨的重要条件。本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。通过一个简化的学生信息管理系统,使学生信息管理工作系统化、规范化、自动化,从而达到提高学生信息管理效率的目的。二、分析与设计1、功能模块划分学生信息管理系统浏览学生信息查询学生信息添加学生信息修改学生信息删除学生信息普通学生(用户)模块班委(管理员)模块浏览学生信息查询学生信息学生管理登陆管理修改登陆密码显示登陆用户图1 功能模块划分图2、数据库结构描述2.1、数据库E-R模型 登录用户管理账号密码职位图2 登录用户管理E-R图学 生总学分出生地年龄专业性别姓名学号班级图3 实。
5、体学生E-R图2.2、数据库关系模型二维表表1 学生表(student)字段数据类型说明stuIdnvarchar(30)学号stuNamenvarchar(30)姓名stuSexnvarchar(30)性别stuAgeint年龄stuJgnvarchar(30)籍贯stuZynvarchar(30)专业classIdnvarchar(30)班号stuSoursenumeric(5,2)总学分图4 录入数据后的学生表表2 登陆权限表(login)字段数据类型说明userIdnvarchar(30)用户名(账号),即登陆Idpasswordnvarchar(30)登陆密码positionnvar。
6、char(30)职位,如班委,普通学生图5 录入数据后的登陆权限表3、系统详细设计文档3.1、系统执行流程图进度条(闪屏)用户登陆登陆验证falsetrue班委(管理员)界面普通学生界面查询添加修改删除查询显示班委(管理员 )普通学生(用户)退出退出系统结束结束退出系统truefalsefalsetrue修改用户登陆密码显示登陆用户信息图6 系统执行流程图3.2、类的划分表3 学生信息查询类类名类的成员属性与方法说明StuQuery.javaJPanel jp1定义一个面板JLabel jp1_jl1定义两个标签JTextField jp1_jtf1定义一个文本输入框JButton jp1_j。
7、b1,jp1_jb2,jp1_jb3定义三个按钮JTable jtb定义一个表JScrollPane jsp定义一个滚动面板,用于存放表TableModel tm自定义一个表模型,用于更新表数据public StuQuery(Frame Main,String title ,boolean model)构造方法,通过传递三个参数,实现对话super(Main,title,model)调用父类的构造方法,实现模式对话public void actionPerformed(ActionEvent arg0)事件响应方法表4 修改学生信息类类名类的成员属性与方法说明UpdateStu.javaJLa。
8、bel jl1,jl2,jl3,jl4,jl5,jl6,jl7,jl8定义八个标签,用于设置数据库表的字段名JTextField jtf1,jtf2,jtf3,jtf4,jtf5,jtf6,jtf7,jtf8定义八个文本框,用于接收表的各字段值JButton jb1,jb2,jb3定义三个按钮,用于事件响应public void addView()这是修改学生界面的函数封装public AddStu(Frame Main,String title,boolean model)构造方法,通过传递三个参数,实现对话super(Main,title,model)调用父类的构造方法,实现模式对话pub。
9、lic UpdateStu(Frame Main,String title,TableModel tm,int rowNo,boolean model)因为要修改信息,那么必须要获得所选中的那一行的所有信息,把它们添加到文本框作为默认值,因此构造方法还应添加一个参数即传递一个模型tm,并传递所选中的行号rowpublic void actionPerformed(ActionEvent e)事件响应方法表5 修改管理人员信息类类名类的成员属性与方法说明UpdateLogin.javaJLabel jl1,jl2,jl3定义三个标签,即用户名,密码,职位JTextField jtf1,jtf2,。
10、jtf3定义三个文本框,对应三个标签的值JButton jb1,jb2,jb3定义三个按钮,用于事件响应JTable jtb定义一个表格,用于显示登陆用户信息PurViewModel pvm自定义登陆用户信息的数据更新模型public void upView()这是修改账户信息权限的界面函数的封装public UpdateLogin(Frame Main,String title,PurViewModel pvm,int rowNo,boolean model)因为要修改信息,那么必须要获得所选中的那一行的所有信息,把它们添加到文本框作为默认值,因此构造方法还应添加一个参数即传递一个模型tm,。
11、并传递所选中的行号rowsuper(Main,title,model)调用父类的构造方法,实现模式对话public void actionPerformed(ActionEvent e)事件响应方法表6表模式-更新数据类名类的成员属性与方法说明TableModel.javaVector rowData,row,column定义表格所需要的集合(表,行,列)ResultSet rs定义一个记录集,用于接收从数据库返回来的记录集SqlConn conn定义一个用于连接数据库的对象,SqlConn是连接数据库的类public TableModel(String sql)构造方法,并传一个SQL语句,。
12、实现查询操作public String getColumnName(int column)这是一个重写的方法,用于设置表的列名public int getColumnCount()得到数据模型记录集的列数public int getRowCount()得到数据模型记录集的行数public Object getValueAt(int arg0, int arg1)得到数据模型记录集某行某列的值4、各个模块的实现方法描述说明:此处只包含了个人完成的模块的实现方法描述4.1、学生信息查询学生信息查询窗口,采用了基于管理窗口,即主界面的对话框实现,实现方法如下:1)定义查询所需要的面板和组件。2)调用。
13、父类的构造方法,实现模式对话。3)进行学生信息查询。4.2、修改管理人员信息修改管理人员信息的界面,通过模式对话,即继承JDialog对话框来实现的,实现方法如下:1)定义修改学生信息的相关组件。2)加载数据库,获得选中的那一行的所有信息。3)把组件添加到窗体。4)调用父类的构造方法,实现模式对话。5)调用修改用户权限信息的界面的方法。6)修改管理人员信息。7)调用数据库连接,并设置操纵更新的sql语句。4.3、修改学生信息修改学生信息的界面,通过模式对话,即继承JDialog对话框来实现,实现方法如下:1)定义修改学生信息的相关组件。2)加载数据库,获得选中的那一行的所有信息。3)把组件添加。
14、到窗体。4)调用父类的构造方法,实现模式对话。5)调用修改学生信息的界面的方法。6)修改学生信息。7)完成相应功能。4.4、更新数据这是一个表模型,用于数据更新,实现方法如下:1)定义表格所需要的集合。2)定义一个记录集,用于接收从数据库返回来的记录集。3)定义一个用于连接数据库的对象。4)设置表格的列名。5)创建表的记录集。6)调用数据库连接。7)设置表的列名,并得到表的列数和行数。8)得到某行某列的值。5、测试数据及期望结果5.1、学生信息查询数据测试及期望结果数据测试及期望结果如下图:图7为学生登录后的最初界面;图8为学生查看所有信息界面;图9为全部学生的信息记录(此处同时运用到了Tab。
15、leModel类);图10则是实现了此处的查询功能,测试数据为:姓名:肖立本期望结果将显示以下数据:学号:904325 姓名:肖立本 性别:男 年龄:23 出生地:安徽 专业:信息管理 班级:9040303 总学分:542.5图7 学生信息管理系统图8 学生信息管理系统-显示记录图9 学生信息管理系统-显示所有信息图10 学生信息管理系统-学生信息查询5.2、修改管理人员数据测试及期望结果数据测试及期望结果如下图:图11将显示出所有管理人员信息。此处测试的数据为:账号1:admin 密码1:admin 职位1:班委账号2:user 密码2:user 职位2:普通学生图12是弹出的修改密码窗口。。
16、此处可将密码admin修改为其它值。图11 显示所有管理人员信息图12 修改管理人员信息窗口5.3、修改学生信息数据测试及期望结果数据测试及期望结果如下图:图13为全部学生的信息记录(此处同时运用到了TableModel类);图14是弹出的修改学生信息窗口:测试数据:姓名:杨明辉期望结果:可修改姓名、性别、年龄、出生地、专业、班级和总学分。图13 学生信息管理系统-显示所有信息图14 修改学生信息窗口三、系统测试1、系统启动界面图15 系统启动界面2、用户登录界面图16 用户登录界面3、班委(管理员)界面,即具有完全权限的用户后台界面图17 管理员界面4、班委(管理员)界面子菜单项显示图18 。
17、管理员界面子菜单-系统界面图19 管理员界面子菜单-学生管理界面图20 管理员界面子菜单-系统设置界面5、学生信息查询界面图21 学生信息查询6、学生信息查询结果显示图22 学生信息查询显示7、添加学生信息界面在没有输入学号或者姓名,以及某一项时,会弹出一个对话框进行提示,如没有输入学号时:图23 添加学生信息8、修改学生信息界面(学号是主键,灰色显示,即不可更改)图24 修改学生信息9、显示所有学生信息图25 显示所有信息10、当没有选中一行的时候,不能修改和删除,并弹出提示警告框图26 修改和删除警告框图11、删除文件时的确认对话框(点击确认时会删除,点击取消,则返回主界面)图27 删除学。
18、生确认对话框12、显示所有登陆用户信息图28 显示登录用户信息示意图13、修改用户登陆密码,选中某个用户进行修改图29 修改用户登录密码界面示意图14、关闭用户记录,即不显示所有用户信息图30 关闭用户记录示意图15、关闭学生记录图31 关闭学生记录示意图16、退出系统确认对话框只有确认时才会退出系统,否则返加主界面图32 退出系统17、普通学生登陆后的界面(即不能对学生信息进行添加,修改和删除以及用户密码修改,对应的这几项灰色显示,不可点击)图33 学生登录界面(1)图34 学生登录界面(2)四、心得体会这次为期一周的课程设计让我对java有了新的认识,首先我接触了很多上课见过但没有实际用过。
19、的类和方法,让我对编程有了许多新的思想。大一学了C语言、C+等,虽然当时学的还不错,由于学的都是入门知识,所以自己做的程序只能实现一定的功能,和自己平时用的软件相差很大。这学期刚开课学java,虽然知道这是一门很有用的语言,但是却感觉没什么新鲜感,它的跨平台特性也只是听听,根本没有认识,由于平时学习不刻苦,也没有时间静下心来写过java代码,当得知最后期末最后一周将进行java课程设计,才静下心来开始研究java,结合以前的编程知识,做起了自己的程序。与此同时,我们也在进行数据库课程设计,和这个系统相类似,做起来比较熟练,同时想通过做课程设计将数据库和java更好的结合运用起来,感觉这样才能够。
20、更贴近实际应用。 这次课程设计使我对java的跨平台性有了进一步认识,同时加深了课堂上所学到的知识。虽然这是第三次课程设计,并且自己也有了两年的上机实验,但我不得不说这一次课程设计是前两次以及任何一节上机实验课都不可比的。在课程设计这一段时间,使我收获了很多在上机课上无法学习到的知识,尤其是需求分析和eclipse熟练的使用。因为这一部分知识的不熟练,在程序设计过程中遇到了不少困难,但通过老师的指导和一次又一次的指导、改写、调试,将这些困难都解决了,心中的喜悦感油然而生。为了能使程序更加的完善,更加人性化,我也利用了不少的课余时间,查找了各方面的资料,看到一个小型系统能够展示在电脑屏幕上时,感。
21、觉自己这段时间的付出是非常值得的,也使我对java产生了更浓厚的兴趣,对自己的学习以及将来的工作都是有很大的帮助的。整个课程设计过程让我的java知识得到了应用,体验了程序员编程时的喜怒哀乐,知识、心智,得到全方位提升,收获颇丰。五、参考文献著作文献:1 赵海廷.Java语言程序设计教程.北京:清华大学出版社.20122 孙印杰,刘斌,孙玉强.Java编程案例精解.北京:电子工业出版社.20053 何梅.java编程实例系列丛书.北京:清华大学出版社,20024 杨昭.二级Java语言程序设计教程.北京:中国水利水电出版社,20065 赵文靖.Java程序设计基础与上机指导.北京:清华大学出版。
22、社,2006 六、附录1、功能:这是学生信息查询窗口,采用基于管理窗口,即主界面的对话框实现package com.View;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import com.Tools.MyFont;public class StuQuery extends JDialog implements ActionListener /定义查询所需要的面板和组件JPanel jp1;JLabel jp1_jl1。
23、;JTextField jp1_jtf1;JButton jp1_jb1,jp1_jb2,jp1_jb3;JTable jtb;JScrollPane jsp;TableModel tm;public StuQuery(Frame Main,String title ,boolean model)/调用父类的构造方法,实现模式对话super(Main,title,model);jp1=new JPanel();jp1_jl1=new JLabel(请输入姓名:);jp1_jl1.setFont(MyFont.f1);jp1_jtf1=new JTextField(15);jp1_jb1=new。
24、 JButton(查 询-);jp1_jb1.setFont(MyFont.f1);jp1_jb1.addActionListener(this);jp1_jb2=new JButton(清 除);jp1_jb2.setFont(MyFont.f1);jp1_jb2.addActionListener(this);jp1_jb3=new JButton(显示所有记录);jp1_jb3.setFont(MyFont.f1);jp1_jb3.addActionListener(this);jp1.add(jp1_jl1);jp1.add(jp1_jtf1);jp1.add(jp1_jb1);jp1。
25、.add(jp1_jb2);jp1.add(jp1_jb3);jtb=new JTable();jsp=new JScrollPane(jtb);this.add(jp1,North);this.add(jsp,Center);this.setSize(600,400);this.setVisible(true);Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stub/如果点击了查询按钮if(arg0.getSource()=jp1_jb1)/获取文本框的值String st。
26、uName=jp1_jtf1.getText().trim();/其中trim()是去掉文本框前面可能有的空格,但不能去掉字符串中的空格String sql=select * from student where stuName=+stuName+;/调用模型tm=new TableModel(sql);jtb.setModel(tm);else if(arg0.getSource()=jp1_jb2)jp1_jtf1.setText();else if(arg0.getSource()=jp1_jb3)tm=new TableModel(null);jtb.setModel(tm);2、功能。
27、:这是一个表模型,用于更新数据package com.View;import com.SqlConnection.*;/引入数据库连接的包import java.sql.*;import java.util.*;import javax.swing.table.AbstractTableModel;import com.SqlConnection.SqlConn;public class TableModel extends AbstractTableModel /定义表格所需要的集合Vector rowData,row,column;/定义一个记录集,用于接收从数据库返回来的记录集Resul。
28、tSet rs;/定义一个用于连接数据库的对象SqlConn conn;public TableModel(String sql)if(sql=null)sql=select * from student;/设置表格的列名column=new Vector();column.add(学号);column.add(姓名);column.add(性别);column.add(年龄);column.add(出生地);column.add(专业);column.add(班级);column.add(总学分);/创建表的记录集rowData=new Vector();/调用数据库连接conn=new S。
29、qlConn();rs=conn.sqlQuery(sql);try while(rs.next()row=new Vector();row.add(rs.getString(1);row.add(rs.getString(2);row.add(rs.getString(3);row.add(rs.getString(4);row.add(rs.getString(5);row.add(rs.getString(6);row.add(rs.getString(7);row.add(rs.getString(8);rowData.add(row); catch (Exception e) e.p。
30、rintStackTrace();/ TODO: handle exceptionOverride/设置表的列名public String getColumnName(int column) / TODO Auto-generated method stubreturn (String)this.column.get(column);Override/得到的列数public int getColumnCount() / TODO Auto-generated method stubreturn this.column.size();/得到的行数Overridepublic int getRow。
31、Count() / TODO Auto-generated method stubreturn this.rowData.size();Override/得到某行某列的值public Object getValueAt(int arg0, int arg1) / TODO Auto-generated method stubreturn (Vector)this.rowData.get(arg0).get(arg1);3、 功能:这是修改管理人员信息的界面,通过模式对话(即继承JDialog对话框)来实现 package com.View;import java.awt.*;import ja。
32、va.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import com.SqlConnection.SqlConn;import com.Tools.MyFont;public class UpdateLogin extends JDialog implements ActionListener /定义修改学生信息的相关组件JLabel jl1,jl2,jl3;JTextField jtf1,jtf2,jtf3;JButton jb1,jb2,jb3;/这是修改账户信息权限的界面。
33、函数的封装public void upView()/加载数据库,获得选中的那一行的所有信息jl1=new JLabel(账 号:);/因为账号是主键,设置文本框不可编辑的同时,一般也设置标签灰色显示,以区别其他标签 jl1.setEnabled(false);jl1.setBounds(20, 20, 60, 25);jl1.setFont(MyFont.f1);jl2=new JLabel(密 码:);jl2.setFont(MyFont.f1);jl2.setBounds(250, 20, 60, 25);jl3=new JLabel(职 位:);jl3.setEnabled(false)。
34、;jl3.setFont(MyFont.f1);jl3.setBounds(20, 60, 60, 25);jtf1=new JTextField(20);/由于账号是主键,因此不能修改,即设置障碍曙jtf1不可编辑jtf1.setEnabled(false);jtf1.setBounds(70, 20, 130, 25);jtf2=new JTextField(20);jtf2.setBounds(300, 20, 130, 25);jtf3=new JTextField(20);jtf3.setEnabled(false);jtf3.setBounds(70, 60, 130, 25);j。
35、b1=new JButton(修 改);jb1.setFont(MyFont.f1);jb1.setBounds(100, 100, 80, 25);jb1.addActionListener(this);jb2=new JButton(取 消);jb2.setFont(MyFont.f1);jb2.setBounds(280, 100, 80, 25);jb2.addActionListener(this);jb3=new JButton(清 除);jb3.setFont(MyFont.f1);jb3.setBounds(190,100,80,25);jb3.addActionListene。
36、r(this);this.setLayout(null);/把组件添加到窗体this.add(jl1);this.add(jtf1);this.add(jl2);this.add(jtf2);this.add(jl3);this.add(jtf3);this.add(jb1);this.add(jb2);this.add(jb3);/因为要修改信息,那么必须要获得所选中的那一行的所有信息,把它们添加到文本框作为默认值,因此构造方法还应添加一个参数即传递一个模型tm,并传递所选中的行号rowpublic UpdateLogin(Frame Main,String title,PurViewMod。
37、el pvm,int rowNo,boolean model)/调用父类的构造方法,实现模式对话super(Main,title,model);/调用修改用户权限信息的界面的方法this.upView();/先从表模型中获取所选中的那一行数据String userId=(String)pvm.getValueAt(rowNo, 0);System.out.println(userId=+userId);String password=(String)pvm.getValueAt(rowNo, 1);String position=(String)pvm.getValueAt(rowNo, 2)。
38、;/设置广本框的值jtf1.setText(userId);jtf2.setText(password);jtf3.setText(position);/设置窗体的属性this.setSize(465,170);this.setVisible(true);this.setResizable(false);Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub/当点击了修改按钮if(e.getSource()=jb1)/获取文本框的信息String userId=jtf1.getTe。
39、xt().trim();String password=jtf2.getText().trim();String position=jtf3.getText().trim();/调用数据库连接/设置操纵更新的sql语句String sql=update login set password=+password+,position=+position+where userId=+userId+;SqlConn sqlconn=new SqlConn();sqlconn.sqlUpdate(sql);/关闭交资源sqlconn.closeSqlConn();/关闭与数据库连接的资源后,再关闭对话框。
40、,否则数据不能自动在表中更新显示出来this.dispose();/如果点击了取消按钮,则关闭模式对话框else if(e.getSource()=jb2)this.dispose();/如果点击了清除按钮,则清除所有的广本框的内容,除了学号else if(e.getSource()=jb3)/由于账号是主键,则不能清空!jtf2.setText();4、功能:这是修改学生信息的界面,通过模式对话(即继承JDialog对话框)来实现 package com.View;import java.awt.*;import java.awt.event.ActionEvent;import java.。
41、awt.event.ActionListener;import javax.swing.*;import com.SqlConnection.SqlConn;import com.Tools.MyFont;public class UpdateStu extends JDialog implements ActionListener /定义修改学生信息的相关组件JLabel jl1,jl2,jl3,jl4,jl5,jl6,jl7,jl8;JTextField jtf1,jtf2,jtf3,jtf4,jtf5,jtf6,jtf7,jtf8;JButton jb1,jb2,jb3;int stuA。
42、ge=0;Double stuSourse=0.0;/这是修改学生信息的界面函数的封装public void upView()/加载数据库,获得选中的那一行的所有信息jl1=new JLabel(学 号:);/因为学号是主键,设置文本框不可编辑的同时,一般也设置标签灰色显示,以区别其他标签 jl1.setEnabled(false);jl1.setBounds(20, 20, 60, 25);jl1.setFont(MyFont.f1);jl2=new JLabel(姓 名:);jl2.setFont(MyFont.f1);jl2.setBounds(250, 20, 60, 25);jl3=。
43、new JLabel(性 别:);jl3.setFont(MyFont.f1);jl3.setBounds(20, 60, 60, 25);jl4=new JLabel(年 龄:);jl4.setFont(MyFont.f1);jl4.setBounds(250, 60, 60, 25);jl5=new JLabel(出生地:);jl5.setFont(MyFont.f1);jl5.setBounds(14, 100, 60, 25);jl6=new JLabel(专 业:);jl6.setFont(MyFont.f1);jl6.setBounds(20, 140, 60, 25);jl7=n。
44、ew JLabel(班 级:);jl7.setFont(MyFont.f1);jl7.setBounds(20, 180, 60, 25);jl8=new JLabel(总学分:);jl8.setFont(MyFont.f1);jl8.setBounds(240, 180, 60, 25);jtf1=new JTextField(20);/由于学号是主键,因此不能修改,即设置障碍曙jtf1不可编辑jtf1.setEnabled(false);jtf1.setBounds(70, 20, 130, 25);jtf1.setBorder(BorderFactory.createLoweredBev。
45、elBorder();jtf2=new JTextField(20);jtf2.setBounds(300, 20, 130, 25);jtf2.setBorder(BorderFactory.createLoweredBevelBorder();jtf3=new JTextField(10);jtf3.setBounds(70, 60, 60, 25);jtf3.setBorder(BorderFactory.createLoweredBevelBorder();jtf4=new JTextField(10);jtf4.setBounds(300, 60, 60, 25);jtf4.setB。
46、order(BorderFactory.createLoweredBevelBorder();jtf5=new JTextField(30);jtf5.setBounds(70, 100, 360, 25);jtf5.setBorder(BorderFactory.createLoweredBevelBorder();jtf6=new JTextField(20);jtf6.setBounds(70, 140, 290, 25);jtf6.setBorder(BorderFactory.createLoweredBevelBorder();jtf7=new JTextField(20);jtf。
47、7.setBounds(70, 180, 130, 25);jtf7.setBorder(BorderFactory.createLoweredBevelBorder();jtf8=new JTextField(20);jtf8.setBounds(300, 180, 130, 25);jtf8.setBorder(BorderFactory.createLoweredBevelBorder();jb1=new JButton(修 改);jb1.setFont(MyFont.f1);jb1.setBounds(100, 220, 80, 25);jb1.addActionListener(th。
48、is);jb2=new JButton(取 消);jb2.setFont(MyFont.f1);jb2.setBounds(280, 220, 80, 25);jb2.addActionListener(this);jb3=new JButton(清 除);jb3.setFont(MyFont.f1);jb3.setBounds(190,220,80,25);jb3.addActionListener(this);this.setLayout(null);/把组件添加到窗体this.add(jl1);this.add(jtf1);this.add(jl2);this.add(jtf2);thi。
49、s.add(jl3);this.add(jtf3);this.add(jl4);this.add(jtf4);this.add(jl5);this.add(jtf5);this.add(jl6);this.add(jtf6);this.add(jl7);this.add(jtf7);this.add(jl8);this.add(jtf8);this.add(jb1);this.add(jb2);this.add(jb3);/因为要修改信息,那么必须要获得所选中的那一行的所有信息,把它们添加到文本框作为默认值,因此构造方法还应添加一个参数即传递一个模型tm,并传递所选中的行号rowpublic 。
50、UpdateStu(Frame Main,String title,TableModel tm,int rowNo,boolean model)/调用父类的构造方法,实现模式对话super(Main,title,model);/调用修改学生信息的界面的方法this.upView();/先从表模型中获取所选中的那一行数据String stuId=(String)tm.getValueAt(rowNo, 0);System.out.println(sutId=+stuId);String stuName=(String)tm.getValueAt(rowNo, 1);String stuSex=(。
51、String)tm.getValueAt(rowNo, 2);String stuAge=(String)tm.getValueAt(rowNo, 3);String stuJg=(String)tm.getValueAt(rowNo, 4);String stuZy=(String)tm.getValueAt(rowNo, 5);String classId=(String)tm.getValueAt(rowNo, 6);String stuSourse=(String)tm.getValueAt(rowNo, 7);/设置文本框的默认值jtf1.setText(stuId);jtf2.se。
52、tText(stuName);jtf3.setText(stuSex);jtf4.setText(stuAge);jtf5.setText(stuJg);jtf6.setText(stuZy);jtf7.setText(classId);jtf8.setText(stuSourse);/设置窗体的属性this.setSize(465,300);this.getContentPane().setBackground(Color.LIGHT_GRAY);this.setVisible(true);this.setResizable(false);Overridepublic void action。
53、Performed(ActionEvent e) / TODO Auto-generated method stub/当点击了修改按钮if(e.getSource()=jb1)/获取文本框的信息String stuId=jtf1.getText().trim();String stuName=jtf2.getText().trim();if(stuName.equals()JOptionPane.showMessageDialog(this, 请输入姓名!);return;/返回到输入界面,如果没有return语句,则会回到主界面String stuSex=jtf3.getText().tri。
54、m();if(stuSex.equals()JOptionPane.showMessageDialog(this, 请输入性别!);return;/返回到输入界面,如果没有return语句,则会回到主界面/对于年龄,则需要进行两个判断,一个是不能为空,另一个必须是int型,下面用异常来判断输入的学生年龄是否是整型数/*/try stuAge=Integer.parseInt(jtf4.getText().trim();/把从文本框取得的字符串转换成整型,如果抛异常,则输入的不是整形数if(stuAge1)JOptionPane.showMessageDialog(this, 年龄必须大于或等于1!);return; catch (Exception e2) /提示输入的不是整数JOptionPane.showMessageDialog(this, 请输入一个整数的年龄!);/如果抛异常,则返回到添加窗口,后面终止执行*。
-
Java学生信息管理系统.rar
2020-06-20 14:06:01基于Java和MySQL(jdbc)设计的学生管理系统,GUI界面实现增加、修改、删除、查询功能。首先电脑要配置好ODBC数据源,下载有Mysql和eclipse,eclipse里面导入有jdbc包,MySQL创建有自己的数据库和表,再把代码里的... -
学生信息管理系统_java_自动化_
2021-09-30 06:31:09学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件,主要用于学校学生信息管理,总体任务是实现学生信息...如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。 -
java学生信息管理系统(附源码)
2021-02-12 10:29:073:连接SQL server 2008 数据库用到的软件及环境SQLserver2008,eclipse,sqljdbc4.jar(数据库驱动包)java的JDK环境 (自行安装配置)切记:另外要新建数据库wtf 和新建学生表student(也可以用你自己创建的数据库及表... -
用Java代码实现学生管理系统
2020-12-03 19:18:45修改学生的代码编写 1.3 定义学生类 学生类: Student 成员变量: 学号:sid 姓名:name 年龄:age 居住地:address 构造方法: 无参构造 带四个参数的构造 成员方法: 每个成员变量对应给出get/set方法 ... -
简单学生信息获取及修改(java)
2018-09-23 12:22:39class ShowTotalMessage{ //显示学生所有信息 public static void showTotalMessage(Student student1) { System.out.println("该同学id: "+student1.getid()); System.out.println(&... -
Java实现学生管理系统(完整代码)
2021-11-26 15:55:28修改学生:通过键盘录入要修改学生的学号,将该学生对象其他信息进行修改 查看学生:将集合中的学生对象信息进行展示 退出系统:结束程序 项目演示: 实现步骤: (1):定义学生类,包含以下成员变量 学生... -
学生信息管理系统 (java 、mysql)
2018-03-07 20:17:43java课程设计作业,java版的学生信息管理系统,需要mysql数据库支持,实现对学生信息的查找,修改,添加,删除等功能。有需要的同学可以参考一下,详细说明在程序报告中。