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

📄 server.java

📁 学籍管理系统,可以实现多方面学生学籍的管理
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
             catch(SQLException ee) {}
          }
       catch (IOException e) 
          {
             try
                    { 
                      socket.close();
                      con.close();
                    }                    
                catch(Exception eee)
                    {
                	System.out.println("yichang"+eee.getMessage());
                    }
                              
              System.out.println("客户离开了");
              break;                                  
          }
       
     }
  } 
}
//以下为定义stuFind的线成
//Server_stuFind extends Thread
class Server_stuFind 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_stuFind(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 cxnr="",cxfc="",cxtj="";
	            //查询内容 cxnr cxfc cxfc cxtj cxtj
	            StringTokenizer fenxi=new StringTokenizer(s,":");
	            if(fenxi.hasMoreTokens())
	             { 
	               cxnr=fenxi.nextToken(); 
	             }
	           if(fenxi.hasMoreTokens())
	             { 
	               cxfc=fenxi.nextToken();
	             }
	           if(fenxi.hasMoreTokens())
	             { 
	               cxtj=fenxi.nextToken(); 
	             } 
	           if(cxtj.equals("完全一致"))
	               { 
	           	
	           	//测试测试测试测试测试测试测试
	           	if(cxfc.equals("姓名"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_name='"+cxnr+"'";
	           		
	           		}
	           	if(cxfc.equals("学号"))
           	{
          		sqlCondition="SELECT * FROM stu WHERE stu_no='"+cxnr+"'";
          		
          		}
	           	if(cxfc.equals("入学年份"))
           	{
          		sqlCondition="SELECT * FROM stu WHERE stu_ruxue='"+cxnr+"'";
          		
          		}
  //	          测试测试测试测试测试测试测试
	               //  sqlCondition=
	               //  "SELECT * FROM stu WHERE "+cxfc+" = "+"'"+cxnr+"'";
	               }
	            else if(cxtj.equals("前方一致"))
	               {
	                // sqlCondition=
	                // "SELECT * FROM stu WHERE "+cxfc+" LIKE "+"'"+cxnr+"%' ";
	            	if(cxfc.equals("学号"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_no LIKE "+"'"+cxnr+"%'";	           		
	           		}
	            	if(cxfc.equals("姓名"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_name LIKE "+"'"+cxnr+"%'";	           		
	           		}
	            	if(cxfc.equals("入学年份"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_ruxue LIKE "+"'"+cxnr+"%'";	           		
	           		}
	            	
	               } 
	            else if(cxtj.equals("后方一致"))
	               {
	               //  sqlCondition=
	                // "SELECT * FROM stu WHERE "+cxfc+" LIKE "+"'%"+cxnr+"' ";
	            	if(cxfc.equals("学号"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_no LIKE "+"'%"+cxnr+"'";	           		
	           		}
	            	if(cxfc.equals("姓名"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_name LIKE "+"'%"+cxnr+"'";	           		
	           		}
	            	if(cxfc.equals("入学年份"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_ruxue LIKE "+"'%"+cxnr+"'";	           		
	           		}
	               } 
	            else if(cxtj.equals("中间包含"))
	               {
	                // sqlCondition=
	               //  "SELECT * FROM bookform WHERE "+cxfc+" LIKE "+"'%"+cxnr+"%' ";
	            	if(cxfc.equals("学号"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_no LIKE "+"'%"+cxnr+"%'";	           		
	           		}
	            	if(cxfc.equals("姓名"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_name LIKE "+"'%"+cxnr+"%'";	           		
	           		}
	            	if(cxfc.equals("入学年份"))
	            	{
	           		sqlCondition="SELECT * FROM stu WHERE stu_ruxue LIKE "+"'%"+cxnr+"%'";	           		
	           		}
	            	
	               }
	            try{
	                   
	                 rs=stmt.executeQuery(sqlCondition);
	            	//rs=stmt.executeQuery("SELECT * FROM stu WHERE s_name='"+cxnr+"'");
	                 number=0;
	                 while(rs.next())
	                  {
	                   number++;
	                   String stu_no=rs.getString("stu_no");
	                   String stu_name=rs.getString("stu_name");
	                   String stu_ruxue=rs.getString("stu_ruxue");
	                   String stu_sex=rs.getString("stu_sex");
	                   String stu_nation=rs.getString("stu_nation");
	                   String stu_date=rs.getString("stu_date");	             
	                   String stu_tel=rs.getString("stu_tel");
	                   String stu_addr=rs.getString("stu_addr");
	                   String stu_memory=rs.getString("stu_memory");
	                  // Date 日期=rs.getDate("日期");
	                  //out.writeUTF("\n"+书名+" , "+作者+","+出版社+","+价格+
	                  //             ","+日期);
	                   out.writeUTF("\n"+stu_no+","+stu_name+","+stu_ruxue+","+stu_sex+" , "+stu_nation+" , "+stu_date+","+stu_tel+","+stu_addr+","+stu_memory);
	                   out.flush();
	                  }
	                 if(number==0)
	                  {
	                   out.writeUTF("没有查询到任何记录\n");
	                  }
	               
	                }
	             catch(SQLException ee) {
	             System.out.println("yichang"+ee.getMessage());	
	             }//

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

//以下定义rankAdd的线程
class Server_rankAdd 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_rankAdd(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="";
            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();
           }
          
           //...............
            try{
  PreparedStatement ptmt=con.prepareStatement("insert into rank(rank_sno,rank_sname,rank_subno,rank_subname,rank_score)values(?,?,?,?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2); 
                ptmt.setString(3,str3);
                ptmt.setString(4, str4);
                ptmt.setString(5,str5);  
                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;                                  
          }
       
     }
  } 
}
//以上定义rankAdd的线程
//以下定义一个rank表中删除数据的线程
class Server_rankDel 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_rankDel(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="";
           String str2="";
           StringTokenizer fenxi=new StringTokenizer(s,",");
           if(fenxi.hasMoreTokens())
            { 
              str1=fenxi.nextToken(); 
            }
          if(fenxi.hasMoreTokens())
            { 
              str2=fenxi.nextToken();
            }
           try{
               
             	PreparedStatement ptmt=con.prepareStatement("delete from  rank where  [rank_sno]=? and [rank_subno]=?"); 
              	ptmt.setString(1,str1); 
              	ptmt.setString(2,str2); 
              	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("yichang"+eee.getMessage());
                   }
                             
             System.out.println("客户离开了");
             break;                                  
         }
      
    }
 } 
}

//以下定义一个sub表中添加数据的线程
//以下定义一个sub表中添加数据的线程
class Server_subAdd 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_subAdd(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);

⌨️ 快捷键说明

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