我找到问题的原因时遇到了一些麻烦.
程序的功能如下... Server允许多个用户登录(连接到服务器)并编辑用任一个text的起始命令命名的相同字符串变量rep:(用于替换整个字符串)或app:(以附加到字符串) ).
当客户端连接时,他们必须输入命令.无论命令是什么,它都会在同一个窗口中回显给它们(在不同的CMD窗口中同时运行服务器和客户端).所以,如果他们进入hello,回声就是ECHO: hello.
如果输入的命令是rep:tight,则text服务器中的字符串变量应更改为包含tight,然后应返回/显示在客户端cmd窗口中tight,而不是ECHO.
如果之后的命令是app:rope,则text服务器中的字符串变量应更改为包含,tightrope并应返回/显示在客户端cmd窗口中tightrope.
此外,用户不能输入4个字符以下的任何值,因此SynchClient应显示错误消息并提示用户输入其他值.
我遇到的问题是每次新输入后我的回显值都没有改变.我得到了第一个输入命令的返回,就是这样,我正在努力让我全神贯注.
编辑:如果你自己运行程序,可能是最好的.
这是我的SynchServer.java文件的样子:
import java.io.*;
import java.net.*;
import java.util.*;
public class SynchServer
{
public static void main(String[] args) throws IOException
{
ServerSocket serverSocket = null;
final int PORT = 1234;
Socket client;
ClientHandler handler;
try
{
serverSocket = new ServerSocket(PORT);
}
catch (IOException ioEx) …Run Code Online (Sandbox Code Playgroud) 这怎么可能?NoSQL 是什么让它比某些 RDBMS 具有更高的写入吞吐量?是否归结为可扩展性?