今天热门
热点:

这两种传输方式有什么不同,两种传输方式不同


各自的优势在哪里?
第一个:
createSocket();
try {
oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(u);
dis=new DataInputStream(socket.getInputStream());
int flag=dis.readInt();
if(flag<=0){
System.out.println("注册失败,该用户已存在");
}else{
System.out.println("注册成功");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

第二个:
createSocket();
// 发送对象且将对象转为json传输
toJsonObject(u, socket);
// 接受json且将json转为对象
@SuppressWarnings("unchecked")
Map<String, Object> maps = (Map<String, Object>) JSONObject.toBean(jsonObjToBean(ois), Map.class);
// 登录状态
int flag = (int) maps.get("flag");
if (flag <= 0) {
System.out.println("注册失败,该用户已存在");
} else {
System.out.println("注册成功");
}

用到的方法:
private void toJsonObject(Object obj, Socket s) {
try {
// 将数据转为json传输
JSONObject object = JSONObject.fromObject(obj);
oos = new ObjectOutputStream(s.getOutputStream());
oos.writeObject(object.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

// 把json转为bean
private JSONObject jsonObjToBean(ObjectInputStream ois) {
JSONObject object = null;
try {
ois = new ObjectInputStream(socket.getInputStream());
// 解析json至对象
String str = (String) ois.readObject();
object = JSONObject.fromObject(str);
} catch (IOException | ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return object;
}

想问 用JSON传输和用第一种传输有什么不同?为何要用JSON传输?

解决方案

http://blog.csdn.net/woshisap/article/details/6549188

www.zrccd.nettrue/topics/20180204/188753.htmlTechArticle这两种传输方式有什么不同,两种传输方式不同 各自的优势在哪里? 第一个: createSocket(); try{ oos=newObjectOutputStream(socket.getOutputStream()); oos.writeObject(u); dis=newDataInputStream(socket.getInputStr...

相关文章

    暂无相关文章

用户评论

大家都在看