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

📄 server.java

📁 学籍管理系统,可以实现多方面学生学籍的管理
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
            String str1="",str2="";
            StringTokenizer fenxi=new StringTokenizer(s,",");
            if(fenxi.hasMoreTokens())
             { 
               str1=fenxi.nextToken(); 
             }
           if(fenxi.hasMoreTokens())
             { 
               str2=fenxi.nextToken();
             }
         
           //...............
            try{
  PreparedStatement ptmt=con.prepareStatement("insert into subject (sub_no,sub_name)values(?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2);     
                ptmt.executeUpdate();  
                out.writeUTF("添加成功");//////自己又添加上的代码
                }
             catch(SQLException ee) {}
          }
       catch (IOException e) 
          {
             try
                    { 
                      socket.close();
                      con.close();
                    }                    
                catch(Exception eee)
                    {
                    }
                              
              System.out.println("客户离开了");
              break;                                  
          }
       
     }
  } 
}

//以上定义一个sub表中添加数据的线程
//以下定义一个login的线程
//以下定login的线程
class Server_login 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_login(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="";
            
            StringTokenizer fenxi=new StringTokenizer(s,",");
            if(fenxi.hasMoreTokens())
             { 
               str1=fenxi.nextToken(); 
             }
           if(fenxi.hasMoreTokens())
             { 
               str2=fenxi.nextToken();
             }
          //..... 判断条件........
        try{
           	sqlCondition="select * from login where logname='"+str1+"'";
            rs=stmt.executeQuery(sqlCondition);   
            if(rs.next())
            {out.writeUTF("用户名已存在请重新输入");}   
            else
            { try{
                PreparedStatement ptmt=con.prepareStatement("insert into login(logname,password)values(?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2); 
                ptmt.executeUpdate();  
                out.writeUTF("添加成功"+s);//////自己又添加上的代码
                }
             catch(SQLException ee) {}}
           }
       
        
           catch(SQLException e) {System.out.println("yichang"+e.getMessage());}
           //............判断条件...
           /* try{
                PreparedStatement ptmt=con.prepareStatement("insert into login(logname,password)values(?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2); 
                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;                                  
          }
       
     }
  } 
}
//以上定义login的线程
//以下定义rankUpdate的线程
class Server_rankUpdate 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_rankUpdate(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{
           	sqlCondition="select * from rank where rank_sno='"+str1+"' and rank_subno='"+str3+"'";
            rs=stmt.executeQuery(sqlCondition);   
            if(rs.next())
            {  String stu_no=rs.getString("rank_sno");
              System.out.println("sfsfd"+stu_no);
            	try{
            	PreparedStatement ptmt=con.prepareStatement("update rank set rank_sname=?,rank_subname=?,rank_score=? where [rank_sno]=? and [rank_subno]=?");
                ptmt.setString(4,str1);
                ptmt.setString(5,str3); 
                ptmt.setString(1,str2);
                ptmt.setString(2,str4);
                ptmt.setString(3,str5);  
                ptmt.executeUpdate();  
                out.writeUTF(" 修改成功"+s);//////自己又添加上的代码
                }
             catch(SQLException ee) {}
            	}   
            else
            { out.writeUTF("该条记录不存在,请重新输入");
            System.out.println("该条记录不存在,请重新输入");
             }
           }    
           catch(SQLException e) {System.out.println("yichang"+e.getMessage());}
           //---------判断条件-------------
           //...............
           /* try{
            	PreparedStatement ptmt=con.prepareStatement("update rank set rank_sname=?,rank_subname=?,rank_score=? where [rank_sno]=? and [rank_subno]=?");
                ptmt.setString(4,str1);
                ptmt.setString(5,str3); 
                ptmt.setString(1,str2);
                ptmt.setString(2,str4);
                ptmt.setString(3,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;                                  
          }
       
     }
  } 
}
//以上定义rankUpdate的线程
//以下定义banJi的线程
class Server_banJi 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_banJi(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="";
            StringTokenizer fenxi=new StringTokenizer(s,",");
            if(fenxi.hasMoreTokens())
            { 
              str4=fenxi.nextToken();
            }
            if(fenxi.hasMoreTokens())
             { 
               str1=fenxi.nextToken(); 
             }
           if(fenxi.hasMoreTokens())
             { 
               str2=fenxi.nextToken();
             }
           if(fenxi.hasMoreTokens())
           { 
             str3=fenxi.nextToken();
           }
          
      //----------- 判断条件------------------
         if (str4.equals("classAdd"))
         {
           try{
           	sqlCondition="select * from class where class_no='"+str1+"'";
            rs=stmt.executeQuery(sqlCondition);   
            if(rs.next())
            {out.writeUTF("此班级已存在请重新输入");
            }   
            else
            { try{
                PreparedStatement ptmt=con.prepareStatement("insert into class(class_no,class_name,class_master)values(?,?,?)");
                ptmt.setString(1,str1);
                ptmt.setString(2, str2); 
                ptmt.setString(3, str3); 
                ptmt.executeUpdate();  
                out.writeUTF("添加成功"+s);//////自己又添加上的代码
                }
               catch(SQLException ee) {}
             }
           } 
           catch(SQLException e) {System.out.println("yichang"+e.getMessage());
                                 }
         }
         else if(str4.equals("classDel")) {
         	
         	try {
         		sqlCondition="select * from class where class_no='"+str1+"'";
                rs=stmt.executeQuery(sqlCondition);   
                if(rs.next())
                {
                	try{
                        PreparedStatement ptmt=con.prepareStatement("delete from class where [class_no]=? ");
                        ptmt.setString(1,str1);
                        ptmt.executeUpdate();  
                        out.writeUTF("classDel"+","+"删除成功"+s);//////自己又添加上的代码
                        }
                     catch(SQLException ee) {}
                }
                    else{out.writeUTF("此班级不存在");
                    	}
          
         	}catch(SQLException e){}
         	
             }
         else if(str4.equals("classUpdate"))
         {
         	 try{
         	 	PreparedStatement ptmt=con.prepareStatement("update class set class_name=?,class_master=? where [class_no]=?");
//         	 	PreparedStatement ptmt=con.prepareStatement("update yanzhen set name=?,city=?,telphone=? where [no]=?"); 
         	 	 ptmt.setString(3,str1);
         	 	 ptmt.setString(1, str2); 
         	 	 ptmt.setString(2,str3);        	 	                 
         	 	 ptmt.executeUpdate();  
         	 	 out.writeUTF("classUpdate"+","+"修改成功");//////自己又添加上的代码
         	 	 }
         	 	  catch(SQLException ee) {}
         }
         else if(str4.equals("classFind"))
         {
         	sqlCondition="SELECT * FROM class WHERE class_no='"+str1+"'";
       		try{  
                 rs=stmt.executeQuery(sqlCondition);
                 number=0;
                 while(rs.next())
                  {
                   number++;
                   String class_no=rs.getString("class_no");
                   String class_name=rs.getString("class_name");
                  // String ex_sub=rs.getString("ex_sub");
                   String class_master=rs.getString("class_master");
                   out.writeUTF("classFind"+","+class_no+" , "+class_name+","+class_master);
                   out.flush();
                  }
                 if(number==0)
                  {
                   out.writeUTF("没有查询到任何记录\n");
                  }
       		}
       		catch (SQLException ee){}
            
         } 

          }
       catch (IOException e) 
          {
             try
                    { 
                      socket.close();
                      con.close();
                    }                    
                catch(Exception eee)
                    {
                	System.out.println("yichang"+eee.getMessage());
                    }                
              System.out.println("客户离开了");
              break;                                  
          }
       
     }
  } 
}
//以上定义banJi的线程

⌨️ 快捷键说明

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