[问题] 该如何让java和exe相互沟通?

楼主: weakstudy (台湾高阶管理人)   2017-06-21 18:15:34
请教各位前辈,
小弟想要让Java和Windows Exe相互交换资料,
现在情境:
小弟有二支Java程式A.java及B.java(均为专案),
均是用Java写成,
但是使用Jsmooth工具包成Exe,
所以现在是二个Exe执行档A.exe及B.exe,
问题为A.exe执行后有资讯要丢至B.exe,
小弟在A.java里写了它会回传一个HashMap<String, Object>(假设为data),
该如何在B.java里取用到它(data)呢?
(另外先提一声,此二专案不能互相引用,
所以也不知道该称为"java exe 沟通"还是"exe exe 沟通"?
另外也不考虑用数据库、档案或此类方法,谢谢!)
不知道各位能否指点一下呢?
小弟用关键字于google上均查不到相关资料,
不知道是否有什么方法或是套件可以用呢?
谢谢大家!
作者: ssccg (23)   2017-06-21 18:23:00
关键字 IPC最单纯的方法就是开个socket..
楼主: weakstudy (台湾高阶管理人)   2017-06-21 18:35:00
回ssccg大,请问是软件或是套件吗?在网上搜寻,结果…IPC入侵实例!= ="另外深入点查询,好像是正解!但是 …不知道把java用Smooth包成exe,那这个方法行的通吗?
作者: ssccg (23)   2017-06-21 21:20:00
不管你包成什么东西,你还是写java程式码吧?
楼主: weakstudy (台湾高阶管理人)   2017-06-21 23:31:00
ssccg大大,是的我查了一下,发现ipc方法还可以在不同程式间沟通真是强大啊,只是想问一声,和Socket解法优缺点是…?
作者: ssccg (23)   2017-06-22 09:16:00
socket是IPC的一种方法... 只要在同电脑程式间沟通就叫IPC
楼主: weakstudy (台湾高阶管理人)   2017-06-22 09:56:00
谢谢ssccg大,了解!但…有没有办法直接用Object来沟通呢?但…有没有办法直接用Object来沟通呢?贴错,程式语法上,要怎么写呢?
作者: gmoz ( This can't do that. )   2017-06-22 14:36:00
两个人还是得靠说话、书写、动作等才能互相沟通你没办法知道对方脑子在想什么 两只.EXE也是同样道理socket就是其中一种沟通方法socket的写法、传递,你自己GOOGLE吧 有一大堆
楼主: weakstudy (台湾高阶管理人)   2017-06-22 15:36:00
目前想用RandomAccessFile+MappedByteBuffer来做,目前卡在HashMap<String, Object>无法getBytes …啊 … 想不出来啊 … 救人啊 …网络上全部都是用"字串" …可是小弟的资料不是只有数字,字串这么简单的啊 ~~~可以用Object来沟通吗? 怎么没看到例子啊? = =
作者: ssccg (23)   2017-06-22 16:06:00
不可以,物件是JVM管理的内存内的表示方式,离开就没了要传出去要序列化(把Object转成某种binary表示法),当然有很多library把这段包装起来,可以把IPC用起来像呼叫方法
楼主: weakstudy (台湾高阶管理人)   2017-06-22 16:25:00
ssccg大,可以说一下是那些套件吗?或是有什么关键字提示呢?
作者: Jasonzheng (jason)   2017-06-22 19:38:00
多 google 吧... ss 讲的都关键字推文看的懂的话 应该没什么问题才是0.0最简单就 Data 实做 Serializable,并用 ObjectOutputStream
作者: gmoz ( This can't do that. )   2017-06-22 21:23:00
json差点打成jason..
作者: ssccg (23)   2017-06-23 00:04:00
用方法呼叫的通常叫RPC,是说不管IPC还RPC应该都很好找到一堆吧...没什么更关键的关键字了,再来就直接套件名字了
楼主: weakstudy (台湾高阶管理人)   2017-06-23 09:20:00
谢谢各位的教导,谢谢!
作者: Jasonzheng (jason)   2017-06-23 17:39:00
哈囉 g 大,jason 来惹 xd
作者: Nt1 (用功点吧!)   2017-06-25 19:06:00
protocol buffer?

Links booklink

Contact Us: admin [ a t ] ucptt.com