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

📄 servermessage_member.java

📁 用java编写的c/s结构的网络社区
💻 JAVA
字号:
package server;
import java.io.*;
import java.sql.SQLException;
import java.util.*;

import javax.swing.JTextArea;





public class ServerMessage_member 
{
	member strMember=new member();
	JTextArea jtaControl;
	Memberdb db=new Memberdb("new","user","user");

	member GetInfo(DataOutputStream dos,DataInputStream dis,JTextArea jtaControl,String strIP,int kind) throws SQLException
	{
		int num;
		byte [] data=new byte[1024];
		this.jtaControl=jtaControl;
		try {
			if(kind==1)
			{
				num=dis.read(data);
				String strMeg=new String (data,0,num,"GB2312");
				StringTokenizer stn = new StringTokenizer(strMeg, "/");
				String[] temp = {"","","","",""};
				int i = 0;
				while (stn.hasMoreTokens()) {
					temp[i] = stn.nextToken();
					i++;
				}

     			jtaControl.append("服务器:"+strIP+"注册信息接受完毕\n");
				member Member=new member(temp[0].trim(),temp[1].trim(),temp[2].trim(),
						temp[3].trim(),Integer.valueOf(temp[4]),0);
				db.InsertNew(Member);
				jtaControl.append("服务器:将"+strIP+"信息加入数据库\n");
			    
			}
			if(kind==2)
			{
				num=dis.read(data);
				String strMeg1=new String (data,0,num,"GB2312");
				StringTokenizer stn = new StringTokenizer(strMeg1, "/");
				String[] temp = {"","",""};
				int i = 0;
				while (stn.hasMoreTokens()) {
					temp[i] = stn.nextToken();
					i++;
				}
				jtaControl.append("服务器:"+strIP+"登录信息接受完毕\n");
				db.QueryData(temp[0].trim(),temp[1].trim(),null,null,Integer.valueOf(temp[2]),1);
				boolean isTrue=db.isExist();
				jtaControl.append("服务器:"+strIP+"帐户是否存在:"+isTrue+"\n");
				dos.writeBoolean(isTrue);
				if(isTrue)
				{
					strMember=db.GetInfo2();
					this.DownLoadInfo(dos, dis,strMember.ID,strMember.PassWord, strMember.Question, 
							strMember.Answer,strMember.sort,strMember.getBalance(), 2);
					jtaControl.append("服务器:向"+strIP+"传递所有信息\n");
				}
				
			}
			if(kind==3)
			{
				num=dis.read(data);
				dos.write("ok".getBytes());
				String id=new String(data,0,num);	//id
				int sort=dis.readInt();//sort
				jtaControl.append("服务器:"+strIP+"验证信息接受完毕\n");
				db.QueryData(id.trim(),null,null,null, sort,2);
				jtaControl.append("服务器:进行数据库查询\n");
				boolean isTrue=db.isExist();
				dos.writeBoolean(isTrue);
				jtaControl.append("服务器:向"+strIP+"传递存在信息\n");
			}
			if(kind==4)
			{
				num=dis.read(data);
				dos.write("ok".getBytes());
				String id=new String(data,0,num);	//id
				int sort=dis.readInt();//sort
				jtaControl.append("服务器:"+strIP+"找回密码信息接受完毕\n");
				db.QueryData(id.trim(),null,null,null, sort,2);
				jtaControl.append("服务器:进行数据库查询\n");
				member strMeg1=db.GetInfo();
				this.DownLoadInfo(dos, dis, null,strMeg1.PassWord, strMeg1.Question, strMeg1.Answer,
						0,0,1);
				jtaControl.append("服务器:向"+strIP+"传递问题,答案,密码信息\n");
			}
			if(kind==5)
			{
				num=dis.read(data);
				dos.write("ok".getBytes());
				String id=new String(data,0,num);	//id
				num=dis.read(data);
				String password=new String(data,0,num);//PW
				jtaControl.append("服务器:"+strIP+"找回密码信息接受完毕\n");
				db.QueryData(id.trim(),password.trim(),null,null,0,4);
				jtaControl.append("服务器:进行数据库查询\n");
				boolean isTrue=db.isExist();
				jtaControl.append("服务器:向"+strIP+"传递存在信息\n");
				dos.writeBoolean(isTrue);
				float fBalance=db.GetInfo3();
				dos.writeFloat(fBalance);
				jtaControl.append("服务器:向"+strIP+"传递余额信息\n");
			}
			if(kind==6)
			{
				num=dis.read(data);
				String strMeg=new String(data,0,num,"GB2312");
				StringTokenizer stn = new StringTokenizer(strMeg, "/");
				String[] temp =new String[4];
				int i = 0;
				while (stn.hasMoreTokens()) {
					temp[i] = stn.nextToken();
					i++;
				}
				db.QueryData(temp[0],temp[1],null,null,0,4);
				boolean isTrue=db.isExist();
				if(isTrue)
				{
					float balance=db.GetInfo3();
					if(balance-Float.valueOf(temp[2])>=0)
					{
						db.updatedata("balance",balance-Float.valueOf(temp[2]));
						db.QueryData(temp[3],null,null,null,0,3);
						db.isExist();
						db.updatedata("balance",db.GetInfo3()+Float.valueOf(temp[2]));
						dos.writeInt(3);
						
					}
					else
					{
						dos.writeInt(2);
					}
						
				}
				else
				{
					dos.writeInt(1);
				}
			}
			if(kind==7)
			{
				num=dis.read(data);
				dos.write("ok".getBytes());
				String id=new String(data,0,num);	//id
				num=dis.read(data);
				String password=new String(data,0,num);//PW
				jtaControl.append("服务器:"+strIP+"找回密码信息接受完毕\n");
				db.QueryData(id.trim(),password.trim(),null,null,0,4);
				jtaControl.append("服务器:进行数据库查询\n");
				boolean isTrue=db.isExist();
				jtaControl.append("服务器:向"+strIP+"传递存在信息\n");
				dos.writeBoolean(isTrue);
			}
			
			
		
	} catch (IOException e) {
		
		e.printStackTrace();
	}
	return null;
	}
	void DownLoadInfo(DataOutputStream dos,DataInputStream dis,
			String strID,String strPW,String strQusetion,String strAnswer,int sort,float balance,
			int kind ) throws IOException
	{
		byte [] data=new byte[1024];
		if(kind==1)
		{
			dos.write(strQusetion.getBytes("GB2312"));//Qu
			dis.read(data);
			dos.write(strAnswer.getBytes("GB2312"));//An
			dis.read(data);
			dos.write( strPW.getBytes(),0, strPW.length());//PW
		}
		if(kind==2)
		{
			dos.write(strID.getBytes(),0,strID.length());//ID
			dis.read(data);
			dos.write( strPW.getBytes(),0, strPW.length());//PW
			dis.read(data);
			dos.write(strQusetion.getBytes("GB2312"));//Qu
			dis.read(data);
			dos.write(strAnswer.getBytes("GB2312"));//An
			dis.read(data);
			dos.writeInt(sort);//sort
			dis.read(data);
			dos.writeFloat(balance);
		}
		
	}
	void GetSingleInfo(DataInputStream dis,JTextArea jtaControl,String strIP,int kind) throws IOException, SQLException
	{
		int num=-1;
		this.jtaControl=jtaControl;
		byte [] data=new byte[1024];
		switch(kind)
		{
		case 1:
			num=dis.read(data,0,num);
			String id=new String(data);	//id
			jtaControl.append("服务器:接收"+strIP+"账户信息\n");
			db.updatedata("id",id.trim());
			break;
		case 2:
			num=dis.read(data);
			String password=new String(data,0,num);//PW
			jtaControl.append("服务器:接收"+strIP+"密码信息\n");
			db.updatedata("password",password.trim());
			jtaControl.append("服务器:更新数据库密码信息\n");
			break;
		case 3:
			num=dis.read(data);
			String question=new String(data,0,num,"GB2312");//Qu
			jtaControl.append("服务器:接收"+strIP+"问题信息\n");
			db.updatedata("question", question.trim());
			jtaControl.append("服务器:更新数据库问题信息\n");
			break;
		case 4:
			num=dis.read(data);
			String answer=new String(data,0,num,"GB2312");//An
			jtaControl.append("服务器:接收"+strIP+"答案信息\n");
			db.updatedata("answer",answer.trim());
			jtaControl.append("服务器:更新数据库答案信息\n");
			break;
		case 5:
			float balance=dis.readFloat();//balance
			jtaControl.append("服务器:接收"+strIP+"余额信息\n");
			db.updatedata("balance",balance);
			jtaControl.append("服务器:更新数据库余额信息\n");
			break;
		}
	}
	void UpdateSingleInfo(DataOutputStream dos, String strMeg, int sort, float balance, int kind) throws IOException {
		
		
	}
	
	
}

⌨️ 快捷键说明

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