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

📄 server.java

📁 学籍管理系统,可以实现多方面学生学籍的管理
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
				Socket you=null;
				try
				{
					you=myserver.accept();
					}
					catch (IOException e)
				{
				}
					if(you!=null) //为建立的每个连接创建一个服务器线程;
				{             //处理相应的请求。以上请求是在客户端不为空的情况下
				System.out.println("client connected...");  
					new  Server_banJi(you).start(); 
						}
											      
				}
			}
	  };
  td11.start();
//			以上启动一个banJi的添加线程									    	
						    						    	
	  }
}
//定义一个查找rankFind的线程
class Server_rankFind extends Thread
{ 
	Socket socket;
	   Connection con=null;
	   Statement  stmt=null;
	   ResultSet  rs;
	   DataOutputStream out=null;
	   DataInputStream  in=null;
	   String s=null;
	   int number=0;
	   Server_rankFind(Socket t)
	       { 
	         socket=t;
	         try {
	              in=new DataInputStream(socket.getInputStream());
	              out=new DataOutputStream(socket.getOutputStream());
	             }
	         catch (IOException e)
	             {
	             }
	         try {
	              Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
	             }
	         catch(ClassNotFoundException e){}
	         try{
	             con=DriverManager.getConnection("jdbc:odbc:graduate","liuwei","123456");
	             stmt=con.createStatement();
	            }
	         catch(SQLException ee) {}
	       }  
	  public void run()        
	  { 
	    while(true)
	     { 
	       try{
	            s=in.readUTF();
	            System.out.println(s);
	            String sqlCondition=null;
	            String str1="",str2="",panduan="";
	            //查询内容 cxnr cxfc cxfc cxtj cxtj
	            StringTokenizer fenxi=new StringTokenizer(s,",");
	            if(fenxi.hasMoreTokens())
	             { 
	            	panduan=fenxi.nextToken(); 
	             }
	           if(fenxi.hasMoreTokens())
	             { 
	               str1=fenxi.nextToken();
	             }
	           if(fenxi.hasMoreTokens())
	             { 
	               str2=fenxi.nextToken();
	             }
	           
	         //  if((str1.length()>0)&&(str2.length()>0))
	           if (panduan.equals("都不为空"))
	               { 
	          // 	sqlCondition="select * from stu,exam where stu.s_no=exam.ex_sno and stu.s_no='"+sno+"' and exam.ex_no='"+exno+"'";           	
	           	sqlCondition="select * from rank where rank_sno='"+str1+"' and rank_subno='"+str2+"'";
	               }	          
	            if (panduan.equals("考试编号查询"))
	            {   
	            	sqlCondition="select * from rank where rank_subno='"+str1+"'";
	            	}
	            if (panduan.equals("学号查询"))
	            {   
	            	sqlCondition="select * from rank where rank_sno='"+str1+"'";
	            	}
	            try{
	                   
	                 rs=stmt.executeQuery(sqlCondition);
	            	//rs=stmt.executeQuery("select * from rank where rank_sno='0202001'");
	            	//rs=stmt.executeQuery("SELECT * FROM stu WHERE s_name='"+cxnr+"'");
	                 number=0;
	                 out.writeUTF("\n"+"  学  号"+"   "+"姓  名"+"  "+"考试编号"+" "+"考试科目"+" "+"考试成绩"+"\n");
	                 while(rs.next())
	                  {
	                 	System.out.println("sdfasgas");
	                   number++;
	                   String rank_sno=rs.getString("rank_sno");
	                   String rank_sname=rs.getString("rank_sname");
	                   String rank_subno=rs.getString("rank_subno");
	                   String rank_subname=rs.getString("rank_subname");
	                   String rank_score=rs.getString("rank_score");
	                  // Date 日期=rs.getDate("日期");
	                  //out.writeUTF("\n"+书名+" , "+作者+","+出版社+","+价格+
	                  //             ","+日期);
	                   out.writeUTF("\n"+rank_sno+"    "+rank_sname+"     "+rank_subno+"    "+rank_subname+"     "+rank_score);
	                  }
	                 if(number==0)
	                  {
	                   out.writeUTF("没有查询到任何记录\n");
	                  }
	               
	                }
	             catch(SQLException ee)
				 {
	             	System.out.println("异常:"+ee.getMessage());
	             	}

	          }
	       catch (IOException e) 
	          {
	             try
	                    { 
	                      socket.close();
	                      con.close();
	                    }                    
	                catch(Exception eee)
	                    {
	                    }
	                              
	              System.out.println("客户离开了");
	              break;                                  
	          }
	       
	     }
	  } 
}

//以下定义stuAdd的线程
class Server_stuAdd extends Thread
{ 
   Socket socket;
   Connection con=null;
   Statement  stmt=null;
   ResultSet  rs;
   DataOutputStream out=null;
   DataInputStream  in=null;
   String s=null;
   int number=0;
   Server_stuAdd(Socket t)
       { 
         socket=t;
         try {
              in=new DataInputStream(socket.getInputStream());
              out=new DataOutputStream(socket.getOutputStream());
             }
         catch (IOException e)
             {
             }
         try {
              Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
             }
         catch(ClassNotFoundException e){}
         try{
             con=DriverManager.getConnection("jdbc:odbc:graduate","liuwei","123456");
             stmt=con.createStatement();
            }
         catch(SQLException ee) {}
       }  
  public void run()        
  { String sqlCondition=null;
    while(true)
     { 
       try{
            s=in.readUTF();
            System.out.println(s);
            String str1="",str2="",str3="",str4="",str5="",str6="",str7="",str8="",str9="";
            StringTokenizer fenxi=new StringTokenizer(s,",");
            if(fenxi.hasMoreTokens())
             { 
               str1=fenxi.nextToken(); 
             }
           if(fenxi.hasMoreTokens())
             { 
               str2=fenxi.nextToken();
             }
           if(fenxi.hasMoreTokens())
           { 
             str3=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str4=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str5=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str6=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str7=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str8=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str9=fenxi.nextToken();
           }
           //...............
            try{
  PreparedStatement ptmt=con.prepareStatement("insert into stu(stu_no,stu_name,stu_ruxue,stu_sex,stu_nation,stu_date,stu_tel,stu_addr,stu_memory)values(?,?,?,?,?,?,?,?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2); 
                ptmt.setString(3,str3);
                ptmt.setString(4, str4);
                ptmt.setString(5,str5);
                ptmt.setString(6, str6);
                ptmt.setString(7,str7);   
                ptmt.setString(8, str8);
                ptmt.setString(9,str9);  
                ptmt.executeUpdate();  
                out.writeUTF("添加成功"+s);//////自己又添加上的代码
                }
             catch(SQLException ee) {}
          }
       catch (IOException e) 
          {
             try
                    { 
                      socket.close();
                      con.close();
                    }                    
                catch(Exception eee)
                    {
                	System.out.println("yichang"+eee.getMessage());
                    }
                              
              System.out.println("客户离开了");
              break;                                  
          }
       
     }
  } 
}
//以上定义stuAdd的线程
//以下定义stuDel删除的线程
class Server_stuDel extends Thread
{ 
  Socket socket;
  Connection con=null;
  Statement  stmt=null;
  ResultSet  rs;
  DataOutputStream out=null;
  DataInputStream  in=null;
  String s=null;
  int number=0;
  Server_stuDel(Socket t)
      { 
        socket=t;
        try {
             in=new DataInputStream(socket.getInputStream());
             out=new DataOutputStream(socket.getOutputStream());
            }
        catch (IOException e)
            {
            }
        try {
             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            }
        catch(ClassNotFoundException e){}
        try{
            con=DriverManager.getConnection("jdbc:odbc:graduate","liuwei","123456");
            stmt=con.createStatement();
           }
        catch(SQLException ee) {}
      }  
 public void run()        
 { 
   while(true)
    { 
      try{
           s=in.readUTF();
           System.out.println(s);
           String sqlCondition=null;
           String str1="";
          str1=s;
           try{
               
             	PreparedStatement ptmt=con.prepareStatement("delete from  stu where  [stu_no]=?"); 
              	ptmt.setString(1,str1); 
              	ptmt.executeUpdate(); 
              	out.writeUTF("删除成功");
           		System.out.println(str1);//测试变量
               }
            catch(SQLException ee) {}

         }
      catch (IOException e) 
         {
            try
                   { 
                     socket.close();
                     con.close();
                   }                    
               catch(Exception eee)
                   {
                   }
                             
             System.out.println("客户离开了");
             break;                                  
         }
      
    }
 } 
}
//以上定义stuDel删除的线程
//定义一个修改的线程///////////////
class Server_stuUpdate extends Thread
{ 
   Socket socket;
   Connection con=null;
   Statement  stmt=null;
   ResultSet  rs;
   DataOutputStream out=null;
   DataInputStream  in=null;
   String s=null;
   int number=0;
   Server_stuUpdate(Socket t)
       { 
         socket=t;
         try {
              in=new DataInputStream(socket.getInputStream());
              out=new DataOutputStream(socket.getOutputStream());
             }
         catch (IOException e)
             {
             }
         try {
              Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
             }
         catch(ClassNotFoundException e){}
         try{
             con=DriverManager.getConnection("jdbc:odbc:graduate","liuwei","123456");
             stmt=con.createStatement();
            }
         catch(SQLException ee) {}
       }  
  public void run()        
  { String sqlCondition=null;
    while(true)
     { 
       try{
            s=in.readUTF();
            System.out.println(s);
            String str1="",str2="",str3="",str4="",str5="",str6="",str7="",str8="",str9="";
            StringTokenizer fenxi=new StringTokenizer(s,",");
            if(fenxi.hasMoreTokens())
             { 
               str1=fenxi.nextToken(); 
             }
           if(fenxi.hasMoreTokens())
             { 
               str2=fenxi.nextToken();
             }
           if(fenxi.hasMoreTokens())
           { 
             str3=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str4=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str5=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str6=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str7=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str8=fenxi.nextToken();
           }
           if(fenxi.hasMoreTokens())
           { 
             str9=fenxi.nextToken();
           }
           
           //...............
            try{
PreparedStatement ptmt=con.prepareStatement("update stu set stu_name=?,stu_ruxue=?,stu_sex=?,stu_nation=?,stu_date=?,stu_tel=?,stu_addr=?,stu_memory=? where [stu_no]=?");
//PreparedStatement ptmt=con.prepareStatement("update yanzhen set name=?,city=?,telphone=? where [no]=?"); 
                ptmt.setString(9,str1);
                ptmt.setString(1, str2); 
                ptmt.setString(2,str3);
                ptmt.setString(3, str4);
                ptmt.setString(4,str5);
                ptmt.setString(5, str6);
                ptmt.setString(6,str7); 
                ptmt.setString(7, str8);
                ptmt.setString(8,str9);  
                ptmt.executeUpdate();  
                out.writeUTF("修改成功");//////自己又添加上的代码
                }

⌨️ 快捷键说明

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