我将开始设计一个控制台应用程序.这意味着像
MySQL客户端一样,它会提示用户输入命令然后执行它们(基本上是打开和监听TCP端口,管理一些基本的数据库操作和服务器管理的东西).应用程序基本上接受连接并将数据返回给客户端.
我希望这个应用程序在GUI和控制台模式下运行,具体取决于应用程序的启动方式(这里没问题)
GUI不是问题,而是控制台.
我需要的是一种定义一组命令的方法,它们可能有或没有任何数量的参数.此命令可能会提示确认,密码或返回一组数据.
我希望保持优雅,可维护并避免构建可能失控的“有限状态机”.
我希望实现以下目标:
[ready]> server:start;
Server started.
[running]> connections:list;
Conn IP Port
Name1 192.168.2.2 60000
Name2 192.168.2.4 60002
[running]> connections:close Name1;
1 connection closed.
[running]> server:stop;
password? ******
Server stopped.
[ready]>
是否有任何框架,工具或技术可以在Java上实现这一目标?