如何通过套接字将Android对象传输到NetBean Java项目?
我是一名学生,我正在学习Android。 我有一个Android项目和一个Netbean项目 这是Android Studio中的模型如何通过套接字将Android对象传输到NetBean Java项目?,java,android,sockets,object,netbeans,Java,Android,Sockets,Object,Netbeans,我是一名学生,我正在学习Android。 我有一个Android项目和一个Netbean项目 这是Android Studio中的模型 public class Request implements Serializable { private static final long serialVersionUID = 1L; private User user; private String cmd; private boolean isLogin; private String mess;
public class Request implements Serializable {
private static final long serialVersionUID = 1L;
private User user;
private String cmd;
private boolean isLogin;
private String mess;
public Request() {
}
public Request(User user, String cmd, boolean isLogin, String mess) {
this.user = user;
this.cmd = cmd;
this.isLogin = isLogin;
this.mess = mess;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String getCmd() {
return cmd;
}
public void setCmd(String cmd) {
this.cmd = cmd;
}
public boolean isIsLogin() {
return isLogin;
}
public void setIsLogin(boolean isLogin) {
this.isLogin = isLogin;
}
public String getMess() {
return mess;
}
public void setMess(String mess) {
this.mess = mess;
}
}
这是Netbean项目中的模型:
public class Request implements Serializable{
private static final long serialVersionUID = 1L;
private User user;
private String cmd;
private boolean isLogin;
private String mess;
public Request() {
}
public Request(User user, String cmd, boolean isLogin, String mess) {
this.user = user;
this.cmd = cmd;
this.isLogin = isLogin;
this.mess = mess;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String getCmd() {
return cmd;
}
public void setCmd(String cmd) {
this.cmd = cmd;
}
public boolean isIsLogin() {
return isLogin;
}
public void setIsLogin(boolean isLogin) {
this.isLogin = isLogin;
}
public String getMess() {
return mess;
}
public void setMess(String mess) {
this.mess = mess;
}
}
我继续通过套接字连接将对象从android项目传输到netbean项目。
虽然传输的对象具有相同的属性,并且可实现序列化,但在Netbean上,我收到错误消息“java.lang.ClassNotFoundException:com.example.kimericko.timbannhau.Model.Request”
这是错误的:
java.lang.ClassNotFoundException: com.example.kimericko.timbannhau.Model.Request
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:628)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1620)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1781)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
at Controller.MyServer.Listening(MyServer.java:67)
at Controller.MainController.main(MainController.java:15)
我有什么问题?为什么不能将对象从Android项目强制转换为Netbean项目?我该怎么做才能修好它?
非常感谢除非“Netbean项目”与您的Android应用程序在同一台设备上运行,否则我不希望
可序列化
能够可靠工作。Android和Linux/macOS/Windows是完全独立的操作系统,具有完全独立的运行时环境。使用与平台无关的数据格式:CSV、XML、JSON、protobuf等。如果将android项目作为项目依赖项添加到netbean java项目,则代码将执行。如果两者位于不同的位置(IDE),则不会执行。因为netbeans找不到Android项目中的类。如果您希望执行该操作,请将android项目作为NetBeanJava项目的依赖项。但这是一种糟糕的做法。使用一些独立于平台的数据格式。我必须将我的对象转换为JSON吗?还有别的办法吗?