www.state-it.info

Gran base de respuestas a las preguntas de los desarrolladores
Header decor

¿Cómo se puede calcular el tamaño del paquete?

Nube 2017-02-12 07:41:14

quiero enviar POJO en el servidor, para ello creo una clase Message

public abstract class Message {
    
    // размер пакета 
    public final int length;
    // тип сообщения
    public final int typeMessage;

    protected Message(int length, int typeMessage) {
        this.length = length;
        this.typeMessage = typeMessage;
    }

    public abstract byte[] getBytes();
}

este es un ejemplo de su aplicación
public class Account extends Message {
    
    private char[] email;
    private char[] password;

    public Account(int length, int typeMessage, char[] email, char[] password) {
        super(length, typeMessage);
        this.email = email;
        this.password = password;
    }

    public char[] getEmail() {
        return email;
    }

    public void setEmail(char[] email) {
        this.email = email;
    }

    public char[] getPassword() {
        return password;
    }

    public void setPassword(char[] password) {
        this.password = password;
    }

    @Override
    public byte[] getBytes() {
        return null;
    }
}

Ahora las preguntas: 1) ¿cómo averiguar la longitud de un paquete? ( creo que hay que sumar las matrices de email y password a los demás )
2) ¿es Correcto en absoluto la idea de crear un paquete de ?

roswell 2017-02-12 09:36:23

Y para que esa complejidad, cuando hay ObjectInputStream camaradas?


Nube 2017-02-12 09:57:22

roswell: soy un novato y puedo estar equivocado , pero, ¿el paquete de TCP viene de diferentes piezas, en el lado del servidor decoder debe saber cuánto pesa el paquete que terminar de leer su.


zagayevskiy 2017-02-12 20:09:49

una mierda de algo inventado.


Nube 2017-02-13 15:37:08

denis Загаевский: y puede конкретней, que no lo he hecho, bueno o, al menos, un enlace a un ejemplo correcto ?


zagayevskiy 2017-02-13 16:53:16

Nube: En primer lugar, para ello hay una serie. En segundo lugar, hay un montón de formatos, que van desde json, xml y hasta protobuf. Piense en lo que necesita y tome listo, soluciones eficaces y, en lugar de костылять. En tercer lugar, no está claro por qué estos razonamientos sobre tcp.


Nube 2017-02-13 17:18:06

denis Загаевский: se Obtiene si simplemente el objeto de enviar a él vendría entero ?yo antes de este artículo leído y allí escribió que en el servidor vienen bytes, y por lo tanto , existe la posibilidad de que el mensaje se раздробленное , y que es necesario especificar el tamaño de un mensaje .Si yo no soy el delirio disculpas )


zagayevskiy 2017-02-13 17:19:40

Nube: depende de cómo usted lo envía. Con una probabilidad del 99.9% usas una marcha http, si la respuesta es sí, entonces sí, él viene completo.


Nube 2017-02-13 17:23:29

denis Загаевский: claro, y si el envío directamente a través de sockets ? esta es la última pregunta, honestamente)


zagayevskiy 2017-02-13 17:42:31

Nube: entonces tienes que saber cuánto de leer. Y ¿por qué sockets directamente?


Total answers: 0

Preguntas relacionadas:

Footer decor

© www.state-it.info | Base of answers to questions for developers and programmers.