⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infocontroller.java

📁 数据库连接程序和实例
💻 JAVA
字号:
//读取用户输入命令并做相应处理的组件

import java.io.*;
import java.sql.*;
import java.util.*;
import java.text.*;
public class infoController
{

	  public JdbcOdbc statRes=new JdbcOdbc();
	  //实例化jdbcodbc
	  public model demo=new model();
	  //实例化model
       Statement sta=statRes.connecting();

	  ResultSet rs=null;
	  String sqlUpd=null,sqlDel=null,sqlQue=null,Sno=null;
	  //定义变量,并且初始化


	
	  public void displayMenu()
		  //显示菜单
	  {
		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("*********************************");
		System.out.println("请选择(1-6):");
	  }
	
	  public int readChoice()
		  //读取用户的选择
	  {
		int read;
		while(true)
		{
		  displayMenu();
		  //显示菜单


		  int read=0;
		  try
		  {
			read=Integer.parseInt(inputStream.readLine());
			//直接将从键盘输入的字符串转化为整型
		  }
		  catch (NumberFormatException e)
		  {
			  System.out.println("请您输入整数!!");
		  continue;
		  }
		  catch (IOException m)
		  {
			  System.out.println("系统出现问题");
		  continue;
		  }//捕捉IO例外
		  if(read==-1)
		  {
			  System.exit(0);}

		  }
		if (read<0 || read >6)
			//如果输入的值不符和要求,显示提示信息
		{
		  System.out.println("请输入1-6之间的整数!");

		  continue;
		}
		else
		{
		  break;
		}
		if(read==-1)
		 {
			System.exit(0);}

			return read;
		 }
	}
	
	  public void command(String Sno)
	  //读取用户的选择,并做出相应处理
	  {
			this.Sno=Sno;
			//将变量变成内部变量
			int choice=readChoice();
			switch (choice)
		{

			 case 1:insert(Sno);
			 //插入学生信息
			 break;
			 case 2:update(Sno);
			 //修改学生信息
			 break;
		
			case 3:delete(Sno);
			//删除学生信息
			break;
			case 4:query(Sno);
			//查询学生信息
			 break;
			case 5:load(Sno);
			//录入学生信息
			  break;
			case 6:System.out.println("欢迎下次再来查询");
			  System.exit(0);
		}
	  }


	
	  public void insert(String Sno)
	  //学生信息的插入具体操作
	  {
		String sex=null,sno=null,name=null,birthday=null;int i=1;
		//定义变量并且进行初始化
		while (true)
		{
		  System.out.println("请输入您要插入的学生的信息:");

		  System.out.println("学号:");
		  sno=new model().getSno();
		  //得到学生学号
		  return sno;
		  //返回学生学号
		  System.out.println("姓名:");
		  name=new model().getName();
		  //得到学生姓名
           return name;
		  // 返回学生姓名值
		  System.out.println("性别:");
		  //得到学生性别 
		  sex=new model().getSex();
		  //得到学生性别
            return sex;
			//返回得到的值
		  System.out.println("出生日期:");
		  birthday=model.getDate();
		  //得到学生的生日
            return birthday;
			//返回得到的值

		 
		  sqlUpd="insert into 学生基本信息 values('"+sno+"','"+name+"','"+sex+"','"+birthday+"')";
				 //读取学生信息并进行保存
				 try
				 {
					sta.executeUpdate(sqlUpd);sqlUpd=null;
					 System.out.println("保存已成功!");
					 System.out.println("");
				 }
					catch(Exception e)
				 { 
				   System.out.println(e);}
					break;
				 }
		  }

	}

	//学生信息的删除
	  public void delete(String Sno)
	  //通过用户输入学号,来删除学生信息
	  {
		String name=null,sno=null,sex=null,choice=null;
		//定义变量并且进行初始化 
		int i=1;
		boolean success=false;
		while(true)
		{

		  System.out.println("1:学号;");
		  System.out.println("2:姓名;");
		  System.out.println("3:性别");
		  String i;
		  try
		  {
			i=Integer.parseInt(inputStream.readLine());
			//将从键盘输入的 i的值转化为整型
		  }
		  catch (NumberFormatException e)
			  {
					System.out.println("请您输入整数!!");
				    continue;
		  }
		  catch (IOException m)
			  {
			      System.out.println("IO系统出现问题");
		          continue;
		  }
		  if (i!=1 && i!=2 && i!=3 )
				 {
			         System.out.println("请输入规定的值");
		             continue;
		         }
		  
		  switch (i)
		  {
			  case 1:
					  System.out.println("请输入学号:");
					  sno=new model().getSno();
					  //得到学生学号
					   return sno;
					   //返回学生学号
					  sqlQue="select * from 学生基本信息 WHERE sno='"+sno+"'";
					  //查询语句
					  rs=statRes.query(sta,sqlQue);
					  //定义结果集
			  try
			  {
				while (rs.next())
				{
				  sno=rs.getString("sno");
				  name=rs.getString("name");
				  sex=rs.getString("sex");
				  
				  System.out.println("");
				  System.out.print("学号:");
				  System.out.print(sno+"       ");
				  System.out.print("姓名:" );
				  System.out.print(name+"        ");
				  System.out.print("性别:");
				  System.out.print(sex+"       ");
				  System.out.println();
				  System.out.println("");
				  //查询的学生信息
				}
			  }
			  catch (Exception a)
			  {
			  System.out.println(a);}
			  //开始删除
			  System.out.println("您确定要删除");
			  String choice;
			  choice=new model().getChoice();
			  //选择分支
			  if (choice.equals("Y"))
				  //如果用户确定信息,就进行相关操作
			  {
				sqlDel="DELETE * FROM 学生基本信息 WHERE sno='"+sno+"'";
				//查询语句
			  }
			  if (statRes.delete(sta,sqlDel))
			  {
				System.out.println("您已成功删除学号为 "+sno+" 的学生的全部记录!");
				sqlDel=null;
			   break;
			  }
			  if (choice.equals("N"))
				  //如果用户取消操作,则不进行相关操作
			  {
				System.out.println("取消");
				System.out.println("");
				break;
			  }
			  
			  break;
			//执行删除
			case 2:
				//通过用户输入姓名来删除学生信息
			  System.out.println("请输入姓名:");
			  name=new model().getName();
			  System.out.println("姓名是 "+name+" 的学生的全部信息:");
			  sqlQue="select * from 学生基本信息 WHERE name='"+name+"'";
			  rs=statRes.query(sta,sqlQue);
			  try
			  {
				while (rs.next())
				{
				  sno=rs.getString("sno");
				  name=rs.getString("name");
				  sex=rs.getString("sex");
				  //要删除的学生信息
				  System.out.println("");System.out.print("学号:");System.out.print(sno+"       ");
				  System.out.print("姓名:" );System.out.print(name+"        ");
				  System.out.print("性别:");System.out.print(sex+"       ");
				  System.out.println("");
				}
			  }
			  catch (Exception a)
			  {
			  System.out.println(a);}
			  //开始删除
			  System.out.println("您确定要删除");
				System.out.println("确定(Y)");
				  System.out.println("取消(N)");
			  while (true)
			 {
					choice=new model().getDecision();
					if (choice.equals("Y"))
				{
					sqlDel="DELETE * FROM 学生基本信息 WHERE name='"+name+"'";
				}
					if (statRes.delete(sta,sqlDel))
				{
					 System.out.println("记录已经全部被删除");
					sqlDel=null;
					System.out.println("");
					 break;
				}
					if (choice.equals("N"))
				{
					System.out.println("取消!");
				  
				  break;
				}
			}
			  break;
			case 3:
				//通过用户输入学生性别来删除学生的相关信息
			  System.out.println("请输入学生的性别:");
			  sex=new model().getSex();
			  //得到学生性别
			  System.out.println("性别是 "+sex+" 的学生的全部信息:");
			  sqlQue="select * from 学生基本信息 WHERE sex='"+sex+"'";
			  //查询语句
			  rs=statRes.query(sta,sqlQue);
			  //结果集
			  try
			  {
				while (rs.next())
				{
				  sno=rs.getString("sno");
				  name=rs.getString("name");
				  sex=rs.getString("sex");
				 
				  System.out.println("");
				  System.out.print("学号:");
				  System.out.print(sno+"       ");
				  System.out.print("姓名:" );
				  System.out.print(name+"        ");
				  System.out.print("性别:");
				  System.out.print(sex+"       ");
				  System.out.println("");
				} //要删除的学生信息
			  }
			  catch (Exception a)
			  {
					System.out.println(a);
			  }
					//开始删除
					System.out.println("您确定要删除,确定");
					System.out.println("确定(Y)");
					System.out.println("取消(N)");
				  //请用户确定信息后进行操作
				 while (true)
			{
				choice=new model().getChoice();
				//实例化model
				if (choice.equals("Y"))
					//如果用户确定删除信息,则进行相关操作
				{
				  sqlDel="DELETE * FROM 学生基本信息 WHERE sex='"+sex+"'";
				  //删除学生信息
				}
				if (statRes.delete(sta,sqlDel))
					//如果信息删除成功,则打印成功删除记录
				{
				  System.out.println("您已成功删除记录!");
				  sqlDel=null;
				  System.out.println("");
				  break;
				}
				if (choice.equals("N"))
					//如果用户取消操作,则删除操作不进行
				{
				  System.out.println("取消");
				System.out.println("");
				break;
				}
			   break;
	  }
	  public void load(String Sno)
	  {
		 String choice=null;
		 System.out.println("学生信息录入");
		 System.out.println("确定(Y)");
		 System.out.println("取消(N)");
		 //询问用户是否确定录入信息
		while(true)
		{
				choice=new model().getChoice();
				//得到用户的选择
				if (choice.equals("N"))
			  {
				System.out.println("取消。");
				System.out.println("");
				//不进行操作
			
		      }
				 else
			  {
					String sqlDel="DELETE * FROM 学生基本信息";
					if (statRes.delete(sta,sqlDel))
				{
					System.out.println("学生信息已经删除");
					insert(Sno);
				}
			  }
		   }
	  }


	
	  public void query(String Sno)
	  //查询的方法
	  {
			String name=null,sno=null,sex=null,choice=null;int i=1;
		
			while(true)
		 {
				System.out.println("1:学号;");System.out.println("2:姓名;");System.out.println("3:性别");
				 String i;
				 try
			{
				i=Integer.parseInt(inputStream.readLine());
				//将从键盘输入的i转化为整型
			}
				 catch (NumberFormatException e)
			{
					 System.out.println("请您输入整数!!");
					continue;
		    }
				catch (IOException m)
			{
					System.out.println("IO系统出现问题");
					continue;
			}
				if (i!=1 && i!=2 && i!=3 )
				 //如果输入不符和要求,显示提示信息
			{
					 System.out.println("请输入规定的值");
					 continue;
			 }
		 
		  
					switch (i)
					 //选择分支
			 {
				case 1:
				
				 System.out.println("请输入学生的学号:");
				//通过用户输入学号来进行查询
				 String sno;
				 try
					{
						i=Integer.parseInt(inputStream.readLine());
					}
						 catch (NumberFormatException e)
					{
						System.out.println("请您输入整数!!");
						continue;
					 }
				 catch (IOException m)
					{
					    System.out.println("IO系统出现问题");
		                 continue;
					}
						 sqlQue="select * from 学生基本信息 WHERE sno='"+sno+"'";
						 rs=statRes.query(sta,sqlQue);
				 try
					{
						System.out.print("查询结果:");System.out.println("学号为 "+sno+" 的学生的全部信息是:");
						//输出查询结果
						while (rs.next())
					  {
							 sno=rs.getString("sno");
							 name=rs.getString("name");
							 sex=rs.getString("sex");
							//查询得到的学生信息
				 
							System.out.print("学号:");
							System.out.print(sno+"       ");
						    System.out.print("姓名:" );
						    System.out.print(name+"        ");
						    System.out.print("性别:");
							System.out.print(sex+"       ");
							//输出查询结果
				 
					 }
			    }
					catch (Exception a)
				  {
							System.out.println(a);
				  }
							 break;
			case 2:
							System.out.println("请输入您要查询的学生的姓名:");
							String name;
					try
					{
						name=inputStream.readLine();
						//从键盘输入学生姓名
					}
					 catch (NumberFormatException e)
					{
							System.out.println("请您输入整数!!");
							continue;
					}
					 catch (IOException m)
					{
							System.out.println("IO系统出现问题");
							continue;
					 }
							sqlQue="select * from 学生基本信息 WHERE name='"+name+"'";
							//查询语句
							 rs=statRes.query(sta,sqlQue);
							 //定义结果集
					 try
					{
							System.out.print("查询结果:");System.out.println("姓名为 "+name+" 的学生的全部信息是:");
							//输出查询结果
							while (rs.next())
						{
							  sno=rs.getString("sno");
							  name=rs.getString("name");
							  sex=rs.getString("sex");
						
							  System.out.println("");System.out.print("学号:");System.out.print(sno+"       ");
							  System.out.print("姓名:" );System.out.print(name+"        ");
							  System.out.print("性别:");System.out.print(sex+"       ");
							  System.out.println("");	
								//打印查询得到的学生信息
						}
					 }
					catch (Exception a)
				  {
				      System.out.println(a);
				  }
			       break;
					case 3:
							  System.out.println("请输入您要查询的学生的性别:");
							  sex=read.getSex();
							  //得到学生性别
							  sqlQue="select * from 学生基本信息 WHERE sex='"+sex+"'";
							  //查询语句
							  rs=statRes.query(sta,sqlQue);
					  try
					{
								System.out.print("查询结果:");System.out.println("性别为 "+sex+" 的学生的全部信息是:");
							while (rs.next())
						{
								  sno=rs.getString("sno");
								  name=rs.getString("name");
								  sex=rs.getString("sex");
								  
								  System.out.println("");System.out.print("学号:");System.out.print(sno+"       ");
								  System.out.print("姓名:" );System.out.print(name+"        ");
								  System.out.print("性别:");System.out.print(sex+"       ");
								  System.out.println("");
								//打印查询得到的学生信息
						}
					 }
					 catch (Exception a)
					{
						 System.out.println(a);
					}
							break;
		 
		}
	  }


	
	  public void update(String Sno)
	  {//修改的方法
	   
		delete(Sno);
		//先对学生信息系统的相关内容进行删除
		insert(Sno);
		//再将要改的的信息输入
	  }
	}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -