📄 server.java
字号:
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 + -