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

📄 accountserver.java

📁 用java编写的c/s结构的网络社区
💻 JAVA
字号:
package client;
import java.awt.*;
import java.awt.event.*;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;


public class AccountServer extends JPanel implements ActionListener,KeyListener
{
	DataOutputStream dos;
	DataInputStream dis;
	member strMember;
	JTextField jtfDeposit,jtfAID,jtfWithDraw,jtfEID,jtfIID,jtfMoney;
	JPasswordField jpfAPW,jpfEPW;
	JButton btInquire,btDeposit,btWithDraw,btVirement;
	ClientMessage_member message=new ClientMessage_member();
	AccountServer(DataOutputStream dos,DataInputStream dis,member strMember)
	{
		this.dis=dis;
		this.dos=dos;
		this.strMember=strMember;
		if(strMember.getsort()==4)
		{
			GridLayout gl=new GridLayout(3,1);
			setLayout(gl);
			JPanel p2=new JPanel();
			JPanel p2_1=new JPanel();
			JLabel jlbAID=new JLabel("客户账户");
			jtfAID=new JTextField(26);
			JLabel jlbAPW=new JLabel("密码");
			jpfAPW=new JPasswordField(26);
			p2_1.add(jlbAID);
			p2_1.add(jtfAID);
			p2_1.add(jlbAPW);
			p2_1.add(jpfAPW);
			p2_1.setBorder(BorderFactory.createTitledBorder("办理人信息"));
			p2.add(p2_1);
			JPanel p2_2=new JPanel();
			JLabel jlbDeposit=new JLabel("存入数额:");
			jtfDeposit=new JTextField(26);
			jtfDeposit.addKeyListener(this);
			btDeposit=new JButton("存入");
			btDeposit.addActionListener(this);
			p2_2.add(jlbDeposit);
			p2_2.add(jtfDeposit);
			p2_2.add(btDeposit);
			p2_2.setBorder(BorderFactory.createTitledBorder("办理存款"));
			p2.add(p2_2);
			JPanel p2_3=new JPanel();
			JLabel jlbWithDraw=new JLabel("取出数额:");
			jtfWithDraw=new JTextField(26);
			jtfWithDraw.addKeyListener(this);
			btWithDraw=new JButton("取出");
			btWithDraw.addActionListener(this);
			p2_3.add(jlbWithDraw);
			p2_3.add(jtfWithDraw);
			p2_3.add(btWithDraw);
			p2_3.setBorder(BorderFactory.createTitledBorder("办理取款"));
			p2.add(p2_3);
			p2.setBorder(BorderFactory.createTitledBorder("现金业务"));
			this.add(p2);
			JPanel p3=new JPanel(new GridLayout(5,1));
			JLabel jlbEID=new JLabel("转出的帐户:");
			jtfEID=new JTextField(26);
			JPanel p3_1=new JPanel();
			p3_1.add(jlbEID);
			p3_1.add(jtfEID);
			p3.add(p3_1);
			JPanel p3_2=new JPanel();
			JLabel jlbEPW=new JLabel("密码");
			jpfEPW=new JPasswordField(26);
			p3_2.add(jlbEPW);
			p3_2.add(jpfEPW);
			p3.add(p3_2);
			JPanel p3_5=new JPanel();
			JLabel jlbMoney=new JLabel("转入金额");
			jtfMoney=new JTextField(16);
			p3_5.add(jlbMoney);
			p3_5.add(jtfMoney);
			p3.add(p3_5);
			JPanel p3_3=new JPanel();
			JLabel jlbIID=new JLabel("转入的帐户");
			jtfIID=new JTextField(26);
			p3_3.add(jlbIID);
			p3_3.add(jtfIID);
			p3.add(p3_3);
			JPanel p3_4=new JPanel();
			btVirement=new JButton("转入");
			btVirement.addActionListener(this);
			p3_4.add(btVirement);
			p3.add(p3_4);
			p3.setBorder(BorderFactory.createTitledBorder("转帐业务"));
			this.add(p3);
		}
		else
		{
			this.setLayout(new GridLayout(3,1));
			JPanel p1=new JPanel(new GridLayout(2,1));
			JPanel p1_1=new JPanel();
			JLabel jlbAID=new JLabel("客户账户");
			jtfAID=new JTextField(26);
			JLabel jlbAPW=new JLabel("密码");
			jpfAPW=new JPasswordField(26);
			p1_1.add(jlbAID);
			p1_1.add(jtfAID);
			p1_1.add(jlbAPW);
			p1_1.add(jpfAPW);
			btInquire=new JButton("查询");
			btInquire.addActionListener(this);
			JPanel p1_2=new JPanel();
			p1_2.add(btInquire);
			p1.setBorder(BorderFactory.createTitledBorder("余额查询"));
			p1.add(p1_1);
			p1.add(p1_2);
			this.add(p1);
			JPanel p3=new JPanel(new GridLayout(5,1));
			JLabel jlbEID=new JLabel("转出的帐户:");
			jtfEID=new JTextField(26);
			JPanel p3_1=new JPanel();
			p3_1.add(jlbEID);
			p3_1.add(jtfEID);
			p3.add(p3_1);
			JPanel p3_2=new JPanel();
			JLabel jlbEPW=new JLabel("密码");
			jpfEPW=new JPasswordField(26);
			p3_2.add(jlbEPW);
			p3_2.add(jpfEPW);
			p3.add(p3_2);
			JPanel p3_5=new JPanel();
			JLabel jlbMoney=new JLabel("转入金额");
			jtfMoney=new JTextField(16);
			p3_5.add(jlbMoney);
			p3_5.add(jtfMoney);
			p3.add(p3_5);
			JPanel p3_3=new JPanel();
			JLabel jlbIID=new JLabel("转入的帐户");
			jtfIID=new JTextField(26);
			p3_3.add(jlbIID);
			p3_3.add(jtfIID);
			p3.add(p3_3);
			JPanel p3_4=new JPanel();
			btVirement=new JButton("转入");
			btVirement.addActionListener(this);
			p3_4.add(btVirement);
			p3.add(p3_4);
			p3.setBorder(BorderFactory.createTitledBorder("转帐业务"));
			this.add(p3);	
		}
	}
	public void actionPerformed(ActionEvent e) {
		byte [] data=new byte[1024];
		if(e.getSource()==btDeposit)
		{
			
		 try {
				message.UpdateInfo(dos, dis,jtfAID.getText().trim(),new String (jpfAPW.getPassword()),null,null, 0,0,4);
				if(dis.readBoolean())
				{
					
					strMember.setBalance(dis.readFloat());
					dos.writeInt(8);
					dis.read(data);
					strMember.setBalance(Float.valueOf(jtfDeposit.getText().trim())+strMember.getBalance());
					message.UpdateSingleInfo(dos,null,0,strMember.getBalance(),3);
				}
				else
				{
					JOptionPane.showMessageDialog(null,"帐户/密码有错","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				
			  } catch (IOException e1) 
			 {
				e1.printStackTrace();
			 }
			  jtfAID.setText("");
			  jpfAPW.setText("");
			  jtfDeposit.setText("");
		}
		if(e.getSource()==btWithDraw)
		{
				try {
					message.UpdateInfo(dos, dis,jtfAID.getText().trim(),new String (jpfAPW.getPassword()),null,null, 0,0,4);
					if(dis.readBoolean())
					{
						
						strMember.setBalance(dis.readFloat());
						if(strMember.getBalance()-Float.valueOf(jtfWithDraw.getText().trim())>=0)
						{
							dos.writeInt(8);
						    dis.read(data);
						    strMember.setBalance(strMember.getBalance()-Float.valueOf(jtfWithDraw.getText().trim()));
						    message.UpdateSingleInfo(dos,null,0,strMember.getBalance(),3);
						}
						else
						{
							JOptionPane.showMessageDialog(null,"您已余额不足","提示",JOptionPane.INFORMATION_MESSAGE);
						}
					    
					}
					else
					{
						JOptionPane.showMessageDialog(null,"帐户/密码有错","提示",JOptionPane.INFORMATION_MESSAGE);
					}
					
				} catch (IOException e1) {
					// TODO 自动生成 catch 块
					e1.printStackTrace();
				}
				jtfAID.setText("");
				  jpfAPW.setText("");
				  jtfWithDraw.setText("");
			
		}
		if(e.getSource()==btInquire)
		{
			try {
				message.UpdateInfo(dos, dis,jtfAID.getText().trim(),new String (jpfAPW.getPassword()),null,null, 0,0,4);
				if(dis.readBoolean())
				{
					strMember.setBalance(dis.readFloat());
					System.out.println(strMember.getBalance());
					JOptionPane.showMessageDialog(null,"该帐户余额为"+strMember.getBalance(),"提示",JOptionPane.INFORMATION_MESSAGE);
				}
				else
				{
					JOptionPane.showMessageDialog(null,"帐户/密码有错","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				
			  } catch (IOException e1) 
			 {
				e1.printStackTrace();
			 }
			  jtfAID.setText("");
			  jpfAPW.setText("");
		}
		if(e.getSource()==btVirement)
		{
			String strMeg=jtfEID.getText().trim()+"/"+new String (jpfEPW.getPassword())+"/"+jtfMoney.getText().trim()+"/"+jtfIID.getText().trim();
			try {
				message.UpdateInfo(dos, dis,strMeg,null,null,null,0, 0,6);
				int kind=-1;
				kind=dis.readInt();
				System.out.println(kind);
				if(kind==1)
				{
					JOptionPane.showMessageDialog(null,"帐户/密码有错","警告",JOptionPane.WARNING_MESSAGE);
				}
				if(kind==2)
				{
					JOptionPane.showMessageDialog(null,"余额不足","警告",JOptionPane.WARNING_MESSAGE);
				}
				if(kind==3)
				{
					JOptionPane.showMessageDialog(null,"转帐成功","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				
			} catch (IOException e1) {
				e1.printStackTrace();
			}
			jtfEID.setText("");
			jpfEPW.setText("");
			jtfMoney.setText("");
			jtfIID.setText("");
		}
	}
	public void keyPressed(KeyEvent e) {
		if((e.getKeyCode()<KeyEvent.VK_0||e.getKeyCode()>KeyEvent.VK_9)&&(e.getKeyCode()!=KeyEvent.VK_PERIOD)&&(e.getKeyCode()!=KeyEvent.VK_BACK_SPACE))
		{
			JOptionPane.showMessageDialog(null,"请输入数字","警告",JOptionPane.WARNING_MESSAGE);
		}
		
	}
	public void keyReleased(KeyEvent arg0) {
		// TODO 自动生成方法存根
		
	}
	public void keyTyped(KeyEvent arg0) {
		// TODO 自动生成方法存根
		
	}
}

⌨️ 快捷键说明

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