公司原有一套温箱操控的软件,,是用Delphi做的,,用来操控温箱的温度、开关、温箱内气体的浓度等数据,但我感觉用JAVA来做这些硬件的操控效果不是很好,,当然可以用串口的方式来解决这些问题,小弟一直是做B/S这一块的,也很少接触硬件的东西,但经理感觉以前用Delphi构架不是很好,想重新用JAVA的C/S来做重新做一次构架用来做管理,,还要用B/S来做显示监控,感觉像是重复工作一样,,但考虑到要实时的操控,还是准备用C/S,就是想问下,用JAVA的C/S来操控硬件真的合适吗?麻烦吗?

解决方案 »

  1.   

    不是很懂,只知道JAVA要操控硬件比较麻烦,似乎只能通过JNI调用其他语言编写的程序来实现
      

  2.   

    Java掉DLL。我现在也在做一个操作硬件的项目,反正我不管你DLL里怎么操作的,我只关注我掉了你的DLL是否成功,返回值是什么,其他不关心。
      

  3.   

    嗯,因为JAVA是不能直接操控硬件的,所以只能通过调用其它串口或者DLL来操作,但我总感觉这样子是没必要用JAVA来做这样的系统,用Delphi来开发不是更方便快捷吗?想知道用JAVA来这样调用好处会在哪里?
      

  4.   

     嗯,,确实是这样的,,我也是在想通过调用原有的OCX或者其它的串口程序来实现功能,只是觉得用JAVA来这样写不如直接用其它语言来写的方便些
      

  5.   

     java还是最好不要和硬件打交道
      

  6.   

    JNI封装几个必要的硬件操作接口,由java调用,并且利用java语言的优势(面向对象,容易上手,语言级支持并发,垃圾回收等)来实现利用这些JNI接口的上层逻辑.
    如果换个硬件平台,只要JNI接口不变,Java上层代码不需要变动,跨平台
      

  7.   

    也就是说JNI定义的接口不变的话,JAVA的优势还是很明显的
      

  8.   

    是的啊,而且从经理角度想,招几个做Java的肯定比招几个做Delphi的容易些
      

  9.   

    一般吧 这个是可行的 java直接访问串口就可以了 不用 jni java自己就能访问串口的 你百度一下
      

  10.   

    不知道java访问串口的原理是什么,直接根据某种协议把得到的字节流转换成java对象?还是也通过jni来访问,只不过jar包里面封装好了,我搜索了一下发现windows下边需要dll文件