?? client.java
字號:
import org.omg.CORBA.ORB;
import ClientImpl.*;
import Bank.*;
import java.text.DecimalFormat;
import java.util.Random;
public class Client {
private int totaltimes = ClientConfigure.getTotalsamples();
private int samples = ClientConfigure.getSamples();
private DecimalFormat formatter;
private Random random;
private ClientLog log;
public Client(){
formatter=(DecimalFormat)DecimalFormat.getInstance();
formatter.applyPattern("0000000000");
random=new Random();
}
public static void main(String[] args)throws Exception {
//java Client 10000 500 hittest
String operation=null;
if(args.length!=0){
if(args.length==3)
{
ClientConfigure.setSamples(Integer.parseInt(args[0]),Integer.parseInt(args[1]));
operation=args[2];
}
else{
System.out.println("args error\n");
}
}
Client c=new Client();
if(operation.equalsIgnoreCase("hittest")){
System.out.println("HitTest\n");
c.hittest(args);
}
else{
System.out.println("MissTest\n");
c.misstest(args);
}
}
public void hittest(String[] args){
log=new ClientLog("Hit");
ORB orb=ORB.init(args,null) ;
AccountManager manager = AccountManagerHelper.bind(orb,"/BankPOA","BankManager".getBytes());
int count = this.totaltimes/this.samples;
Account account;
int i=0,p;
String id;
long start;
while(i<count){
start =System.currentTimeMillis();
for(p=0;p<samples;++p)
{
id=formatter.format(random.nextInt(10000)+1);
System.out.println(id);
try {
account=manager.getAccountById(id);
System.out.println(account.getBalance()+"\n");
account.deposit(100);
account.withdraw(50);
System.out.println(account.getBalance()+"\n");
} catch (UserNotExitsException e) {
System.out.println("User Not Exists\n");
}
catch(Exception e)
{
e.printStackTrace();
}
}
log.Record(Long.toString((System.currentTimeMillis()-start)));
++i;
}
log.close();
}
public void misstest(String[] args){
log = new ClientLog("Miss");
ORB orb=ORB.init(args,null) ;
AccountManager manager =AccountManagerHelper.bind(orb,"/BankPOA","BankManager".getBytes());
int count=this.totaltimes/this.samples;
Account account;
int i=0,p;
String id;
long start;
while(i<count){
start=System.currentTimeMillis();
for(p=0;p<samples;++p)
{
id=formatter.format(random.nextInt(1000000) / 100.0);
id=id.substring(3);
System.out.println(id);
try {
account=manager.getAccountById(id);
System.out.println(account.getBalance()+"\n");
account.deposit(100);
account.withdraw(50);
System.out.println(account.getBalance()+"\n");
} catch (UserNotExitsException e) {
System.out.println("User Not Exists\n");
}
catch(Exception e)
{
e.printStackTrace();
}
}
log.Record(Long.toString((System.currentTimeMillis()-start)));
++i;
}
log.close();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -