package zzzzzzzz;
import java.io.*;
//作者:凯鲁嘎吉 - 博客园
//http://www.cnblogs.com/kailugaji/
public class Text {
public static void main(String[] args) throws MyException, IOException {
Login l=new Login();
l.login();
}
}
class Student{
private String stunumber;
private String name;
private String age;
private String sex;
private String score;
public void set_stunumber(String stu){
stunumber=stu;
}
public String get_stunumber(){
return stunumber;
}
void set_name(String na){
name=na;
}
String get_name(){
return name;
}
void set_age(String agee){
age=agee;
}
String get_age(){
return age;
}
void set_sex(String sexx){
sex=sexx;
}
String get_sex(){
return sex;
}
void set_score(String scoree){
score=scoree;
}
String get_score(){
return score;
}
}
class StudentManager{
int n=0;
Student ss[]=new Student[50];
//遍历学生信息
void showStudent(){
for(int i=0;i<=n;i++){
System.out.println("学号:"+ss[i].get_stunumber()+"姓名:"+ss[i].get_name()+"年龄:"+ss[i].get_age()+"性别:"+ss[i].get_sex()+"分数:"+ss[i].get_score()+"\t\n");
}
}
//判断学号是否已经存在
boolean panduan(String st)
{
boolean flag=true;
for(int i=0;i<n;i++)
{
if(ss[i].get_stunumber().equals(st))
flag= false;
else
flag= true;
}
return flag;
}
//添加学生信息
void addStudent(String stunumber,String name,String age,String b,String score){
ss[n]=new Student();
ss[n].set_stunumber(stunumber);
ss[n].set_name(name);
ss[n].set_age(age);
ss[n].set_sex(b);
ss[n].set_score(score);
n++;
}
//删除学生信息
void deleteStudent(String stunumber) throws MyException{
for(int i=0;i<=n;i++){
if(ss[i].get_stunumber().equals(stunumber)){
System.out.println("学号为:"+stunumber+"的学生已被删除!");
if(n==1){
System.out.println("数组为空");
ss[0]=new Student();
}
else {
for(int j=i;j<=n;j++){
ss[j]=ss[j+1];
}
n--;
}
}
else{
throw new MyException("该学生不存在!");
}
}
}
//修改学生信息
void updateStudent(String stu1,String name,String age,String sex,String score) throws MyException{
for(int i=0;i<=n;i++){
if(ss[i].get_stunumber().equals(stu1)){
ss[i]=new Student();
ss[i].set_stunumber(stu1);
ss[i].set_name(name);
ss[i].set_age(age);
ss[i].set_sex(sex);
ss[i].set_score(score);
}
else
throw new MyException("没有找到该学生!");
}
}
//查询学生信息
void selectStudent(String number) throws MyException{
for(int i=0;i<=n;i++){
if(ss[i].get_stunumber().equals(number)){
System.out.println("学号:"+ss[i].get_stunumber()+"姓名:"+ss[i].get_name()+"年龄:"+ss[i].get_age()+"性别:"+ss[i].get_sex()+"分数:"+ss[i].get_score()+"\t\n");
}
else
throw new MyException("没有找到该学生!");
}
}
//统计不及格的人数
void tongji(){
int s=0;
for(int i=0;i<=n;i++){
int a=Integer.parseInt(ss[i].get_score());
if(a<=60){
s=s+1;
System.out.println("学号:"+ss[i].get_stunumber()+"姓名:"+ss[i].get_name()+"年龄:"+ss[i].get_age()+"性别:"+ss[i].get_sex()+"分数:"+ss[i].get_score()+"\t\n");
}
}
System.out.println("不及格的人数为:"+s+"人");
}
//输入界面
void showface(){
System.out.println("*****************************");
System.out.println("石家庄铁道大学学生信息管理系统");
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("6.学生信息统计");
System.out.println("7退出.");
}
}
class Login{
User users=new User("001","123456");//用户名,密码
//登录
void login() throws MyException, IOException{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
DataOutputStream out=new DataOutputStream(new BufferedOutputStream(new FileOutputStream("Student.txt",true)));
for(int i=1;i<=3;i++){
System.out.println("请输入用户ID:");
String id=in.readLine();
System.out.println("请输入密码:");
String pass=in.readLine();
if((users.uername.equals(id))&&(users.passage.equals(pass))){
StudentManager sm=new StudentManager();
while(true){
sm.showface();
System.out.println("请选择:");
String choose=in.readLine();
if(choose.startsWith("1")){
sm.showStudent();
}
else if(choose.startsWith("2")){
System.out.print("请输入学号:");
String stu=in.readLine();
System.out.print("请输入姓名:");
String name=in.readLine();
System.out.print("请输入年龄:");
String age=in.readLine();
System.out.println("请输入性别(true男,false女):");
String sex=in.readLine();
System.out.print("请输入分数:");
String score=in.readLine();
if(sm.panduan(stu)){
sm.addStudent(stu, name, age, sex, score);
System.out.println("创建成功!");
out.writeUTF("|学号:"+stu+"|姓名:"+name+"|年龄:"+age+"|性别:"+sex+"|分数:"+score+"|\t\t\n\n");
}
else
throw new MyException("该学生已存在,请勿重复添加");
}
else if(choose.startsWith("3")){
System.out.println("请输入学号:");
String stu=in.readLine();
if(!(sm.panduan(stu))){
sm.deleteStudent(stu);
}
else
throw new MyException("该学号不存在!");
}
else if(choose.startsWith("4")){
System.out.println("请输入学号:");
String stu=in.readLine();
System.out.println("请输入姓名:");
String name=in.readLine();
System.out.println("请输入年龄:");
String age=in.readLine();
System.out.print("请输入性别(true男,false女):");
String sex=in.readLine();
System.out.print("请输入分数:");
String score=in.readLine();
if(!(sm.panduan(stu))){
sm.updateStudent(stu, name, age, sex, score);
out.writeUTF("|学号:"+stu+"|姓名:"+name+"|年龄:"+age+"|性别:"+sex+"|分数:"+score+"|\t\n");
}
else
throw new MyException("该学号不存在!");
}
else if(choose.startsWith("5")){
System.out.println("请输入学号:");
String stu=in.readLine();
if(!(sm.panduan(stu))){
sm.selectStudent(stu);
}
else
throw new MyException("该学号不存在!");
}
else if(choose.startsWith("6")){
sm.tongji();
}
else if(choose.startsWith("7")){
in.close();
out.close();
System.exit(0);
}
else {
throw new MyException("选择错误,请重新选择");
}
}
}
else
System.out.println("用户ID或密码错误,请重新输入");
}
throw new MyException("该卡已锁定!");
}
}
class User{
String uername;
String passage;
User(String user,String pass){
this.uername=user;
this.passage=pass;
}
void set_uername(String use){
uername=use;
}
String get_uername(){
return uername;
}
void set_passage(String pass){
passage=pass;
}
String get_passage(){
return passage;
}
}
class MyException extends Exception{
public MyException(String e) {
super(e);
}
}

  

Java用户名登录学生信息管理系统并对其进行增删改查操作的更多相关文章

  1. AD 域服务简介(三)- Java 对 AD 域用户的增删改查操作

    博客地址:http://www.moonxy.com 关于AD 域服务器搭建及其使用,请参阅:AD 域服务简介(一) - 基于 LDAP 的 AD 域服务器搭建及其使用 Java 获取 AD 域用户, ...

  2. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码

    原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码 上一讲我们创建了一系列的解决方案,我们通过一个例子来看看层与层之间的关系 ...

  3. Java课程设计---学生信息管理系统需求分析及总体设计

    按照软件工程实践的原则,开发大型程序需要经历需求分析.总体设计.详细设计.编码实现.系统测试.系统维护等几个阶段. 1.需求分析 本阶段是整个软件开发过程中最重要的环节.通过了解实际运行的系统或与用户 ...

  4. JAVA课程设计-学生信息管理系统(个人博客)

    1. 团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模块或任务说明 负责person类的编写,建立person对象, 完成M ...

  5. java+jsp+sqlserver实现简单的增删改查操作 连接数据库代码

    1,网站系统开发需要掌握的技术 (1)网页设计语言,html语言css语言等 (2)Java语言 (3)数据库 (4)等 2,源程序代码 (1) 连接数据库代码 package com.jaovo.m ...

  6. Java实现简单的增删改查操作

    需求分析:通过数组 ,完成 对学生信息的 管理 (增删改查)创建1个 学生类创建1个 CRUD的类 – 学生管理类 并测试 在这个程序中我只运用了两个类进行操作 package com.hopu.de ...

  7. java连接mysql以及增删改查操作

    java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) class DBConnectio ...

  8. 【温故知新】Java web 开发(四)JSTL 与 JDBC 的增删改查

    本篇开始使用 jstl 这个 jsp 的标签库,在同一个 Servlet 中实现处理 CRUD 请求,以及使用 jdbc 数据库基本操作.然后你会发现 Servlet 和 jdbc 还是有很多不方便之 ...

  9. 权限管理系统之LayUI实现页面增删改查和弹出层交互

    由于对LayUI框架不太熟悉,昨天抽空看了下LayUI的文档,今天在网上找了使用LayUI进行增删改查相关内容,自己照葫芦画了个瓢,画瓢部分不是很难,主要是下午遇到了一个弹出层的问题耗时比较久. 同一 ...

随机推荐

  1. 如何发布一个npm包(基于vue)

    前言:工作的时候总是使用别人的npm包,然而我有时心底会好奇自己如何发布一个npm包呢,什么时候自己的包能够被很多人喜欢并使用呢...今天我终于迈出了第一步. 前提:会使用 npm,有 vue 基础, ...

  2. 实现一个简单的vue-router

    所有项目的源代码都放在我的github上,欢迎大家start: https://github.com/Jasonwang911/my-vue-router 首先来看下vue-router的使用: im ...

  3. XML部分

    XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 两种形式:DTD以及schema: 本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展sc ...

  4. Ocelot中文文档-Not Supported

    Not Supported Ocelot不支持以下几种情况 块级编码(Chunked Encoding ) - Ocelot始终会获取消息体的大小并返回内容长度(Content-Length).这种情 ...

  5. http请求的headers详解

    关于http请求的headers详解:这里以HTTP1.1为例结合postman返回的信息 1.Server →nginx/1.15.8   A name for the server  这是post ...

  6. 有道云笔记链接——JAVA面向对象的学习

     http://note.youdao.com/noteshare?id=cf39a0e493a6b3c7ad5d22204a7e7843

  7. Java--实现单点登录

    1 什么是单点登陆 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用 ...

  8. 前端开发周报: CSS 布局方式方式与JavaScript数据结构和算法

    前端开发周报:CSS 布局方式与JavaScript动画库 1.常见 CSS 布局方式详见: 一些常见的 CSS 布局方式梳理,涉及 Flex 布局.Grid 布局.圣杯布局.双飞翼布局等.http: ...

  9. 【读书笔记】iOS-iOS AirPlay与AppleTV

    享受高清晰影院般的大屏幕电影带来的快乐,单纯的iOS设备实现这些是不可能的.苹果有一套解决方案,iOS设备把这些视频和音效数据无线传输(WiFi或蓝牙)Apple TV,然后由Apple TV将视频和 ...

  10. 【读书笔记】iOS-Interface Builder

    IBOutlet或IBAction符号对编译不产生任何影响,它们只是标记,用于告诉Xcode这些对象可以和UI控件进行关联,以便于在编辑Interface Builder上的UI控件的时候Xcode可 ...