我正在编写一个应用程序,旨在集中在 mysql 数据库中生成的与项目管理相关的所有数据。该应用程序可以分为 3 个部分/项目,如下所示:
- 服务器层:
充当多个客户端之间的层并保持与数据库(mysql)的连接。它监听协议类,然后执行诸如 INSERT、UPDATE、DELETE、SELECT 等操作。它是用纯 java 2SE 而不是 2EE 编写的,因为它是一个非常简单的类并且可以独立于服务器。
- 通讯协议:
扩展 java.util.EventObject 并实现 Serializable 接口的类。它用于存储与客户端和服务器之间的通用协议相关的信息。这是实际上通过套接字“旅行”的类,因为它的工作方式类似于协议。
- 客户申请:
基本上是gui。它是用 javafx 2.1 编写的,旨在提供一个漂亮而美观的界面来收集信息。
我的问题是,为了通过代码提高可读性,我在通信协议类上创建了一些静态最终字段,然后声明为 int,我想知道使用 byte 是否可以改进代码,因为(再次)它将通过套接字. 我知道 JVM 会将等效空间与字节、短裤和整数变量分开,但是当通过套接字发送数据时会发生这种行为吗?因此,在这种情况下,哪个更好:
/**
*
*/
private static final long serialVersionUID = 7530533341506425480L;
public static final int CLIENT_DISCONNECTED = -1;
public static final int NEW_INFO_INSERTED = 0;
public static final int SHUTDOWN_ORDER = 1;
public static final int INFO_NOT_INSERTED = 100;
public static final int CLIENT_CONNECT = 10000;
public static final int CLIENT_LOGIN = 10001;
public static final int SERVER_LOGIN_OK = 20001;
public static final int SERVER_LOGIN_FAILED = 20002;
public static final int SERVER_SAYS = 20003;
public static final int SERVER_IMAGE_INSERTED = 20004;
public final static int DB_WORKERS = 1001;
public final static int DB_PROJECTS = 1002;
public final static int DB_SECTORS = 1003;
public final static int DB_ACTIVITIES = 1004;
public final static int DB_SUBACTIVITIES = 1005;
public final static int DB_INSERTION = 1006;
public final static int DB_REL_COST = 1007;
public final static int DB_FUNCTIONS = 1008;
public final static int DB_INSERTION_ID = 1009;
public final static int DB_INSERTION_IMG = 1010;
public final static int DB_WORKER_INSERTED = 4010;
public final static int DB_ACTIVITY_INSERTED = 4011;
public final static int DB_SECTOR_INSERTED = 4012;
public final static int DB_SUBACTIVITY_INSERTED = 4013;
public final static int DB_FUNCTION_INSERTED = 4014;
public final static int DB_IMAGE_INSERTED = 4015;
public final static int DB_PARENTS_INSERTED = 4016;
或使用字节?干杯