проблема заключается в следующем: я создал сервер Java, используя классы ServerSocket и Socket.HTML-страница отображается правильно, но я понятия не имею, как я могу отправить данные (из типа ввода = текст) на мой Java-сервер, а затем показать сообщение, которое я написал на другой HTML-странице.
Кодследующее:
Класс MyServer:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
Класс клиента (расширяет поток):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("\r\n");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("\r\n");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
Наконец, основной класс:
public static void main(String[] args){
MyServer ms = new MyServer();
}
Я ищу хорошее решение.Я не хочу удалять весь мой код, чтобы сделать это.Спасибо:)