1700481579
//产生命令对象
1700481580
1700481581
String className=CommandEnum.valueOf(vo.getCommandName())
1700481582
1700481583
.getValue();
1700481584
1700481585
Command command;
1700481586
1700481587
try{
1700481588
1700481589
command=(Command)Class.forName(className).newInstance();
1700481590
1700481591
result=command.execute(vo);
1700481592
1700481593
}catch(Exception e){
1700481594
1700481595
//TODO异常处理
1700481596
1700481597
}
1700481598
1700481599
}else{
1700481600
1700481601
result=“无法执行命令,请检查命令格式”;
1700481602
1700481603
}
1700481604
1700481605
return result;
1700481606
1700481607
}
1700481608
1700481609
}
1700481610
1700481611
实现也是比较简单的,从CommandEnum中获得命令与命令类的配置信息,然后建立一个命令实例,调用其execute方法,完成命令的执行操作。CommandEnum类是一个枚举类型,如代码清单34-12所示。
1700481612
1700481613
代码清单34-12 命令配置对象
1700481614
1700481615
public enum CommandEnum{
1700481616
1700481617
ls(“com.cbf4life.common.command.LSCommand”);
1700481618
1700481619
private String value=””;
1700481620
1700481621
//定义构造函数,目的是Data(value)类型的相匹配
1700481622
1700481623
private CommandEnum(String value){
1700481624
1700481625
this.value=value;
1700481626
1700481627
}
1700481628
[
上一页 ]
[ :1.700481579e+09 ]
[
下一页 ]